mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-16 14:30:06 -04:00
Merge tag 'nfsd-7.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux
Pull nfsd fix from Chuck Lever: - Fix a use-after-free when unlocking a filesystem * tag 'nfsd-7.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux: NFSD: Prevent post-shutdown use-after-free in NFSD_CMD_UNLOCK_FILESYSTEM
This commit is contained in:
@@ -2340,14 +2340,15 @@ int nfsd_nl_unlock_filesystem_doit(struct sk_buff *skb,
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
nfsd4_cancel_copy_by_sb(net, path.dentry->d_sb);
|
||||
error = nlmsvc_unlock_all_by_sb(path.dentry->d_sb);
|
||||
|
||||
mutex_lock(&nfsd_mutex);
|
||||
if (nn->nfsd_serv)
|
||||
if (nn->nfsd_serv) {
|
||||
nfsd4_cancel_copy_by_sb(net, path.dentry->d_sb);
|
||||
nfsd4_revoke_states(nn, path.dentry->d_sb);
|
||||
else
|
||||
} else {
|
||||
error = -EINVAL;
|
||||
}
|
||||
mutex_unlock(&nfsd_mutex);
|
||||
|
||||
path_put(&path);
|
||||
|
||||
Reference in New Issue
Block a user