projects
/
unionfs-2.6.23.y.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
add4527
)
Unionfs: unionfs_permission locking fixes
author
Erez Zadok
<ezk@cs.sunysb.edu>
Fri, 19 Sep 2008 03:20:58 +0000
(23:20 -0400)
committer
Erez Zadok
<ezk@cs.sunysb.edu>
Fri, 19 Sep 2008 03:20:58 +0000
(23:20 -0400)
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
fs/unionfs/inode.c
patch
|
blob
|
history
diff --git
a/fs/unionfs/inode.c
b/fs/unionfs/inode.c
index f5d0b1e855c67a7eda7231ea3fea201afc2880e9..1c6b8d8cd76d39e9c8f4b0748c6e6a61c796043d 100644
(file)
--- a/
fs/unionfs/inode.c
+++ b/
fs/unionfs/inode.c
@@
-789,6
+789,7
@@
static int unionfs_permission(struct inode *inode, int mask,
int bindex, bstart, bend;
const int is_file = !S_ISDIR(inode->i_mode);
const int write_mask = (mask & MAY_WRITE) && !(mask & MAY_READ);
+ struct inode *inode_grabbed = igrab(inode);
if (nd)
unionfs_lock_dentry(nd->dentry, UNIONFS_DMUTEX_CHILD);
@@
-869,6
+870,7
@@
out:
unionfs_check_nd(nd);
if (nd)
unionfs_unlock_dentry(nd->dentry);
+ iput(inode_grabbed);
return err;
}