Date: Sat, 20 Jan 1996 09:24:35 -0800 From: "Justin T. Gibbs" <gibbs@freefall.freebsd.org> To: "Mike Pritchard" <mpp@mpp.minn.net> Cc: freebsd-hackers@freebsd.org, freebsd-scsi Subject: Re: Can't take dumps w/Adaptec 2842 Message-ID: <199601201724.JAA06649@freefall.freebsd.org> In-Reply-To: Your message of "Sat, 20 Jan 1996 08:50:16 CST." <199601201450.IAA00247@mpp.minn.net>
next in thread | previous in thread | raw e-mail | index | archive | help
>I noticed a while back that I couldn't take a dump after >a crash. Today I finally decided to track down the reason >for that. It appears that the Adaptec 2842 driver (aic7xxx) >and sddump don't quite agree on some return codes. > >The dump fails with an ENXIO error because it gets a SUCCESSFULLY_QUEUED >return code (retval = 0) from the aic7xxx driver, and it is expecting to >get a COMPLETE return code. Could someone who understands this code >better than I do please take a look into this? Here's the story. The aic7xxx driver doesn't poll anymore. The reason it doesn't poll is because its slower, not necessary during normal operation, and would cause massive confusion if you re-probed your SCSI bus with interrupts enabled since the SCSI code would tell you not to sleep. Now the problem is that sddump wants you to poll since interrupts may well be disabled. I have no problem putting polling back in for this one case so long as its differentiated from the other times that SCSI_NOSLEEP is used. Perhaps we need a new flag? I'd like SCSI_NOSLEEP to mean "calling tsleep may not be safe" and perhaps SCSI_POLL (only used during sddump) would cause drivers to disable there interrupt (just in case) and poll until complete. Furthermore, I'd like to change the way resorces are reserved so that everything is allocated when we can always sleep. This wouldn't be very difficult to do (getting a scsi_xfer calls into the driver to "attach" the driver's per transaction resource to the scsi_xfer). This would kill the SCSI_NOSLEEP flag. >-- >Mike Pritchard >mpp@minn.net >"Go that way. Really fast. If something gets in your way, turn" -- Justin T. Gibbs =========================================== FreeBSD: Turning PCs into workstations ===========================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601201724.JAA06649>