summaryrefslogtreecommitdiff
path: root/fs/namespace.c
diff options
context:
space:
mode:
authorFelix Blyakher <felixb@sgi.com>2009-02-18 15:35:05 -0600
committerFelix Blyakher <felixb@sgi.com>2009-02-18 15:35:05 -0600
commit01234f3c87fff1d83adef8a70fdc18f27d67d75c (patch)
tree95a24fe0b257404ca1ee01faee7e2201e3632b9f /fs/namespace.c
parent8aa4349ad527db56724b1ab9478db65a8065e0bb (diff)
parent5955c7a2cfb6a35429adea5dc480002b15ca8cfc (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'fs/namespace.c')
-rw-r--r--fs/namespace.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index 228d8c4bfd18..06f8e63f6cb1 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -614,9 +614,11 @@ static inline void __mntput(struct vfsmount *mnt)
*/
for_each_possible_cpu(cpu) {
struct mnt_writer *cpu_writer = &per_cpu(mnt_writers, cpu);
- if (cpu_writer->mnt != mnt)
- continue;
spin_lock(&cpu_writer->lock);
+ if (cpu_writer->mnt != mnt) {
+ spin_unlock(&cpu_writer->lock);
+ continue;
+ }
atomic_add(cpu_writer->count, &mnt->__mnt_writers);
cpu_writer->count = 0;
/*