On January 21, 2016 1:47:32 PM PST, Borislav Petkov <[email protected]> wrote: >On Thu, Jan 21, 2016 at 01:37:36PM -0800, H. Peter Anvin wrote: >> No, you still need to be able to find the beginning of the capability >> array, but the point is that right now it is implicit in that code >that >> CPUID_1_EDX == 0. > >Ah, you wanna be able to do: > >--- >diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S >index af1112980dd4..143646f0add1 100644 >--- a/arch/x86/kernel/head_32.S >+++ b/arch/x86/kernel/head_32.S >@@ -441,7 +443,7 @@ enable_paging: > movb %al,X86_MODEL > andb $0x0f,%cl # mask mask revision > movb %cl,X86_MASK >- movl %edx,X86_CAPABILITY >+ movl %edx,X86_CAPABILITY + CPUID_1_EDX*4 > > is486: > movl $0x50022,%ecx # set AM, WP, NE and MP
Basically, yes. -- Sent from my Android device with K-9 Mail. Please excuse brevity and formatting.

