Skip to content
Commit 0e94c4f4 authored by David Sterba's avatar David Sterba
Browse files

btrfs: scrub: move scrub_setup_ctx allocation out of device_list_mutex



The scrub context is allocated with GFP_KERNEL and called from
btrfs_scrub_dev under the fs_info::device_list_mutex. This is not safe
regarding reclaim that could try to flush filesystem data in order to
get the memory. And the device_list_mutex is held during superblock
commit, so this would cause a lockup.

Move the alocation and initialization before any changes that require
the mutex.

Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 92f7ba43
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment