Date: Thu, 7 Aug 2003 18:36:11 -0400 From: Don Bowman <don@sandvine.com> To: Dave Dolson <ddolson@sandvine.com>, "'freebsd-scsi@freebsd.org'" <freebsd-scsi@freebsd.org> Subject: RE: Swapping deadlock due to aic/scsi errors? Message-ID: <FE045D4D9F7AED4CBFF1B3B813C85337027421B3@mail.sandvine.com>
index | next in thread | raw e-mail
> From: Dave Dolson [mailto:ddolson@sandvine.com] ... > > > > The "lost command" is supposed to be detected by the timeout > > handler in the ahd driver. The timeout handler just forces > > a bus reset which should cause the command to be returned to > > the SCSI layer and then retried. It's not clear to me why > > this might not be happening, but the ahd driver was relatively > > green in 4.7 and you may just be tripping over a known (and > > later corrected) bug manifesting itself in an unusual way. > > Are you referring to the timeout handler ahd_timeout() ? > Are the commmands retried from ahd_reset_channel() ? > (It looks more like they're simply aborted.) > > Aside: Am I correct in believing that ahd_execute_scb() is called > for every command to the drive? It appears that if we set vm.swap_async_max=64 with sysctl, that the problem may no longer be reproducible. The default value seems to be 4. The system is deadlocking looking for these async buffers. Does this make sense?home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FE045D4D9F7AED4CBFF1B3B813C85337027421B3>
