From 25970e49c4c8500f9265a55502d2cdb1b530d455 Mon Sep 17 00:00:00 2001 From: scottl Date: Fri, 20 Feb 2009 07:43:43 +0000 Subject: Tell CAM that CISS logical devices support tagged queueing. This fixes the low "max device openings" count that has led to poor performance in FreeBSD 7.0 and 7.1 --- sys/dev/ciss/ciss.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/dev/ciss/ciss.c b/sys/dev/ciss/ciss.c index 559dacd..208edca 100644 --- a/sys/dev/ciss/ciss.c +++ b/sys/dev/ciss/ciss.c @@ -2981,8 +2981,8 @@ ciss_cam_action(struct cam_sim *sim, union ccb *ccb) { struct ccb_trans_settings *cts = &ccb->cts; int bus, target; - struct ccb_trans_settings_spi *spi = - &cts->xport_specific.spi; + struct ccb_trans_settings_spi *spi = &cts->xport_specific.spi; + struct ccb_trans_settings_scsi *scsi = &cts->proto_specific.scsi; bus = cam_sim_bus(sim); target = cts->ccb_h.target_id; @@ -2997,6 +2997,9 @@ ciss_cam_action(struct cam_sim *sim, union ccb *ccb) spi->valid = CTS_SPI_VALID_DISC; spi->flags = CTS_SPI_FLAGS_DISC_ENB; + scsi->valid = CTS_SCSI_VALID_TQ; + scsi->flags = CTS_SCSI_FLAGS_TAG_ENB; + cts->ccb_h.status = CAM_REQ_CMP; break; } -- cgit v1.1