[PATCH] nfsd: fix handling of NFSEXP_PNFS in the netlink codepath

From: Jeff Layton

Date: Tue Apr 14 2026 - 10:25:43 EST


The rework of how block layouts were checked moved the check for
NFSEXP_PNFS out of nfsd4_setup_layout_type() and into the callers. That
patch didn't account for the new call in nfsd4_setup_layout_type().

Cc: Christoph Hellwig <hch@xxxxxx>
Fixes: f85460b2aa22 ("exportfs,nfsd: rework checking for layout-based block device access support")
Reported-by: Olga Kornievskaia <okorniev@xxxxxxxxxx>
Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
---
This patch needs to go into Chuck's nfsd-testing branch, ideally folded
into the patch in the Fixes: line. Otherwise, pnfs is enabled on every
xfs export discovered via netlink.
---
fs/nfsd/export.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c
index e6a250576048..f562d383439b 100644
--- a/fs/nfsd/export.c
+++ b/fs/nfsd/export.c
@@ -1017,7 +1017,8 @@ static int nfsd_nl_parse_one_export(struct cache_detail *cd,
goto out_uuid;
err = 0;

- nfsd4_setup_layout_type(&exp);
+ if (exp.ex_flags & NFSEXP_PNFS)
+ nfsd4_setup_layout_type(&exp);
}

expp = svc_export_lookup(&exp);

---
base-commit: b858b275543b35cb0fc2bf863da017de92ef192b
change-id: 20260414-pnfs-exp-fix-b1eb96d05634

Best regards,
--
Jeff Layton <jlayton@xxxxxxxxxx>