New abort/reset patch

Doug Ledford dledford at dialnet.net
Sun Aug 17 04:51:09 PDT 1997


I have placed my second abort/reset patch on ftp.dialnet.net in
/pub/linux/aic7xxx, same as before. There is a file there called
aic7xxx.TODO as well which are things that I think still need to be done
(at least for the 2.0.x version of the driver).  At this point, I've
finished the initial version of both the abort and reset code fixes and am
down to testing.  I can say that the abort reset code has now lived
through several false aborts caused by unexpected busfree conditions
(Justin, this is what I had mentioned once before concerning the
possibility of a pause_sequencer(p); taking place between the drop of ATNO
and the last outb during the P_MESGOUT, it's rare, but I've lived through
several of them now with aplomb due to the way I handle that in the seqint
handler).  The new code is also showing itself as capable of handling the
buggy Quantum FireBall Tempest drives with firmware 300X (these cause bus
hangs under heavy load, completely wedging the bus from any activity until
a reset is sent).  In any case, the least tested portion of the code is
the bus device reset code since I have no reasonable way of causing those
on purpose.

Now, requirements to use this patch.  You must have kernel version
2.0.31-pre-6 in order for this patch to apply cleanly.  Additionally, this
patch does not include the spin lock found in 2.0.31-pre-6 which is also
needed to keep the sequencer from overrunning (I have removed the bottom
half handler because, although it worked, it was slower than I was happy
with due to the fact that I couldn't reliably use tq_scheduler to run the
handler from).  It is recommended that you also grab the buffer.patch I
have on my site from Gadi Oxman (if you don't already have it).  The
aic7xxx.TODO file lists my current belief as to the state of the code and
things I'm working on getting fixed. 

At this point, I have the abort/reset code fairly well lined out, at least
on my system here.  In order to make sure the code is up to par though, I
do need some other people to try it out and beat on their system to see if
it breaks.  If it does, then please capture the logs and send them to me
(as much as possible anyway).

As this code gets fairly well tested, beaten, worn down, and cleaned up,
I'm going to start making the abort/reset stuff a little bit quiter, but
for now, it'll talk your head off if anything does happen :) 

*****************************************************************************
* Doug Ledford                      *   Unix, Novell, Dos, Windows 3.x,     *
* dledford at dialnet.net    873-DIAL  *     WfW, Windows 95 & NT Technician   *
*   PPP access $14.95/month         *****************************************
*   Springfield, MO and surrounding * Usenet news, e-mail and shell account.*
*   communities.  Sign-up online at * Web page creation and hosting, other  *
*   873-9000 V.34                   * services available, call for info.    *
*****************************************************************************




More information about the aic7xxx mailing list