From ae5e8b5b54229ae602422504082a25ad406e4039 Mon Sep 17 00:00:00 2001 From: Miklos Szeredi Date: Tue, 17 Oct 2006 00:10:08 -0700 Subject: [PATCH] --- yaml --- r: 39731 b: refs/heads/master c: 8da5ff23ce0a84d9845b01e6fe5047e17836bf5a h: refs/heads/master i: 39729: 93ead9e07c128095bf9ec5462830f4d617cdc1b1 39727: c3ff6dd9d2cf6024bcd88095531c79cd45fbe749 v: v3 --- [refs] | 2 +- trunk/fs/fuse/dir.c | 2 ++ trunk/fs/fuse/inode.c | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index b065da9a3144..eafbd591434c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7762f5a0b709b415fda132258ad37b9f2a1db994 +refs/heads/master: 8da5ff23ce0a84d9845b01e6fe5047e17836bf5a diff --git a/trunk/fs/fuse/dir.c b/trunk/fs/fuse/dir.c index a8f65c11aa2c..7ecfe95795cd 100644 --- a/trunk/fs/fuse/dir.c +++ b/trunk/fs/fuse/dir.c @@ -163,7 +163,9 @@ static int fuse_dentry_revalidate(struct dentry *entry, struct nameidata *nd) fuse_send_forget(fc, req, outarg.nodeid, 1); return 0; } + spin_lock(&fc->lock); fi->nlookup ++; + spin_unlock(&fc->lock); } fuse_put_request(fc, req); if (err || (outarg.attr.mode ^ inode->i_mode) & S_IFMT) diff --git a/trunk/fs/fuse/inode.c b/trunk/fs/fuse/inode.c index 8e106163aaed..e9114237f31f 100644 --- a/trunk/fs/fuse/inode.c +++ b/trunk/fs/fuse/inode.c @@ -195,7 +195,9 @@ struct inode *fuse_iget(struct super_block *sb, unsigned long nodeid, } fi = get_fuse_inode(inode); + spin_lock(&fc->lock); fi->nlookup ++; + spin_unlock(&fc->lock); fuse_change_attributes(inode, attr); return inode; }