Re: PYXIS bug detection

From: Jay Estabrook (
Date: Thu Dec 13 2001 - 16:57:03 EST

On Thu, Dec 13, 2001 at 10:22:03PM +0100, Kurt Garloff wrote:
> On Thu, Dec 13, 2001 at 02:59:11PM -0500, Jay Estabrook wrote:
> > On Thu, Dec 13, 2001 at 10:51:29PM +0300, Ivan Kokshaysky wrote:
> > > BTW, yet another idea: since the bug affects only scatter/gather DMA, what
> > > if we'll disable sg windows completely on affected machines? ;-)
> > > It would be generic fix, not only for bus mastering IDE.
> Is it really a fix?
> > That's what was done here for NT on MIATAs, IIRC; no S/G.
> And how do you handle large requests then? You can't expect to find large
> blocks of physically contigous memory to do I/O with Linux.

SCSI drivers typically setup their own S/G list of page-sized or less
entries; one can (and one used to, before we did the S/G DMA window
support) simply fill-in the direct-map addresses for each of the SCSI
S/G entries. This is fine on machines whose memory can be entirely
direct-mapped, which is true for MIATA.

> So disabling S/G makes the performance suck. (For IDE it might still be
> acceptable. For SCSI, things would already hurt more.)

No, S/G still takes place, but it depends only on the SCSI HW and not on
the Alpha S/G DMA window support.

> Or did I misunderstand your question and you just do S/G in a different way?
> Just the pyxis not doing s/g when it can access the whole memory anyway?

Correct (see above).

> My docs say it should be possible to have 6GB. Don't know if that's actually
> true.

Yes, theoretically. I think 3GB has been done, in which case one would
have trouble without S/G DMA window support. Most likely the practical
limit is 1.5GB.

> The way the IDE chips wants to work is to get a pointer to a list with PRD
> segments containing the bus addresses and length of the segments to transfer.
> If your suggestion just changes the way those bus addresses are calculated
> and imaged via the pyxis, it should be fine.

I belive that's the case, as that looks a lot like what the SCSI drivers


Jay A Estabrook Alpha Engineering - LINUX Project
Compaq Computer Corp. - MRO1-2/K15 (508) 467-2080
200 Forest Street, Marlboro MA 01752
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to
More majordomo info at

This archive was generated by hypermail 2b29 : Sat Dec 15 2001 - 21:00:33 EST