Re: [RFC, PATCHv1 15/28] x86: detect 5-level paging support

From: Linus Torvalds
Date: Thu Dec 08 2016 - 15:09:00 EST

On Thu, Dec 8, 2016 at 12:05 PM, Borislav Petkov <bp@xxxxxxxxx> wrote:
> The cpuid() in cpuflags.c doesn't zero ecx which, if we have to be
> pedantic, it should do. It calls CPUID now with the ptr value of its 4th
> on 64-bit and 3rd arg on 32-bit, respectively, IINM.

In fact, just do a single cpuid_count(), and then implement the
traditional cpuid() as just

#define cpuid(x, a,b,c,d) cpuid_count(x, 0, a, b, c, d)

or something.

Especially since that's some of the ugliest inline asm ever due to the
nasty BX handling.