]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
NFSv4/flexfiles: Fix handling of NFS level errors in I/O
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Thu, 19 Jun 2025 19:16:11 +0000 (15:16 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Jul 2025 14:03:18 +0000 (16:03 +0200)
commit204bdc7a8b7b7b7fcfc500f1402762a1f99e00bc
treea94233a3cf47ae8309e76493b7994fd476ed8627
parente3eed01347721cd7a8819568161c91d538fbf229
NFSv4/flexfiles: Fix handling of NFS level errors in I/O

[ Upstream commit 38074de35b015df5623f524d6f2b49a0cd395c40 ]

Allow the flexfiles error handling to recognise NFS level errors (as
opposed to RPC level errors) and handle them separately. The main
motivator is the NFSERR_PERM errors that get returned if the NFS client
connects to the data server through a port number that is lower than
1024. In that case, the client should disconnect and retry a READ on a
different data server, or it should retry a WRITE after reconnecting.

Reviewed-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Fixes: d67ae825a59d ("pnfs/flexfiles: Add the FlexFile Layout Driver")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfs/flexfilelayout/flexfilelayout.c