summaryrefslogtreecommitdiff
path: root/fs/splice.c
diff options
context:
space:
mode:
authorChris Mason <clm@fb.com>2015-04-24 21:00:00 +0300
committerChris Mason <clm@fb.com>2015-04-24 21:52:25 +0300
commita3bdccc4e683f0ac69230707ed3fa20e7cf73a79 (patch)
tree7cec1e92ccfa9fc236190810acb55f025e480d9d /fs/splice.c
parent85db36cfb3de1422aeafb4e2ce83396333b744bb (diff)
downloadlinux-a3bdccc4e683f0ac69230707ed3fa20e7cf73a79.tar.xz
Btrfs: prevent list corruption during free space cache processing
__btrfs_write_out_cache is holding the ctl->tree_lock while it prepares a list of bitmaps to record in the free space cache. It was dropping the lock while it worked on other components, which made a window for free_bitmap() to free the bitmap struct without removing it from the list. This changes things to hold the lock the whole time, and also makes sure we hold the lock during enospc cleanup. Reported-by: Filipe Manana <fdmanana@suse.com> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/splice.c')
0 files changed, 0 insertions, 0 deletions