Re: 2.6.28-rc2 hates my e1000e

From: Linus Torvalds
Date: Sat Nov 01 2008 - 19:19:34 EST




On Sat, 1 Nov 2008, Jonathan Corbet wrote:
>
> Looks to me like Linus's patch is the way to go, at least for now...

I'll make an -rc3 tomorrow. However, I suspect that if we have lots more
regressions, we'll just have to revert the resource handling back to the
2.6.27 state.

The problem with resource handling is that even when we can write code
that "makes sense", in the end firmware can always do odd things. For
example, in your case it really does make sense to keep the already
allocated PCI resources in the reserved region, because the firmware
obviously did both the reserved region _and_ the PCI BAR allocation.

At the same time, I'm worried that what Windows does is something totally
different, probably odd, and possibly even dependent on some HAL layer
motherboard driver or other. And it's really the case that every single
time we change resource allocation - never mind how subtly, or how much
sense it makes - it will break some odd setup somewhere.

And I would not be surprised if we end up finding some machine that really
had totally _broken_ PCI BAR setup, where it set up some PCI decode to
overlap with a reserved region and then depended on the OS re-allocating
the resource.

As usual, the right answer doesn't necessarily end up being the one that
makes most sense, but probably the one that matches what Windows ends up
doing most closely - just because that's the one that was tested against.
And windows behaviour can in turn easily depend on some internal Windows
implementation detail, rather than any "thought out" solution.

The good news here is that the particular behavior wrt e820 reserved
resources and various PCI BAR's should be totally irrelevant for 99.9% of
all hardware, and we _only_ have to worry about the really odd cases. But
even just a couple of odd BIOS versions are enough to cause a lot of pain.

So let's see how it turns out in -rc3. It works for _you_, and it looks
sane to me, but ...

Linus
--
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/