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

-- 
Regards/Gruss,
    Boris.

ECO tip #101: Trim your mails when you reply.

Reply via email to