Loading fs/btrfs/volumes.c +3 −1 Original line number Diff line number Diff line Loading @@ -239,7 +239,9 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, * chunk_mutex * ----------- * protects chunks, adding or removing during allocation, trim or when a new * device is added/removed * device is added/removed. Additionally it also protects post_commit_list of * individual devices, since they can be added to the transaction's * post_commit_list only with chunk_mutex held. * * cleaner_mutex * ------------- Loading fs/btrfs/volumes.h +8 −3 Original line number Diff line number Diff line Loading @@ -43,8 +43,8 @@ struct btrfs_pending_bios { #define BTRFS_DEV_STATE_FLUSH_SENT (4) struct btrfs_device { struct list_head dev_list; struct list_head dev_alloc_list; struct list_head dev_list; /* device_list_mutex */ struct list_head dev_alloc_list; /* chunk mutex */ struct list_head post_commit_list; /* chunk mutex */ struct btrfs_fs_devices *fs_devices; struct btrfs_fs_info *fs_info; Loading Loading @@ -229,9 +229,14 @@ struct btrfs_fs_devices { * this mutex lock. */ struct mutex device_list_mutex; /* List of all devices, protected by device_list_mutex */ struct list_head devices; /* devices not currently being allocated */ /* * Devices which can satisfy space allocation. Protected by * chunk_mutex */ struct list_head alloc_list; struct btrfs_fs_devices *seed; Loading Loading
fs/btrfs/volumes.c +3 −1 Original line number Diff line number Diff line Loading @@ -239,7 +239,9 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, * chunk_mutex * ----------- * protects chunks, adding or removing during allocation, trim or when a new * device is added/removed * device is added/removed. Additionally it also protects post_commit_list of * individual devices, since they can be added to the transaction's * post_commit_list only with chunk_mutex held. * * cleaner_mutex * ------------- Loading
fs/btrfs/volumes.h +8 −3 Original line number Diff line number Diff line Loading @@ -43,8 +43,8 @@ struct btrfs_pending_bios { #define BTRFS_DEV_STATE_FLUSH_SENT (4) struct btrfs_device { struct list_head dev_list; struct list_head dev_alloc_list; struct list_head dev_list; /* device_list_mutex */ struct list_head dev_alloc_list; /* chunk mutex */ struct list_head post_commit_list; /* chunk mutex */ struct btrfs_fs_devices *fs_devices; struct btrfs_fs_info *fs_info; Loading Loading @@ -229,9 +229,14 @@ struct btrfs_fs_devices { * this mutex lock. */ struct mutex device_list_mutex; /* List of all devices, protected by device_list_mutex */ struct list_head devices; /* devices not currently being allocated */ /* * Devices which can satisfy space allocation. Protected by * chunk_mutex */ struct list_head alloc_list; struct btrfs_fs_devices *seed; Loading