Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'pull-nfsd-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull nfsd fix from Al Viro:
"Catch from lock_rename() audit; nfsd_rename() checked that both
directories belonged to the same filesystem, but only after having
done lock_rename().

Trivial fix, tested and acked by nfs folks"

* tag 'pull-nfsd-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
nfsd: lock_rename() needs both directories to live on the same fs

+6 -6
+6 -6
fs/nfsd/vfs.c
··· 1788 1788 if (!flen || isdotent(fname, flen) || !tlen || isdotent(tname, tlen)) 1789 1789 goto out; 1790 1790 1791 + err = (rqstp->rq_vers == 2) ? nfserr_acces : nfserr_xdev; 1792 + if (ffhp->fh_export->ex_path.mnt != tfhp->fh_export->ex_path.mnt) 1793 + goto out; 1794 + if (ffhp->fh_export->ex_path.dentry != tfhp->fh_export->ex_path.dentry) 1795 + goto out; 1796 + 1791 1797 retry: 1792 1798 host_err = fh_want_write(ffhp); 1793 1799 if (host_err) { ··· 1827 1821 goto out_dput_old; 1828 1822 host_err = -ENOTEMPTY; 1829 1823 if (ndentry == trap) 1830 - goto out_dput_new; 1831 - 1832 - host_err = -EXDEV; 1833 - if (ffhp->fh_export->ex_path.mnt != tfhp->fh_export->ex_path.mnt) 1834 - goto out_dput_new; 1835 - if (ffhp->fh_export->ex_path.dentry != tfhp->fh_export->ex_path.dentry) 1836 1824 goto out_dput_new; 1837 1825 1838 1826 if ((ndentry->d_sb->s_export_op->flags & EXPORT_OP_CLOSE_BEFORE_UNLINK) &&