summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorJeff Mahoney <jeffm@suse.com>2009-03-30 14:02:35 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-03-30 12:16:38 -0700
commitd984561b326cd0fe0d1183d11b9b4fa1d011d21d (patch)
treee0487588581bccaa2b875529ed84ec5a4a254ab9 /include/linux
parent6c17675e1e02ebde220ef639a3fb1333928ec2f4 (diff)
downloadop-kernel-dev-d984561b326cd0fe0d1183d11b9b4fa1d011d21d.zip
op-kernel-dev-d984561b326cd0fe0d1183d11b9b4fa1d011d21d.tar.gz
reiserfs: eliminate per-super xattr lock
With the switch to using inode->i_mutex locking during lookups/creation in the xattr root, the per-super xattr lock is no longer needed. This patch removes it. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/reiserfs_fs.h3
-rw-r--r--include/linux/reiserfs_fs_sb.h3
-rw-r--r--include/linux/reiserfs_xattr.h28
3 files changed, 5 insertions, 29 deletions
diff --git a/include/linux/reiserfs_fs.h b/include/linux/reiserfs_fs.h
index 6c4af98..e00d240 100644
--- a/include/linux/reiserfs_fs.h
+++ b/include/linux/reiserfs_fs.h
@@ -2224,7 +2224,4 @@ int reiserfs_unpack(struct inode *inode, struct file *filp);
#define reiserfs_write_lock( sb ) lock_kernel()
#define reiserfs_write_unlock( sb ) unlock_kernel()
-/* xattr stuff */
-#define REISERFS_XATTR_DIR_SEM(s) (REISERFS_SB(s)->xattr_dir_sem)
-
#endif /* _LINUX_REISER_FS_H */
diff --git a/include/linux/reiserfs_fs_sb.h b/include/linux/reiserfs_fs_sb.h
index cbb8868..c8aee41 100644
--- a/include/linux/reiserfs_fs_sb.h
+++ b/include/linux/reiserfs_fs_sb.h
@@ -403,9 +403,6 @@ struct reiserfs_sb_info {
spinlock_t bitmap_lock; /* this lock on now only used to protect reserved_blocks variable */
struct dentry *priv_root; /* root of /.reiserfs_priv */
struct dentry *xattr_root; /* root of /.reiserfs_priv/.xa */
-#ifdef CONFIG_REISERFS_FS_XATTR
- struct rw_semaphore xattr_dir_sem;
-#endif
int j_errno;
#ifdef CONFIG_QUOTA
char *s_qf_names[MAXQUOTAS];
diff --git a/include/linux/reiserfs_xattr.h b/include/linux/reiserfs_xattr.h
index 13cdd5e..65c16fa 100644
--- a/include/linux/reiserfs_xattr.h
+++ b/include/linux/reiserfs_xattr.h
@@ -67,45 +67,27 @@ extern struct reiserfs_xattr_handler user_handler;
extern struct reiserfs_xattr_handler trusted_handler;
extern struct reiserfs_xattr_handler security_handler;
-static inline void reiserfs_write_lock_xattrs(struct super_block *sb)
-{
- down_write(&REISERFS_XATTR_DIR_SEM(sb));
-}
-static inline void reiserfs_write_unlock_xattrs(struct super_block *sb)
-{
- up_write(&REISERFS_XATTR_DIR_SEM(sb));
-}
-static inline void reiserfs_read_lock_xattrs(struct super_block *sb)
-{
- down_read(&REISERFS_XATTR_DIR_SEM(sb));
-}
-
-static inline void reiserfs_read_unlock_xattrs(struct super_block *sb)
-{
- up_read(&REISERFS_XATTR_DIR_SEM(sb));
-}
-
static inline void reiserfs_write_lock_xattr_i(struct inode *inode)
{
- down_write(&REISERFS_I(inode)->xattr_sem);
+ down_write(&REISERFS_I(inode)->i_xattr_sem);
}
static inline void reiserfs_write_unlock_xattr_i(struct inode *inode)
{
- up_write(&REISERFS_I(inode)->xattr_sem);
+ up_write(&REISERFS_I(inode)->i_xattr_sem);
}
static inline void reiserfs_read_lock_xattr_i(struct inode *inode)
{
- down_read(&REISERFS_I(inode)->xattr_sem);
+ down_read(&REISERFS_I(inode)->i_xattr_sem);
}
static inline void reiserfs_read_unlock_xattr_i(struct inode *inode)
{
- up_read(&REISERFS_I(inode)->xattr_sem);
+ up_read(&REISERFS_I(inode)->i_xattr_sem);
}
static inline void reiserfs_init_xattr_rwsem(struct inode *inode)
{
- init_rwsem(&REISERFS_I(inode)->xattr_sem);
+ init_rwsem(&REISERFS_I(inode)->i_xattr_sem);
}
#else
OpenPOWER on IntegriCloud