Whamcloud - gitweb
b=22850 bump max number of phys/hw segment in RHEL5 kernel
authorJohann Lombardi <johann@sun.com>
Wed, 19 May 2010 12:07:49 +0000 (14:07 +0200)
committerRobert Read <robert.read@oracle.com>
Thu, 10 Jun 2010 06:45:22 +0000 (23:45 -0700)
This grants us that we can always send 1MB i/o to the disk,
regardless of contiguous memory or not.
We already have the same tuning for SLES10.

Merge of 1.8 commits:  876c6e4db0af14cf5d9a6cb7

lustre/kernel_patches/patches/blkdev_tunables-2.6-rhel5.patch

index 84a0ecb..3874794 100644 (file)
@@ -1,11 +1,44 @@
---- linux-2.6.18-128.1.14.orig/include/linux/blkdev.h  2009-06-19 04:03:20.000000000 -0400
-+++ linux-2.6.18-128.1.14/include/linux/blkdev.h       2009-09-04 16:31:30.000000000 -0400
-@@ -778,7 +778,7 @@ extern int blkdev_issue_flush(struct blo
- #define MAX_PHYS_SEGMENTS 128
- #define MAX_HW_SEGMENTS 128
+Index: linux-2.6.18-164.11.1/include/linux/blkdev.h
+===================================================================
+--- linux-2.6.18-164.11.1.orig/include/linux/blkdev.h
++++ linux-2.6.18-164.11.1/include/linux/blkdev.h
+@@ -788,10 +788,10 @@ extern void blk_free_tags(struct blk_que
+ extern void blk_rq_bio_prep(request_queue_t *, struct request *, struct bio *);
+ extern int blkdev_issue_flush(struct block_device *, sector_t *);
+-#define MAX_PHYS_SEGMENTS 128
+-#define MAX_HW_SEGMENTS 128
++#define MAX_PHYS_SEGMENTS 256
++#define MAX_HW_SEGMENTS 256
  #define SAFE_MAX_SECTORS 255
 -#define BLK_DEF_MAX_SECTORS 1024
 +#define BLK_DEF_MAX_SECTORS 2048
  
  #define MAX_SEGMENT_SIZE      65536
  
+Index: linux-2.6.18-164.11.1/include/scsi/scsi_host.h
+===================================================================
+--- linux-2.6.18-164.11.1.orig/include/scsi/scsi_host.h
++++ linux-2.6.18-164.11.1/include/scsi/scsi_host.h
+@@ -30,7 +30,7 @@ struct blk_queue_tags;
+  *     used in one scatter-gather request.
+  */
+ #define SG_NONE 0
+-#define SG_ALL 0xff
++#define SG_ALL 256
+ #define DISABLE_CLUSTERING 0
+Index: linux-2.6.18-164.11.1/drivers/scsi/lpfc/lpfc.h
+===================================================================
+--- linux-2.6.18-164.11.1.orig/drivers/scsi/lpfc/lpfc.h
++++ linux-2.6.18-164.11.1/drivers/scsi/lpfc/lpfc.h
+@@ -38,7 +38,7 @@
+ #define LPFC_MAX_NS_RETRY     3       /* Number of retry attempts to contact
+                                          the NameServer  before giving up. */
+ #define LPFC_CMD_PER_LUN      3       /* max outstanding cmds per lun */
+-#define LPFC_DEFAULT_SG_SEG_CNT       64      /* sg element count per scsi cmnd */
++#define LPFC_DEFAULT_SG_SEG_CNT       256     /* sg element count per scsi cmnd */
+ #define LPFC_MAX_SG_SEG_CNT   256     /* sg element count per scsi cmnd */
+ #define LPFC_IOCB_LIST_CNT    2250    /* list of IOCBs for fast-path usage. */
+ #define LPFC_Q_RAMP_UP_INTERVAL 120     /* lun q_depth ramp up interval */