PATCH 6/11
This patch changes the blk_queue_max_sectors from 512 to 2048. This helps
increase performance.
Please consider this for inclusion.
Thanks,
mikem
Signed-off-by: Mike Miller <[email protected]>
--------------------------------------------------------------------------------
---
drivers/block/cciss.c | 12 +++++++++---
drivers/block/cciss.h | 1 +
2 files changed, 10 insertions(+), 3 deletions(-)
diff -puN drivers/block/cciss.c~cciss_sector_size_for_lx2619-rc4 drivers/block/cciss.c
--- linux-2.6/drivers/block/cciss.c~cciss_sector_size_for_lx2619-rc4 2006-11-06 13:27:44.000000000 -0600
+++ linux-2.6-root/drivers/block/cciss.c 2006-11-06 13:27:44.000000000 -0600
@@ -269,6 +269,7 @@ static int cciss_proc_get_info(char *buf
"Firmware Version: %c%c%c%c\n"
"IRQ: %d\n"
"Logical drives: %d\n"
+ "Sector size: %d\n"
"Current Q depth: %d\n"
"Current # commands on controller: %d\n"
"Max Q depth since init: %d\n"
@@ -279,7 +280,9 @@ static int cciss_proc_get_info(char *buf
(unsigned long)h->board_id,
h->firm_ver[0], h->firm_ver[1], h->firm_ver[2],
h->firm_ver[3], (unsigned int)h->intr[SIMPLE_MODE_INT],
- h->num_luns, h->Qdepth, h->commands_outstanding,
+ h->num_luns,
+ h->cciss_sector_size,
+ h->Qdepth, h->commands_outstanding,
h->maxQsinceinit, h->max_outstanding, h->maxSG);
pos += size;
@@ -1389,7 +1392,7 @@ static void cciss_update_drive_info(int
/* This is a limit in the driver and could be eliminated. */
blk_queue_max_phys_segments(disk->queue, MAXSGENTRIES);
- blk_queue_max_sectors(disk->queue, 512);
+ blk_queue_max_sectors(disk->queue, h->cciss_sector_size);
blk_queue_softirq_done(disk->queue, cciss_softirq_done);
@@ -3341,6 +3344,9 @@ static int __devinit cciss_init_one(stru
hba[i]->access.set_intr_mask(hba[i], CCISS_INTR_ON);
cciss_procinit(i);
+
+ hba[i]->cciss_sector_size = 2048;
+
hba[i]->busy_initializing = 0;
for (j = 0; j < NWD; j++) { /* mfm */
@@ -3365,7 +3371,7 @@ static int __devinit cciss_init_one(stru
/* This is a limit in the driver and could be eliminated. */
blk_queue_max_phys_segments(q, MAXSGENTRIES);
- blk_queue_max_sectors(q, 512);
+ blk_queue_max_sectors(q, hba[i]->cciss_sector_size);
blk_queue_softirq_done(q, cciss_softirq_done);
diff -puN drivers/block/cciss.h~cciss_sector_size_for_lx2619-rc4 drivers/block/cciss.h
--- linux-2.6/drivers/block/cciss.h~cciss_sector_size_for_lx2619-rc4 2006-11-06 13:27:44.000000000 -0600
+++ linux-2.6-root/drivers/block/cciss.h 2006-11-06 13:27:44.000000000 -0600
@@ -77,6 +77,7 @@ struct ctlr_info
unsigned int intr[4];
unsigned int msix_vector;
unsigned int msi_vector;
+ int cciss_sector_size;
BYTE cciss_read;
BYTE cciss_write;
BYTE cciss_read_capacity;
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]