From owner-freebsd-scsi Thu Feb 10 1:55:52 2000 Delivered-To: freebsd-scsi@freebsd.org Received: from shemp.palomine.net (shemp.palomine.net [205.198.88.200]) by builder.freebsd.org (Postfix) with SMTP id F2AC843FC for ; Thu, 10 Feb 2000 01:55:45 -0800 (PST) Received: (qmail 57092 invoked by uid 1000); 10 Feb 2000 09:55:43 -0000 Date: Thu, 10 Feb 2000 04:55:43 -0500 From: Chris Johnson To: "Justin T. Gibbs" Cc: scsi@FreeBSD.org, lamaster@nren.nasa.gov Subject: Re: BT-948 timeouts Message-ID: <20000210045543.A57016@palomine.net> References: <20000206141744.A2557@palomine.net> <200002071435.HAA43271@narnia.plutotech.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0.1i In-Reply-To: <200002071435.HAA43271@narnia.plutotech.com>; from gibbs@narnia.plutotech.com on Mon, Feb 07, 2000 at 07:35:22AM -0700 Sender: owner-freebsd-scsi@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Mon, Feb 07, 2000 at 07:35:22AM -0700, Justin T. Gibbs wrote: > > da0 at bt0 bus 0 target 6 lun 0 > > da0: Fixed Direct Access SCSI-2 device > > da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled > > da0: 4110MB (8418816 512 byte sectors: 255H 63S/T 524C) > > The buslogic cards don't give any indication of the "queue full" condition. > This means that CAM cannot know when to reduce the number of commands > sent to a device if it can only handle a few. My guess is that the > buslogic firmware is not gracefully dealing with the queue full > condition so we see timeouts. My hunch is that if you forced the > number of concurrent transactions down to 8 (what I recall is the > limit for this drive), then your timeouts will cease. You can > do this with the "camcontrol tags" command. Thanks very much for your response. Here's what I did: su-2.03# camcontrol tags da0 -N 8 And here's the result: su-2.03# camcontrol tags da0 -v (pass0:bt0:0:6:0): dev_openings 8 (pass0:bt0:0:6:0): dev_active 0 (pass0:bt0:0:6:0): devq_openings 8 (pass0:bt0:0:6:0): devq_queued 0 (pass0:bt0:0:6:0): held 0 (pass0:bt0:0:6:0): mintags 2 (pass0:bt0:0:6:0): maxtags 255 This seems to have done the trick. I built a world without any timeouts, which I hadn't been able to do before I made the change. Is there a fancy way to make this change survive across boots, or should I just shove the camcontrol command in a script that runs at boot time? How would I go about learning what the tags setting should be for a particular drive? Chris To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message