瀏覽代碼

md-raid0: conditional mddev->queue access to suit dm-raid

This patch is a prerequisite for dm-raid "raid0" support to allow
dm-raid to access the MD RAID0 personality doing unconditional
accesses to mddev->queue, which is NULL in case of dm-raid stacked on
top of MD.

Most of the conditional mddev->queue accesses made it to upstream but
this missing one, which prohibits md raid0 to set disk stack limits
(being done in dm core in case of md underneath dm).

Signed-off-by: Heinz Mauelshagen <heinzm@redhat.com>
Tested-by: Heinz Mauelshagen <heinzm@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Heinz Mauelshagen 10 年之前
父節點
當前提交
b6538fe329
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      drivers/md/raid0.c

+ 3 - 2
drivers/md/raid0.c

@@ -188,8 +188,9 @@ static int create_strip_zones(struct mddev *mddev, struct r0conf **private_conf)
 		}
 		}
 		dev[j] = rdev1;
 		dev[j] = rdev1;
 
 
-		disk_stack_limits(mddev->gendisk, rdev1->bdev,
-				  rdev1->data_offset << 9);
+		if (mddev->queue)
+			disk_stack_limits(mddev->gendisk, rdev1->bdev,
+					  rdev1->data_offset << 9);
 
 
 		if (rdev1->bdev->bd_disk->queue->merge_bvec_fn)
 		if (rdev1->bdev->bd_disk->queue->merge_bvec_fn)
 			conf->has_merge_bvec = 1;
 			conf->has_merge_bvec = 1;