diff --git a/0001-export-fix-handling-of-error-from-match_fsid.patch b/0001-export-fix-handling-of-error-from-match_fsid.patch new file mode 100644 index 0000000..f89bbd1 --- /dev/null +++ b/0001-export-fix-handling-of-error-from-match_fsid.patch @@ -0,0 +1,34 @@ +From 0f46b6728d0f45393eb0e33a90fcfa2147271275 Mon Sep 17 00:00:00 2001 +From: NeilBrown +Date: Wed, 11 Oct 2023 12:32:25 +1100 +Subject: [PATCH] export: fix handling of error from match_fsid() + +If match_fsid() returns -1 we shouldn't assume that the path definitely +doesn't match the fsid, though it might not. +This is a similar situation to where an export is expected to be a mount +point, but is found not to be one. So it can be handled the same way, +by setting 'dev_missing'. +This will only have an effect is no other path matched the fsid, which +is what we want. + +The current code results in nothing being exported and any export point, +or any mount point beneath a crossmnt export point fail a 'stat' +request, which is too harsh. + +Signed-off-by: NeilBrown +--- + support/export/cache.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/support/export/cache.c ++++ b/support/export/cache.c +@@ -858,7 +858,8 @@ static void nfsd_fh(int f) + case 0: + continue; + case -1: +- goto out; ++ dev_missing ++; ++ continue; + } + if (is_ipaddr_client(dom) + && !ipaddr_client_matches(exp, ai)) diff --git a/nfs-utils.changes b/nfs-utils.changes index 7936551..a12160f 100644 --- a/nfs-utils.changes +++ b/nfs-utils.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Oct 16 00:43:42 UTC 2023 - Neil Brown + +- 0001-export-fix-handling-of-error-from-match_fsid.patch + Errors from match_fsid() shouldn't be fatal. + (bsc#1214540) + ------------------------------------------------------------------- Thu Apr 20 10:10:14 UTC 2023 - Petr Vorel diff --git a/nfs-utils.spec b/nfs-utils.spec index 53f7fac..70c9cac 100644 --- a/nfs-utils.spec +++ b/nfs-utils.spec @@ -42,6 +42,7 @@ Source25: rpc-svcgssd.options.conf Source26: nfs.conf Source27: nfs-kernel-server.tmpfiles.conf Patch0: nfs-utils-1.0.7-bind-syntax.patch +Patch1: 0001-export-fix-handling-of-error-from-match_fsid.patch BuildRequires: e2fsprogs-devel BuildRequires: gcc-c++ BuildRequires: libtool