btrfs: remove dead create_space_info calls
Since commit2be12ef79
(btrfs: Separate space_info create/update), we've separated out the creation and updating of the space info structures. That commit was a straightforward refactoring of the two parts of update_space_info, but we can go a step further. Since commitsc59021f84
(Btrfs: fix OOPS of empty filesystem after balance) andb742bb82f
(Btrfs: Link block groups of different raid types), we know that the space_info structures will be created at mount and there will only ever be, at most, three of them. This patch cleans out the create_space_info calls after __find_space_info returns NULL since __find_space_info *can't* return NULL. The initial cause for reviewing this was the kobject_add calls from create_space_info occuring in sites where fs-reclaim wasn't allowed. Now we are certain they occur only early in the mount process and are safe. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Reviewed-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:

committed by
David Sterba

parent
580c6efaf9
commit
dc2d3005d2
@@ -954,9 +954,9 @@ struct btrfs_fs_info {
|
||||
struct btrfs_fs_devices *fs_devices;
|
||||
|
||||
/*
|
||||
* the space_info list is almost entirely read only. It only changes
|
||||
* when we add a new raid type to the FS, and that happens
|
||||
* very rarely. RCU is used to protect it.
|
||||
* The space_info list is effectively read only after initial
|
||||
* setup. It is populated at mount time and cleaned up after
|
||||
* all block groups are removed. RCU is used to protect it.
|
||||
*/
|
||||
struct list_head space_info;
|
||||
|
||||
|
Reference in New Issue
Block a user