From: Wei Yongjun Date: Fri, 4 Jun 2021 10:12:37 +0000 (+0000) Subject: NFSD: Fix error return code in nfsd4_interssc_connect() X-Git-Tag: iomap-folio-5.17-old~1069^2~36 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=54185267e1fe476875e649bb18e1c4254c123305;p=users%2Fwilly%2Flinux.git NFSD: Fix error return code in nfsd4_interssc_connect() 'status' has been overwritten to 0 after nfsd4_ssc_setup_dul(), this cause 0 will be return in vfs_kern_mount() error case. Fix to return nfserr_nodev in this error. Fixes: f4e44b393389 ("NFSD: delay unmount source's export after inter-server copy completed.") Reported-by: Hulk Robot Signed-off-by: Wei Yongjun Signed-off-by: J. Bruce Fields --- diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c index af48fc8a601f..a0d67ba5ed59 100644 --- a/fs/nfsd/nfs4proc.c +++ b/fs/nfsd/nfs4proc.c @@ -1323,6 +1323,7 @@ nfsd4_interssc_connect(struct nl4_server *nss, struct svc_rqst *rqstp, ss_mnt = vfs_kern_mount(type, SB_KERNMOUNT, dev_name, raw_data); module_put(type->owner); if (IS_ERR(ss_mnt)) { + status = nfserr_nodev; if (work) nfsd4_ssc_cancel_dul_work(nn, work); goto out_free_devname;