Ongoing U320 AIC7902 Seagate ST318453LW issues, SCB timed out

Justin T. Gibbs gibbs at scsiguy.com
Wed Aug 6 07:59:01 PDT 2003


> 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.

In aic79xx_osm.c change:

	/*
         * Construct our SIM entry
         */
        sim = cam_sim_alloc(ahd_action, ahd_poll, "ahd", ahd,
                            device_get_unit(ahd->dev_softc),
                            1, /*XXX*/256, devq);
				      ^^^

to 32.

The XXX is there since this controller can really handle 512
transactions per-device, but CAM is still using a byte to hold
the max tag depth field and doesn't currently differentiate between
packetized and non-packetized targets.  non-packetized, tagged queuing
capable devices can only handle 256 tags.

--
Justin



More information about the freebsd-scsi mailing list