On Fri, Apr 8, 2022 at 9:14 PM Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > > On Sat, Apr 09, 2022 at 03:29:21AM +0900, Masahiro Yamada wrote: > > Is [2] caused by dead code that was not optimized out > > due to the unusual inlining decisions by the compiler ? > > The complaint is due to SMAP validation; objtool will scream if there's > a CALL in between STAC/CLAC. The thinking is that since they open a > security window, we want tight code between them. We also very much > don't want tracing and other funnies to happen there. As such, any CALL > is dis-allowed. > > This weird option is having us upgrade quite a few 'inline' to > '__always_inline'. There is also __attribute__((flatten)), which you can add to the caller to tell gcc to inline everything it can into this function, without having to inline it everywhere else. Would that work here? It sounds like this is what STAC/CLAC actually requires. Arnd