Messages in this thread | | | Date | Fri, 4 Feb 2022 15:48:40 +0100 | From | Borislav Petkov <> | Subject | Re: [PATCH 0/3] x86/mce: Fix more noinstr fun |
| |
On Fri, Feb 04, 2022 at 12:24:00PM +0100, Marco Elver wrote: > I guess to solve noinstr "calling" something else the only solution is > to make the other function noinstr as well, or __always_inline. > > Have you considered making some of these other functions 'noinstr' as > well? I guess __always_inline works, esp. if there's just 1 caller. > And by the looks of it you're getting a net .text reduction, so
Yeah, I started doing that and the savings were the persuasive argument.
Even more so if the function has one caller only and gets inlined, normally. I guess it doesn't get inlined when there's KASAN instrumentation or so but I haven't verified it fully why.
Because even for oneliners like v8086_mode() which should get inlined trivially, the compiler ends up doing this constprop thing - I guess some constants folding optimization thing... it probably doesn't even matter so much whether oneliners get inlined in KASAN-enabled builds so I guess we might just as well force-inline them for the other configs.
> Acked-by: Marco Elver <elver@google.com>
Thx.
-- Regards/Gruss, Boris.
https://people.kernel.org/tglx/notes-about-netiquette
| |