atom feed31 messages in org.freebsd.freebsd-scsiOngoing U320 AIC7902 Seagate ST318453...
FromSent OnAttachments
Don BowmanAug 6, 2003 6:56 am 
Justin T. GibbsAug 6, 2003 7:51 am 
Don BowmanAug 6, 2003 7:53 am 
Justin T. GibbsAug 6, 2003 7:58 am 
The Hermit HackerAug 6, 2003 8:07 am 
Don BowmanAug 6, 2003 8:09 am 
Don BowmanAug 6, 2003 8:29 am 
Justin T. GibbsAug 6, 2003 8:31 am 
Marc OlzheimAug 6, 2003 9:07 am 
Nate LawsonAug 6, 2003 9:34 am 
Justin T. GibbsAug 6, 2003 9:39 am 
Don BowmanAug 6, 2003 11:49 am 
Justin T. GibbsAug 6, 2003 12:14 pm 
Don BowmanAug 6, 2003 1:58 pm 
Justin T. GibbsAug 6, 2003 2:00 pm 
Don BowmanAug 6, 2003 2:06 pm 
Justin T. GibbsAug 6, 2003 2:13 pm 
Nate LawsonAug 6, 2003 9:37 pm 
Scott LongAug 6, 2003 10:02 pm 
Marc OlzheimAug 8, 2003 3:59 am 
Don BowmanAug 8, 2003 7:50 am 
Don BowmanAug 8, 2003 10:43 am 
Kenneth D. MerryAug 8, 2003 12:21 pm 
Don BowmanAug 9, 2003 9:31 am 
Don BowmanAug 11, 2003 10:49 am 
Justin T. GibbsAug 11, 2003 10:59 am 
Don BowmanAug 12, 2003 8:56 pm 
Don BowmanAug 12, 2003 8:58 pm 
Derek YeungAug 13, 2003 8:27 am 
Justin T. GibbsAug 13, 2003 9:52 am 
Marc OlzheimDec 29, 2003 2:29 am 
Subject:Ongoing U320 AIC7902 Seagate ST318453LW issues, SCB timed out
From:Don Bowman (do@sandvine.com)
Date:Aug 6, 2003 8:29:30 am
List:org.freebsd.freebsd-scsi

From: Justin T. Gibbs [mailto:gib@scsiguy.com] Sent: August 6, 2003 10:59 To: Don Bowman; 'free@freebsd.org'; 'aic7@freebsd.org' Subject: RE: Ongoing U320 AIC7902 Seagate ST318453LW issues, SCB timed out

I'm continuing to test without the throttle. I'm @ a loss for why it tracks some systems and not others.

There doesn't seem to be a reliable way to drop the number of tags since the system may not always come up. I don't think there's an option in the kernel to do so.

Just add a call to camcontrol early in the rc process, prior to fsck starting up. camcontrol is on the root filesystem. You can also modify the ahd driver to tell cam that it can only handle 32 commands per-target.

I offer this patch to make a loader tunable out of the maximum tags supported.

$ cvs diff -u3 aic79xx_osm.c Index: aic79xx_osm.c =================================================================== RCS file: /usr/cvs/src/sys/dev/aic7xxx/aic79xx_osm.c,v retrieving revision 1.3.2.3.1000.3 diff -u -3 -r1.3.2.3.1000.3 aic79xx_osm.c --- aic79xx_osm.c 28 Jul 2003 00:26:42 -0000 1.3.2.3.1000.3 +++ aic79xx_osm.c 6 Aug 2003 15:28:44 -0000 @@ -119,10 +119,17 @@ struct cam_path *path; long s; int count; + int max_tags = 256; /* Controller can really handle 512 transactions + per device, but CAM is still using a byte + to hold the max tag depth field + */

count = 0; sim = NULL;

+ sprintf(ahd_info, "hw.ahd%d.max_tags", device_get_unit(ahd->dev_softc)); + TUNABLE_INT_FETCH(ahd_info, &max_tags); + ahd_controller_info(ahd, ahd_info); printf("%s\n", ahd_info); ahd_lock(ahd, &s); @@ -139,7 +146,7 @@ */ sim = cam_sim_alloc(ahd_action, ahd_poll, "ahd", ahd, device_get_unit(ahd->dev_softc), - 1, /*XXX*/256, devq); + 1, max_tags, devq); if (sim == NULL) { cam_simq_free(devq); goto fail;