Hi Ivan, Jay,
[stripped the distributor's lists from Cc: again; I just wanted the patch to
reach lots of people that can potentially test.]
On Fri, Dec 07, 2001 at 07:43:47PM +0300, Ivan Kokshaysky wrote:
> On Fri, Dec 07, 2001 at 03:48:15PM +0100, Kurt Garloff wrote:
> > Hey, where did you find that manual? I could not find one at Compaq's web
> > site.
>
> IIRC, few years ago someone posted a link on axp-list, and I picked it up.
> Anyway, I've placed it on
> ftp://ftp.park.msu.ru/ink/docs/21174_SI.pdf
Got it, thanks!
> > How do I recognize the broken PYXIS in software? (Except for waiting for
> > your hard disk to be corrupted?)
>
> Put the chip into PCI loopback mode, read some memory (crossing the
> page boundary) via direct PCI window and check for corruption -
> perhaps this will work.
I guess the manual will tell me how to do that ...
> > Or should I just put an #ifdef CONFIG_ALPHA_PYXIS in my patch?
> > What about the users of generic alpha kernels?
>
> #ifdef CONFIG_ALPHA_PYXIS won't work for them.
That's why I'm looking for something better ...
But on a generic kernel, we have to do a number of things, then:
* Detect PYXIS
* Set into PCI loopback
* Do the cross 8k DMA read
* Set flag if corruption
(And even this test is not completely perfect, as only devices on the
primary PCI bus seem to be affected.)
> > Or a config option?
>
> Maybe...
Runtime detection is better of course. Think of distributors ...
On the other hand, the workaround does not hurt performance as far as I could
measure. For reading data from disk (i.e. DMAing to memory), the patch does
not do anything. For writing to disk, I make 16 or 17 PDR segments from 4,
but bonnie would not tell me any difference in performance.
So doing it on every PYXIS would also be an option.
> Jay, your opinion? Perhaps you have the info which systems are affected?
... and how they can be identified.
Thanks,
-- Kurt Garloff <garloff@suse.de> Eindhoven, NL GPG key: See mail header, key servers Linux kernel development SuSE GmbH, Nuernberg, DE SCSI, Security
This archive was generated by hypermail 2b29 : Fri Dec 07 2001 - 21:00:39 EST