浏览代码

Btrfs: Release uuid_mutex for shrink during device delete

Device scanning waits on the uuid_mutex, which can result in a very long
wait if dev delete is shrinking the device.

Signed-off-by: Carey Underwood <cwillu@cwillu.com>
Reviewed-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Carey Underwood 12 年之前
父节点
当前提交
d790155457
共有 1 个文件被更改,包括 2 次插入0 次删除
  1. 2 0
      fs/btrfs/volumes.c

+ 2 - 0
fs/btrfs/volumes.c

@@ -1562,7 +1562,9 @@ int btrfs_rm_device(struct btrfs_root *root, char *device_path)
 		clear_super = true;
 	}
 
+	mutex_unlock(&uuid_mutex);
 	ret = btrfs_shrink_device(device, 0);
+	mutex_lock(&uuid_mutex);
 	if (ret)
 		goto error_undo;