summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/volumes.h
diff options
context:
space:
mode:
authorXiao Guangrong <xiaoguangrong@cn.fujitsu.com>2011-04-20 10:09:16 +0000
committerChris Mason <chris.mason@oracle.com>2011-05-23 13:24:43 -0400
commit1f78160ce1b1b8e657e2248118c4d91f881763f0 (patch)
tree98c5496a9ab3e77e4cd682c0487f4c0127198396 /fs/btrfs/volumes.h
parent46224705656633466ca7dc71d81b3c0abc76cae4 (diff)
downloadtalos-obmc-linux-1f78160ce1b1b8e657e2248118c4d91f881763f0.tar.gz
talos-obmc-linux-1f78160ce1b1b8e657e2248118c4d91f881763f0.zip
Btrfs: using rcu lock in the reader side of devices list
fs_devices->devices is only updated on remove and add device paths, so we can use rcu to protect it in the reader side Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/volumes.h')
-rw-r--r--fs/btrfs/volumes.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/btrfs/volumes.h b/fs/btrfs/volumes.h
index cc2eadaf7a27..f1b2e4f53fc2 100644
--- a/fs/btrfs/volumes.h
+++ b/fs/btrfs/volumes.h
@@ -86,6 +86,8 @@ struct btrfs_device {
u8 uuid[BTRFS_UUID_SIZE];
struct btrfs_work work;
+ struct rcu_head rcu;
+ struct work_struct rcu_work;
};
struct btrfs_fs_devices {
OpenPOWER on IntegriCloud