summaryrefslogtreecommitdiff
path: root/fs/ubifs
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2010-07-13 15:57:14 +0200
committerThomas Gleixner <tglx@linutronix.de>2010-07-13 15:57:14 +0200
commitec646ea8db21abc1db436aac580a0464e460bd9d (patch)
treee1c137718bd94548589f0e2f2a89342c75e052da /fs/ubifs
parent596fc8ee275b6e4b441b6aa1e2c1a89aeeccb877 (diff)
downloadlwn-ec646ea8db21abc1db436aac580a0464e460bd9d.tar.gz
lwn-ec646ea8db21abc1db436aac580a0464e460bd9d.zip
vfs: Revert the scalability patches
We still have sporadic and hard to debug problems. Revert it for now and revisit with Nick's new version. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'fs/ubifs')
-rw-r--r--fs/ubifs/dir.c4
-rw-r--r--fs/ubifs/super.c2
2 files changed, 2 insertions, 4 deletions
diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c
index 1eed16ffdd68..552fb0111fff 100644
--- a/fs/ubifs/dir.c
+++ b/fs/ubifs/dir.c
@@ -557,9 +557,7 @@ static int ubifs_link(struct dentry *old_dentry, struct inode *dir,
lock_2_inodes(dir, inode);
inc_nlink(inode);
- spin_lock(&inode->i_lock);
- inode->i_count++;
- spin_unlock(&inode->i_lock);
+ atomic_inc(&inode->i_count);
inode->i_ctime = ubifs_current_time(inode);
dir->i_size += sz_change;
dir_ui->ui_size = dir->i_size;
diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c
index d020118df827..43f9d19a6f33 100644
--- a/fs/ubifs/super.c
+++ b/fs/ubifs/super.c
@@ -342,7 +342,7 @@ static void ubifs_delete_inode(struct inode *inode)
goto out;
dbg_gen("inode %lu, mode %#x", inode->i_ino, (int)inode->i_mode);
- ubifs_assert(!inode->i_count);
+ ubifs_assert(!atomic_read(&inode->i_count));
ubifs_assert(inode->i_nlink == 0);
truncate_inode_pages(&inode->i_data, 0);