[PATCH v3] aic94xx: Increase can_queue for better performance

From: Darrick J. Wong
Date: Wed Aug 30 2006 - 16:53:23 EST


Hi all,

Below is a patch that sets can_queue in the aic94xx driver's scsi_host
to better performing values than what's there currently. It seems that
asd_ha->seq.can_queue reflects the number of requests that can be
queued per controller; so long as there's one scsi_host per controller,
it seems logical that the scsi_host ought to have the same can_queue
value. To the best of my (still limited) knowledge, this method
provides the correct value.

The effect of leaving this value set to 1 is terrible performance in
the case of either (a) certain Maxtor SAS drives flying solo or (b)
flooding several disks with I/O simultaneously (md-raid). There may be
more scenarios where we see similar problems that I haven't uncovered.

--D

Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>

diff --git a/drivers/scsi/aic94xx/aic94xx_init.c b/drivers/scsi/aic94xx/aic94xx_init.c
index 3e25e31..5c6d457 100644
--- a/drivers/scsi/aic94xx/aic94xx_init.c
+++ b/drivers/scsi/aic94xx/aic94xx_init.c
@@ -623,6 +623,8 @@ static int __devinit asd_pci_probe(struc
asd_ha->hw_prof.bios.present ? "build " : "not present",
asd_ha->hw_prof.bios.bld);

+ shost->can_queue = asd_ha->seq.can_queue;
+
if (use_msi)
pci_enable_msi(asd_ha->pcidev);


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/