Re: [PATCH v0 05/12] x86/mce: Allow instrumentation during task work queueing

Borislav Petkov
2021-11-09T22:05:14Z

On Thu, Nov 04, 2021 at 03:40:28PM +0100, Borislav Petkov wrote:
> From: Borislav Petkov <bp@suse.de>
>
> Fixes
>
> vmlinux.o: warning: objtool: do_machine_check()+0xdb1: call to queue_task_work() leaves .noinstr.text section
>
> Signed-off-by: Borislav Petkov <bp@suse.de>
> ---
> arch/x86/kernel/cpu/mce/core.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
> index c7181e8e2845..65a8be420aff 100644
> --- a/arch/x86/kernel/cpu/mce/core.c
> +++ b/arch/x86/kernel/cpu/mce/core.c
> @@ -1451,6 +1451,8 @@ noinstr void do_machine_check(struct pt_regs *regs)
> if (worst != MCE_AR_SEVERITY && !kill_current_task)
> goto out;
>
> + instrumentation_begin();

<peterz> so it might be nice to have a comment with each sandwich to
say why sh*t won't go sideways when instrumentation happens in the #MC
at that point
<peterz> like this shuts things up, but really we don't want
instrumentation here either, except blah

note to self: will need to go through the whole set.

--
Regards/Gruss,
Boris.