[8069] in linux-scsi channel archive
Re: Kernel v2.2.15pre5 SCSI 2940U2W with AIC7895 boot still broke(with
daemon@ATHENA.MIT.EDU (M Sweger)
Tue Feb 8 18:54:17 2000
Date: Tue, 8 Feb 2000 16:26:12 -0500 (EST)
From: M Sweger <mikesw@whiterose.net>
To: Doug Ledford <dledford@redhat.com>
Cc: Benjamin Herrenschmidt <bh40@calva.net>, alan@redhat.com,
linux-scsi@vger.rutgers.edu, linux-kernel@vger.rutgers.edu
In-Reply-To: <38A0242E.E5DD3AC4@redhat.com>
Message-ID: <Pine.LNX.4.21.0002081610300.10453-100000@whiterose.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Hi Doug,
I have linux 2.2.15pre5 that has aic7xxx.c v5.1.23. To apply your
patch below v5.1.25 I must first apply v5.1.24.
However, when I went to your site and got aic7xxx.5.1.24.patch
and did "patch -p1 <aic7xxx.5.1.24.patch" in /usr/src/linux, it
dumped alot of hunks for aic7xxx.c into the rej file. THen when the
v5.1.25 patch is applied to the aic7xxx.c driver it patches ok.
QUESTION: which kernel version was aic7xxx.5.1.24 patched agains't?
Otherwise, I'll just get bogus results I think in testing the
patch below.
In addition, it also causes patch reject (hunk) problems agains't
linux 2.2.15pre6.
MIke
On Tue, 8 Feb 2000, Doug Ledford wrote:
> M Sweger wrote:
> >
> > Ben,
> >
> > Ok!
> > So what do I add to the aic7xxx.c driver to confirm this idea?
>
> There's actually multiple things in play at the particular piece of code you
> were talking about. I've taken the comments you made, the findings you were
> able to come up with (good work on that BTW, I love bug reports that can
> pin-point the versions of the driver that break and exactly where a workaround
> is, it's helps quite a lot), and I've made a test patch. In order to apply
> this, you need to upgrade your aic7xxx version to the 5.1.24 driver release
> (which is on my web site), then apply this test patch. I haven't booted this
> patch, but it should work (I've done compile tests only).
>
> The general issue is that we are dealing with some registers that A) can't
> handle write combining and B) are status bits that are driver by external
> logic devices that happen to be very *slow* external logic devices (compared
> to the chip anyway). When you write to the register it does things to the
> external devices, when you read from the register you get the response from
> said external devices. I've put in code to force a PCI flush, a memory
> barrier because it seems to make a difference on VIA chipsets, and a udelay
> after the flush so that we get the delay we need starting from after when the
> write is forced. That should solve the problem.
>
> Let me know if this solves your problem, and if so I'll be releasing the
> 5.1.25 driver very shortly thereafter.
>
> --
>
> Doug Ledford <dledford@redhat.com> http://people.redhat.com/dledford
> Please check my web site for aic7xxx updates/answers before
> e-mailing me about problems
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.rutgers.edu