dm btree: silence lockdep lock inversion in dm_btree_del()
authorJoe Thornber <[email protected]>
Fri, 3 Jul 2015 13:51:32 +0000 (14:51 +0100)
committerMike Snitzer <[email protected]>
Mon, 6 Jul 2015 14:45:02 +0000 (10:45 -0400)
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 <[email protected]>
Signed-off-by: Mike Snitzer <[email protected]>
Cc: [email protected]
drivers/md/persistent-data/dm-btree.c

index 200ac12a1d407b5c648c7271a995a022ac8e7efc..fdd3793e22f957ef08db71f897607c68ce6eb6a3 100644 (file)
@@ -255,7 +255,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->info = info;