Whamcloud - gitweb
land b1_5 onto HEAD
[fs/lustre-release.git] / lustre / kernel_patches / patches / raid5-large-io.patch
1 This patch changes max request size to <chunk size> * <disks>
2 in order to allow Lustre to submit large I/Os and avoid
3 unnecessary reads.
4
5 Index: linux-2.6.9/drivers/md/raid5.c
6 ===================================================================
7 --- linux-2.6.9.orig/drivers/md/raid5.c 2006-05-22 00:01:30.000000000 +0400
8 +++ linux-2.6.9/drivers/md/raid5.c      2006-05-22 00:09:56.000000000 +0400
9 @@ -1609,6 +1609,11 @@ static int run (mddev_t *mddev)
10         mddev->queue->unplug_fn = raid5_unplug_device;
11         mddev->queue->issue_flush_fn = raid5_issue_flush;
12  
13 +       /* in order to support large I/Os */
14 +       blk_queue_max_sectors(mddev->queue, mddev->chunk_size * mddev->raid_disks >> 9);
15 +       mddev->queue->max_phys_segments = mddev->chunk_size * mddev->raid_disks >> PAGE_SHIFT;
16 +       mddev->queue->max_hw_segments = mddev->chunk_size * mddev->raid_disks >> PAGE_SHIFT;;
17 +
18         PRINTK("raid5: run(%s) called.\n", mdname(mddev));
19  
20         ITERATE_RDEV(mddev,rdev,tmp) {