Re: [PATCH 2/2] cciss: disable dma prefetch for P600



On Wed, Oct 18, 2006 at 02:37:23PM -0700, Andrew Morton wrote:

argh, you removed the mailing list from cc.

Sorry, I'm still lacking proper etiquette.


On Wed, 18 Oct 2006 11:54:53 -0500
"Mike Miller (OS Dev)" <mikem@xxxxxxxxxxxxxxxxxxxxxxx> wrote:

On Tue, Oct 17, 2006 at 05:10:21PM -0700, Andrew Morton wrote:
On Tue, 17 Oct 2006 16:13:03 -0500
"Mike Miller (OS Dev)" <mikem@xxxxxxxxxxxxxxxxxxxxxxx> wrote:

PATCH 2/2
Turned off DMA prefetch for the P600 on systems which may present
discontiguous memory.


What do you mean by "discontiguous memory"? CONFIG_DISCONTIGMEM?

The IPF memory map can have holes between the different regions. I've
been told by our HW guys that AMD may also have holes.

Pretty much all platforms/architectures have holes in their physical memory
map.



What is the actual problem which is being fixed here?

Sorry, I should have been clearer. There is a bug in the DMA engine that
that may result in prefetching data from beyond the end of memory or
falling off into one the holes on IPF and AMD. It causes a machine check
when that happens.
It doesn't happen on Proliant because the last 4kB (or so) of memory is
mapped out by the BIOS and Pentium guarantees contiguous memory.

I think that this:

#if defined(CONFIG_IA64) || defined(CONFIG_X86_64)

is nowhere near strong enough and is probably inappropriate.

It _could_ be that CONFIG_DISCONTIGMEM|CONFIG_SPARSEMEM will be closer, but
even CONFIG_FLATMEM systems can have holes.

I'm poking around on some IPF platforms. It looks like CONFIG_DISCONTIGMEM is
set on them, but not the others you mention. Would that be sufficient?


On what machines can/does this card exist? Things like powerpc?

This problem was found on Itanium. We don't try to support powerpc.

Thanks,
mikem
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: JCL
    ... The refrigerator sized cabinet not only housed this core memory, ... Speaking of paper tape, anyone ever have to bootstrap a machine by entering ... Another new fangled invention by IBM: 96 column cards! ... Not the standard rectangular 80 column ones with rectangular holes ...
    (comp.sys.hp.mpe)
  • Re: [PATCH 2/2] cciss: disable dma prefetch for P600
    ... falling off into one the holes on IPF and AMD. ... It doesn't happen on Proliant because the last 4kB of memory is ... prefetching was walking off the end of real mmeory and into the AGP region ... There is a bug in the DMA engine that that may result in prefetching ...
    (Linux-Kernel)
  • Re: removing Unfilled ROM holes
    ... but the memory hole is 8K!?! ... but that can often leave holes in the memory ... At best you can combine Dlls together and link code statically ... > smaillet at EmbeddedFusion dot com ...
    (microsoft.public.windowsce.platbuilder)
  • Re: hash table sizes
    ... >> NUMA with memory holes between nodes at the moment, ... > holes just below 4GB regardless. ... do - were you seeing this on x440 or NUMA-Q? ... send the line "unsubscribe linux-kernel" in ...
    (Linux-Kernel)
  • Re: Kernel Dump
    ... > IA64 and Sparc systems usually had sparse memory configurations and the ... I reused most of the ia64 code. ... > The problem is that x86 machines are increasinly having memory holes. ...
    (freebsd-arch)