Re: [PATCH] 2.6 workaround for Athlon/Opteron prefetch errata

From: Jeff Garzik
Date: Thu Sep 11 2003 - 09:38:33 EST


Andi Kleen wrote:
It was not created for that (I know that because I created it ;-)

hehe


X86_GENERIC is merely an optimization hint (currently it only changes the cache
line size hint) It does not change anything related to correctness. Everything
that handles correctness is checked unconditionally.

When, building non-Pentium4-related code when CONFIG_MPENTIUM4 && !CONFIG_X86_GENERIC, it's OK that the code is incorrect for (picking example) AMD processors.

It would be a user bug to boot that on an AMD box, just like it would be user bug to boot a CONFIG_M586 kernel on an ancient 386.


is_prefetch is a correctness thing.

When we know at compile time it's not needed, it should not be enabled.


If I disabled CONFIG_X86_GENERIC and select CONFIG_MPENTIUM4, I darned well better not get any Athlon code. The cpu setup code in particular I want to conditionalize, and there are other bits that need work... but for the most part it works as intended.


Now that's becomming silly. It's alttogether only a few KB and all
__init code anyways.


If you're doing crazy LinuxBIOS stuff where flash size is limited, it makes a lot of sense. (and I do such crazy things) The core 2.6 kernel has really bloated with optional features, IMO.

Jeff



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