Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 06 Aug 2003 08:58:56 -0600
From:      "Justin T. Gibbs" <gibbs@scsiguy.com>
To:        Don Bowman <don@sandvine.com>, "'freebsd-scsi@freebsd.org'" <freebsd-scsi@freebsd.org>, "'aic7xxx@freebsd.org'" <aic7xxx@freebsd.org>
Subject:   RE: Ongoing U320 AIC7902 Seagate ST318453LW issues, SCB timed out
Message-ID:  <1684930000.1060181936@aslan.scsiguy.com>
In-Reply-To: <FE045D4D9F7AED4CBFF1B3B813C8533702742163@mail.sandvine.com>
References:  <FE045D4D9F7AED4CBFF1B3B813C8533702742163@mail.sandvine.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1684930000.1060181936>