Re: aic79xx trouble

Justin T. Gibbs
2004-05-20T15:22:59Z

> On Sun, May 16, 2004 at 12:10:12PM -0600, Justin T. Gibbs wrote:
>> > The Adaptec Ultra320 cards (aic79xx) do not work reliably on Tyan Thunder
>> > motherboards.
>>
>> The U320 chips likely work a lot better now if you use driver version 2.0.12.
>> The AMD chipsets seem to screw up split completions, and this version of
>> the driver avoids the issue for the most common case of triggering the
>> bug (transaction completion DMAs) by never crossing an ADB boundary with
>> a single DMA.
>
> Hi Justin,
>
> I've seen several reports of what seem to be aic7xxx driver bugs. And
> some of them you have stated that are fixed by your new driver.
>
> I feel we should merge it in v2.4 mainline.
>
> Do you have any idea of how widely use your newer driver is?

Every user that sends a problem report to me is encouraged to use
the new drivers, and Adaptec only supports the newer drivers. I
can't, however, give you a definitive number.

> For what reason the changes you made havent been merged in the past
> in mainline?

The latest drivers (6.3.X for aic7xxx and 2.0.X for aic79xx) perform
their own watchdog error recovery. I made this change in order to overcome
deficiencies that exist in the SCSI mid-layer. While there have been
discussions around fixing these problems in 2.6.X (and some have been
corrected there), I do not believe that the 2.4.X SCSI layer will ever
be fixed to allow the removal of this code. So, as far as I can tell,
the complaints that have been raised about the latest drivers performing
private error recovery do not apply to 2.4.X and the latest drivers can be
merged there without controversy.

I have merged the latest drivers against linux-2.4 as of May 13th.
You can find bksend output containing all of the revisions to these
files since the last merge into 2.4.X, here:

http://people.freebsd.org/~gibbs/linux/SRC/aic79xx-linux-2.4-20040513.bksend.gz

Should you decide to merge in the new drivers, please retain the
revision history.

Thanks,
Justin