]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
btrfs: scrub: add scrub_lock lockdep check in scrub_workers_get
authorAnand Jain <anand.jain@oracle.com>
Wed, 30 Jan 2019 06:45:01 +0000 (14:45 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 25 Feb 2019 13:13:37 +0000 (14:13 +0100)
scrub_workers_refcnt is protected by scrub_lock, add lockdep_assert_held()
in scrub_workers_get().

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Suggested-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/scrub.c

index f2f0be7864b823672efaad5c1bb3ad55aef05803..17925af759ae4a1de74ad90fa61f9a90f26e3a55 100644 (file)
@@ -3741,6 +3741,8 @@ static noinline_for_stack int scrub_workers_get(struct btrfs_fs_info *fs_info,
        unsigned int flags = WQ_FREEZABLE | WQ_UNBOUND;
        int max_active = fs_info->thread_pool_size;
 
+       lockdep_assert_held(&fs_info->scrub_lock);
+
        if (fs_info->scrub_workers_refcnt == 0) {
                fs_info->scrub_workers = btrfs_alloc_workqueue(fs_info, "scrub",
                                flags, is_dev_replace ? 1 : max_active, 4);