new helper: done_path_create()
releases what needs to be released after {kern,user}_path_create() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -887,8 +887,9 @@ out_mknod_drop_write:
|
||||
mnt_drop_write(path.mnt);
|
||||
if (err)
|
||||
goto out_mknod_dput;
|
||||
mutex_unlock(&path.dentry->d_inode->i_mutex);
|
||||
dput(path.dentry);
|
||||
mntget(path.mnt);
|
||||
dget(dentry);
|
||||
done_path_create(&path, dentry);
|
||||
path.dentry = dentry;
|
||||
|
||||
addr->hash = UNIX_HASH_SIZE;
|
||||
@@ -923,9 +924,7 @@ out:
|
||||
return err;
|
||||
|
||||
out_mknod_dput:
|
||||
dput(dentry);
|
||||
mutex_unlock(&path.dentry->d_inode->i_mutex);
|
||||
path_put(&path);
|
||||
done_path_create(&path, dentry);
|
||||
out_mknod_parent:
|
||||
if (err == -EEXIST)
|
||||
err = -EADDRINUSE;
|
||||
|
Reference in New Issue
Block a user