Btrfs: remove rcu_barrier in btrfs_close_devices
It was introduced because btrfs used to do blkdev_put in a deferred work, now that btrfs has blkdev_put in place, this rcu_barrier can be removed. modprobe -r btrfs will do btrfs_cleanup_fs_uuids(), where it cleanup every %fs_devices on the list, but when we do btrfs_close_devices(), we have replaced the devices on the list with dummy ones which only have the same name and uuid, so modprobe -r btrfs will free those instead of what we were using, this change won't cause a problem for it. Signed-off-by: Liu Bo <bo.li.liu@oracle.com> Reviewed-by: Anand Jain <anand.jain@oracle.com> Reviewed-by: David Sterba <dsterba@suse.com> [ copied 2nd paragraph from mailinglist discussion ] Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
8577787fac
commit
47dba17171
|
@ -936,12 +936,6 @@ int btrfs_close_devices(struct btrfs_fs_devices *fs_devices)
|
|||
__btrfs_close_devices(fs_devices);
|
||||
free_fs_devices(fs_devices);
|
||||
}
|
||||
/*
|
||||
* Wait for rcu kworkers under __btrfs_close_devices
|
||||
* to finish all blkdev_puts so device is really
|
||||
* free when umount is done.
|
||||
*/
|
||||
rcu_barrier();
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue