Re: Avoid creating P2P prefetch window for expansion ROMs

From: Jan Beulich
Date: Tue Nov 27 2007 - 04:27:51 EST


>A kernel without the patch always forced creation of a prefetch
>window for expansion ROMs which was incorrect on systems where
>insufficient memory resources are available for both non-prefetch
>and prefetch windows. On the systems I was dealing with, the
>BIOS assumes (correctly, I believe) that expansion ROM memory
>resource needs will be satisfied from the non-prefetch window.

Why would ROM space generally need to be non-prefetchable? I can
see that special cases might require this, but as long as ROM space
really is just normal code and data, there's nothing wrong with
prefetching from it I would think. Of course I realize there's no way
to specify that on a per-device basis, so I think the BIOS must be
relied upon here.

>I think it would still be useful to know what system/PCI adapter
>combination you are seeing the problem with so that I can try
>to put together a setup that will reproduce the problem here.
>Alternatively, it would good if you wouldn't mind providing
>more information, testing possible fixes, etc. As a start,
>could you send me the following taken with and without the
>patch?
> - /proc/iomem
> - /proc/ioports
> - `dmesg` output
> - `lspci -vt` output
> - `lspci -vvv` output

Attached. *.0 is with the patch, *.1 is with it reverted. All output from
the SLE10SP2 (2.6.16.54-based) kernel that has that patch backported.

I'd also like to note that I found that a second of the systems I'm
regularly dealing with also has similar problems. I'm just not normally
looking at the boot messages that closely.

Jan

Attachment: lspci-vvv.1
Description: Binary data

Attachment: dmesg.1
Description: Binary data

Attachment: iomem.0
Description: Binary data

Attachment: iomem.1
Description: Binary data

Attachment: ioports.0
Description: Binary data

Attachment: ioports.1
Description: Binary data

Attachment: lspci-vt.0
Description: Binary data

Attachment: lspci-vt.1
Description: Binary data

Attachment: lspci-vvv.0
Description: Binary data

Attachment: dmesg.0
Description: Binary data