linux/fs/nfs/flexfilelayout
Mike Snitzer 3996a41b1e pnfs/flexfiles: retry getting layout segment for reads
commit eb3fabde15 upstream.

If ff_layout_pg_get_read()'s attempt to get a layout segment results
in -EAGAIN have ff_layout_pg_init_read() retry it after sleeping.

If "softerr" mount is used, use 'io_maxretrans' to limit the number of
attempts to get a layout segment.

This fixes a long-standing issue of O_DIRECT reads failing with
-EAGAIN (11) when using flexfiles Client Side Mirroring (CSM).

Cc: stable@vger.kernel.org
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-02-17 10:05:39 +01:00
..
flexfilelayout.c pnfs/flexfiles: retry getting layout segment for reads 2025-02-17 10:05:39 +01:00
flexfilelayout.h NFS/flexfiles: Annotate struct nfs4_ff_layout_segment with __counted_by 2023-10-02 09:48:53 -07:00
flexfilelayoutdev.c pnfs/flexfiles: enable localio support 2024-09-23 15:03:30 -04:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00