aboutsummaryrefslogtreecommitdiffstats
path: root/fs/reiserfs
diff options
context:
space:
mode:
Diffstat (limited to 'fs/reiserfs')
-rw-r--r--fs/reiserfs/xattr.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/reiserfs/xattr.c b/fs/reiserfs/xattr.c
index 4899d789ba67..7fee995c25ab 100644
--- a/fs/reiserfs/xattr.c
+++ b/fs/reiserfs/xattr.c
@@ -559,8 +559,12 @@ reiserfs_xattr_set_handle(struct reiserfs_transaction_handle *th,
559 .ia_size = buffer_size, 559 .ia_size = buffer_size,
560 .ia_valid = ATTR_SIZE | ATTR_CTIME, 560 .ia_valid = ATTR_SIZE | ATTR_CTIME,
561 }; 561 };
562
563 reiserfs_write_unlock(inode->i_sb);
562 mutex_lock_nested(&dentry->d_inode->i_mutex, I_MUTEX_XATTR); 564 mutex_lock_nested(&dentry->d_inode->i_mutex, I_MUTEX_XATTR);
563 down_write(&dentry->d_inode->i_alloc_sem); 565 down_write(&dentry->d_inode->i_alloc_sem);
566 reiserfs_write_lock(inode->i_sb);
567
564 err = reiserfs_setattr(dentry, &newattrs); 568 err = reiserfs_setattr(dentry, &newattrs);
565 up_write(&dentry->d_inode->i_alloc_sem); 569 up_write(&dentry->d_inode->i_alloc_sem);
566 mutex_unlock(&dentry->d_inode->i_mutex); 570 mutex_unlock(&dentry->d_inode->i_mutex);