lkml.org 
[lkml]   [2008]   [Jul]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86: APIC: Remove apic_write_around(); use alternatives

* Maciej W. Rozycki <macro@linux-mips.org> wrote:

> Use alternatives to select the workaround for the 11AP Pentium
> erratum for the affected steppings on the fly rather than build time.
> Remove the X86_GOOD_APIC configuration option and replace all the
> calls to apic_write_around() with plain apic_write(), protecting
> accesses to the ESR as appropriate due to the 3AP Pentium erratum.
> Remove apic_read_around() and all its invocations altogether as not
> needed. Remove apic_write_atomic() and all its implementing backends.
> The use of ASM_OUTPUT2() is not strictly needed for input constraints,
> but I have used it for readability's sake.

wow, impressive patch!

> I had the feeling no one else was brave enough to do it, so I went
> ahead and here it is. Verified by checking the generated assembly and
> tested with both a 32-bit and a 64-bit configuration, also with the
> 11AP "feature" forced on and verified with gdb on /proc/kcore to work
> as expected (as an 11AP machines are quite hard to get hands on these
> days). Some script complained about the use of "volatile", but
> apic_write() needs it for the same reason and is effectively a
> replacement for writel(), so I have disregarded it.

kudos for pulling this off :-)

applied to tip/x86/apic. This will interact with tip/x86/x2apic but that
topic is being worked on anyway. The interaction should be trivial.

Ingo


\
 
 \ /
  Last update: 2008-07-18 12:55    [W:0.069 / U:11.456 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site