raid0.c (b7e56edba4b02f2079042c326a8cd72a44635817) | raid0.c (086fa5ff0854c676ec333760f4c0154b3b242616) |
---|---|
1/* 2 raid0.c : Multiple Devices driver for Linux 3 Copyright (C) 1994-96 Marc ZYNGIER 4 <zyngier@ufr-info-p7.ibp.fr> or 5 <maz@gloups.fdn.fr> 6 Copyright (C) 1999, 2000 Ingo Molnar, Red Hat 7 8 --- 168 unchanged lines hidden (view full) --- 177 rdev1->data_offset << 9); 178 /* as we don't honour merge_bvec_fn, we must never risk 179 * violating it, so limit ->max_sector to one PAGE, as 180 * a one page request is never in violation. 181 */ 182 183 if (rdev1->bdev->bd_disk->queue->merge_bvec_fn && 184 queue_max_sectors(mddev->queue) > (PAGE_SIZE>>9)) | 1/* 2 raid0.c : Multiple Devices driver for Linux 3 Copyright (C) 1994-96 Marc ZYNGIER 4 <zyngier@ufr-info-p7.ibp.fr> or 5 <maz@gloups.fdn.fr> 6 Copyright (C) 1999, 2000 Ingo Molnar, Red Hat 7 8 --- 168 unchanged lines hidden (view full) --- 177 rdev1->data_offset << 9); 178 /* as we don't honour merge_bvec_fn, we must never risk 179 * violating it, so limit ->max_sector to one PAGE, as 180 * a one page request is never in violation. 181 */ 182 183 if (rdev1->bdev->bd_disk->queue->merge_bvec_fn && 184 queue_max_sectors(mddev->queue) > (PAGE_SIZE>>9)) |
185 blk_queue_max_sectors(mddev->queue, PAGE_SIZE>>9); | 185 blk_queue_max_hw_sectors(mddev->queue, PAGE_SIZE>>9); |
186 187 if (!smallest || (rdev1->sectors < smallest->sectors)) 188 smallest = rdev1; 189 cnt++; 190 } 191 if (cnt != mddev->raid_disks) { 192 printk(KERN_ERR "raid0: too few disks (%d of %d) - " 193 "aborting!\n", cnt, mddev->raid_disks); --- 126 unchanged lines hidden (view full) --- 320 int ret; 321 322 if (mddev->chunk_sectors == 0) { 323 printk(KERN_ERR "md/raid0: chunk size must be set.\n"); 324 return -EINVAL; 325 } 326 if (md_check_no_bitmap(mddev)) 327 return -EINVAL; | 186 187 if (!smallest || (rdev1->sectors < smallest->sectors)) 188 smallest = rdev1; 189 cnt++; 190 } 191 if (cnt != mddev->raid_disks) { 192 printk(KERN_ERR "raid0: too few disks (%d of %d) - " 193 "aborting!\n", cnt, mddev->raid_disks); --- 126 unchanged lines hidden (view full) --- 320 int ret; 321 322 if (mddev->chunk_sectors == 0) { 323 printk(KERN_ERR "md/raid0: chunk size must be set.\n"); 324 return -EINVAL; 325 } 326 if (md_check_no_bitmap(mddev)) 327 return -EINVAL; |
328 blk_queue_max_sectors(mddev->queue, mddev->chunk_sectors); | 328 blk_queue_max_hw_sectors(mddev->queue, mddev->chunk_sectors); |
329 mddev->queue->queue_lock = &mddev->queue->__queue_lock; 330 331 ret = create_strip_zones(mddev); 332 if (ret < 0) 333 return ret; 334 335 /* calculate array device size */ 336 md_set_array_sectors(mddev, raid0_size(mddev, 0, 0)); --- 237 unchanged lines hidden --- | 329 mddev->queue->queue_lock = &mddev->queue->__queue_lock; 330 331 ret = create_strip_zones(mddev); 332 if (ret < 0) 333 return ret; 334 335 /* calculate array device size */ 336 md_set_array_sectors(mddev, raid0_size(mddev, 0, 0)); --- 237 unchanged lines hidden --- |