]> git.hungrycats.org Git - linux/commitdiff
dm btree: silence lockdep lock inversion in dm_btree_del()
authorJoe Thornber <ejt@redhat.com>
Fri, 3 Jul 2015 13:51:32 +0000 (14:51 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 12 Aug 2015 14:33:20 +0000 (16:33 +0200)
commit 1c7518794a3647eb345d59ee52844e8a40405198 upstream.

Allocate memory using GFP_NOIO when deleting a btree.  dm_btree_del()
can be called via an ioctl and we don't want to recurse into the FS or
block layer.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/md/persistent-data/dm-btree.c

index bbb2ec5975dc870f9a268446cdfafbadf78fe0fd..18f37e0a7cc5998de38412c49e8028268d91a303 100644 (file)
@@ -236,7 +236,7 @@ int dm_btree_del(struct dm_btree_info *info, dm_block_t root)
        int r;
        struct del_stack *s;
 
-       s = kmalloc(sizeof(*s), GFP_KERNEL);
+       s = kmalloc(sizeof(*s), GFP_NOIO);
        if (!s)
                return -ENOMEM;
        s->tm = info->tm;