OSDN Git Service

btrfs: fix deadlock when writing out space cache
authorJosef Bacik <jbacik@fb.com>
Wed, 15 Nov 2017 21:20:52 +0000 (16:20 -0500)
committerDavid Sterba <dsterba@suse.com>
Mon, 27 Nov 2017 14:50:07 +0000 (15:50 +0100)
commitb77000ed558daa3bef0899d29bf171b8c9b5e6a8
treedf4e2531b11c7a3ea309c9ee991d43090f2be4b5
parent8e138e0d92c6c9d3d481674fb14e3439b495be37
btrfs: fix deadlock when writing out space cache

If we fail to prepare our pages for whatever reason (out of memory in
our case) we need to make sure to drop the block_group->data_rwsem,
otherwise hilarity ensues.

Signed-off-by: Josef Bacik <jbacik@fb.com>
Reviewed-by: Omar Sandoval <osandov@fb.com>
Reviewed-by: Liu Bo <bo.li.liu@oracle.com>
Reviewed-by: David Sterba <dsterba@suse.com>
[ add label and use existing unlocking code ]
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/free-space-cache.c