mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-23 15:11:16 +00:00
wrappers for ->i_mutex access
parallel to mutex_{lock,unlock,trylock,is_locked,lock_nested}, inode_foo(inode) being mutex_foo(&inode->i_mutex). Please, use those for access to ->i_mutex; over the coming cycle ->i_mutex will become rwsem, with ->lookup() done with it held only shared. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
57b8f112cf
commit
5955102c99
177 changed files with 908 additions and 883 deletions
|
@ -795,7 +795,7 @@ SYSCALL_DEFINE4(mq_open, const char __user *, u_name, int, oflag, umode_t, mode,
|
|||
|
||||
ro = mnt_want_write(mnt); /* we'll drop it in any case */
|
||||
error = 0;
|
||||
mutex_lock(&d_inode(root)->i_mutex);
|
||||
inode_lock(d_inode(root));
|
||||
path.dentry = lookup_one_len(name->name, root, strlen(name->name));
|
||||
if (IS_ERR(path.dentry)) {
|
||||
error = PTR_ERR(path.dentry);
|
||||
|
@ -841,7 +841,7 @@ out_putfd:
|
|||
put_unused_fd(fd);
|
||||
fd = error;
|
||||
}
|
||||
mutex_unlock(&d_inode(root)->i_mutex);
|
||||
inode_unlock(d_inode(root));
|
||||
if (!ro)
|
||||
mnt_drop_write(mnt);
|
||||
out_putname:
|
||||
|
@ -866,7 +866,7 @@ SYSCALL_DEFINE1(mq_unlink, const char __user *, u_name)
|
|||
err = mnt_want_write(mnt);
|
||||
if (err)
|
||||
goto out_name;
|
||||
mutex_lock_nested(&d_inode(mnt->mnt_root)->i_mutex, I_MUTEX_PARENT);
|
||||
inode_lock_nested(d_inode(mnt->mnt_root), I_MUTEX_PARENT);
|
||||
dentry = lookup_one_len(name->name, mnt->mnt_root,
|
||||
strlen(name->name));
|
||||
if (IS_ERR(dentry)) {
|
||||
|
@ -884,7 +884,7 @@ SYSCALL_DEFINE1(mq_unlink, const char __user *, u_name)
|
|||
dput(dentry);
|
||||
|
||||
out_unlock:
|
||||
mutex_unlock(&d_inode(mnt->mnt_root)->i_mutex);
|
||||
inode_unlock(d_inode(mnt->mnt_root));
|
||||
if (inode)
|
||||
iput(inode);
|
||||
mnt_drop_write(mnt);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue