Re: [PATCH] x86: static_cpu_has_safe: discard dynamic check after init

From: Andy Lutomirski
Date: Mon Jan 18 2016 - 13:29:50 EST


On Mon, Jan 18, 2016 at 10:14 AM, Borislav Petkov <bp@xxxxxxx> wrote:
> On Mon, Jan 18, 2016 at 11:52:34AM -0500, Brian Gerst wrote:
>> It is due to page alignment padding. It was not enough to lose a
>> whole page from .text in your case.
>
> So nothing more got freed.
>
>> The size command includes any section that is marked executable in the
>> text count, including init text. If you use readelf -S vmlinux.o
>> instead you will notice that .text is the same size or smaller, and
>> .static_cpu_has (which is freed after boot) is the difference.
>
> So we're talking about less than a page here?
>
> [19] .static_cpu_has PROGBITS ffffffff81d335d3 011335d3
> 00000000000002df 0000000000000000 AX 0 0 1
>
> That's 479 bytes. Meh, it doesn't look like it is worth the trouble.
>

I think that, if we can make static_cpu_has be unconditionally safe as
a result and get rid of warn_pre_alternatives, then it is worth the
trouble.

--Andy