summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Menninger <tmenninger@everpuredata.com>2026-08-19 12:41:21 +0000
committerTrond Myklebust <trond.myklebust@hammerspace.com>2026-08-20 15:18:20 -0700
commit20358201777496fd0bb7b4336fcb4d3fc13cad28 (patch)
treebbfe76b13a51ce00630c9b2ec8e0438cfe6d775d
parent8fa4804fe62ca4155a2d8fc2789d630376cbf2fc (diff)
downloadlwn-20358201777496fd0bb7b4336fcb4d3fc13cad28.tar.gz
lwn-20358201777496fd0bb7b4336fcb4d3fc13cad28.zip
pNFS: Fix EBUSY check in pnfs_layout_need_return
Commit 41d0a8ead9720 ("NFSv4/pnfs: Add support for the PNFS_LAYOUT_FILE_BULK_RETURN flag") replaced pnfs_layout_segments_returnable() in pnfs_layout_need_return() with a direct call to pnfs_mark_layout_stateid_return(). The old helper checked the return value against -EBUSY, but the replacement compares against EBUSY. Since pnfs_mark_layout_stateid_return() returns negative errno values, the -EBUSY case is never detected. Fix the comparison in pnfs_layout_need_return() to check against -EBUSY. Fixes: 41d0a8ead9720 ("NFSv4/pnfs: Add support for the PNFS_LAYOUT_FILE_BULK_RETURN flag") Cc: stable@vger.kernel.org Signed-off-by: Tim Menninger <tmenninger@everpuredata.com> Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
-rw-r--r--fs/nfs/pnfs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
index 9a08fd076e0a..f0379dacf197 100644
--- a/fs/nfs/pnfs.c
+++ b/fs/nfs/pnfs.c
@@ -1390,7 +1390,7 @@ pnfs_layout_need_return(struct pnfs_layout_hdr *lo)
return false;
return pnfs_mark_layout_stateid_return(lo, &lo->plh_return_segs,
lo->plh_return_iomode,
- lo->plh_return_seq) != EBUSY;
+ lo->plh_return_seq) != -EBUSY;
}
static void pnfs_layoutreturn_before_put_layout_hdr(struct pnfs_layout_hdr *lo)