Revert "block: remove __blkdev_driver_ioctl"
[platform/kernel/linux-rpi.git] / drivers / md / dm-rq.c
index a896dea..53a9b16 100644 (file)
@@ -500,8 +500,13 @@ static blk_status_t dm_mq_queue_rq(struct blk_mq_hw_ctx *hctx,
 
        if (unlikely(!ti)) {
                int srcu_idx;
-               struct dm_table *map = dm_get_live_table(md, &srcu_idx);
+               struct dm_table *map;
 
+               map = dm_get_live_table(md, &srcu_idx);
+               if (unlikely(!map)) {
+                       dm_put_live_table(md, srcu_idx);
+                       return BLK_STS_RESOURCE;
+               }
                ti = dm_table_find_target(map, 0);
                dm_put_live_table(md, srcu_idx);
        }