Instead the spinlock super_lock looks appropriate for
protecting concurrent access to the label field of fs_info-super_copy.
In btrfs_ioctl_set_fslabel() make sure to only hold the spinlock for the
copy operation, not while calling the transaction functions.
Oh yeah ! fs_info-super_lock is
btrfs_ioctl_get_fslabel() and btrfs_ioctl_set_fslabel()
used root-fs_info-volume_mutex mutex which caused operations
like balance to block set/get label operation until its
completion and generally balance operation takes a long
time to complete, so it will be annoying to the user when
cli appears
On Thu, 18 Jul 2013 19:18:18 +0800, Anand Jain wrote:
btrfs_ioctl_get_fslabel() and btrfs_ioctl_set_fslabel()
used root-fs_info-volume_mutex mutex which caused operations
like balance to block set/get label operation until its
completion and generally balance operation takes a long
time to