On Tue, 05 May 2020 15:41:22 +0200
Thomas Gleixner <[email protected]> wrote:

> The preempt_enable_notrace() ASM thunk is called from tracing, entry code
> RCU and other places which are already in or going to be in the noinstr
> section which protects sensitve code from being instrumented.
> 
> Calls out of these sections happen with interrupts disabled, which is
> handled in C code, but the push regs, call, pop regs sequence can be
> completely avoided in this case.
> 
> This is also a preparatory step for annotating the call from the thunk to
> preempt_enable_notrace() safe from a noinstr section.
> 

BTW, after applying this patch, I get the following error:

/work/git/linux-test.git/arch/x86/entry/thunk_64.S: Assembler messages:
/work/git/linux-test.git/arch/x86/entry/thunk_64.S:67: Error: invalid operands 
(*UND* and *UND* sections) for `+'
/work/git/linux-test.git/arch/x86/entry/thunk_64.S:67: Error: invalid operands 
(*UND* and *ABS* sections) for `/'
make[3]: *** [/work/git/linux-test.git/scripts/Makefile.build:349: 
arch/x86/entry/thunk_64.o] Error 1
make[3]: *** Waiting for unfinished jobs....

Config attached.

-- Steve

Attachment: config.gz
Description: application/gzip

Reply via email to