summaryrefslogtreecommitdiffstats
path: root/fs/9p/fid.c
diff options
context:
space:
mode:
authorAl Viro2013-02-28 04:37:21 +0100
committerAl Viro2013-02-28 04:37:21 +0100
commit634095dab2a2001844fc8b26673c0cb14a766cdf (patch)
tree1e5aa7581ac97f82543dfc581c5eb6fa96572d3c /fs/9p/fid.c
parentmore file_inode() open-coded instances (diff)
downloadkernel-qcow2-linux-634095dab2a2001844fc8b26673c0cb14a766cdf.tar.gz
kernel-qcow2-linux-634095dab2a2001844fc8b26673c0cb14a766cdf.tar.xz
kernel-qcow2-linux-634095dab2a2001844fc8b26673c0cb14a766cdf.zip
9p: don't bother with private lock in ->d_fsdata; dentry->d_lock will do just fine
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/9p/fid.c')
-rw-r--r--fs/9p/fid.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/9p/fid.c b/fs/9p/fid.c
index afd4724b2d92..71bc36a03e72 100644
--- a/fs/9p/fid.c
+++ b/fs/9p/fid.c
@@ -54,14 +54,13 @@ int v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid)
if (!dent)
return -ENOMEM;
- spin_lock_init(&dent->lock);
INIT_LIST_HEAD(&dent->fidlist);
dentry->d_fsdata = dent;
}
- spin_lock(&dent->lock);
+ spin_lock(&dentry->d_lock);
list_add(&fid->dlist, &dent->fidlist);
- spin_unlock(&dent->lock);
+ spin_unlock(&dentry->d_lock);
return 0;
}
@@ -85,14 +84,14 @@ static struct p9_fid *v9fs_fid_find(struct dentry *dentry, kuid_t uid, int any)
dent = (struct v9fs_dentry *) dentry->d_fsdata;
ret = NULL;
if (dent) {
- spin_lock(&dent->lock);
+ spin_lock(&dentry->d_lock);
list_for_each_entry(fid, &dent->fidlist, dlist) {
if (any || uid_eq(fid->uid, uid)) {
ret = fid;
break;
}
}
- spin_unlock(&dent->lock);
+ spin_unlock(&dentry->d_lock);
}
return ret;