Re: [PATCH] Add exception handling

From: Peter Zijlstra
Date: Sat Sep 18 2021 - 04:14:19 EST


On Sat, Sep 18, 2021 at 07:47:18AM +0000, cgel.zte@xxxxxxxxx wrote:
> From: Yang Guang <yang.guang5@xxxxxxxxxx>

That's not the email address this email is from: cgel.zte@xxxxxxxxx

In fact, I seem to get a lot of email from cgel.zte@xxxxxxxxx claiming
to be from different authors. This cannot be right.

> If the type is abnormal input from argument, the code will be NULL.

This is incorrect, in that case @code is uninitialized.

> So it should return as default;

That reasoning escapes me.

Also, there's exactly two callsites to __static_call_transform(), both
take their .type argument directly from __sc_insn(). Please explain how
the value can be out of range.

I'm thinking you're:

1) not understanding the code (or necessarily even C)
2) working on the suggestino of some broken automation

Please, go pester other people. I'll go block all email from
cgel.zte@xxxxxxxxx because it's not a single person and the quality of
patches is below par.

> Signed-off-by: Yang Guang <yang.guang5@xxxxxxxxxx>
> ---
> arch/x86/kernel/static_call.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/x86/kernel/static_call.c b/arch/x86/kernel/static_call.c
> index f608e6710300..696da3eccf28 100644
> --- a/arch/x86/kernel/static_call.c
> +++ b/arch/x86/kernel/static_call.c
> @@ -45,6 +45,8 @@ static void __ref __static_call_transform(void *insn, enum insn_type type, void
> code = text_gen_insn(RET_INSN_OPCODE, insn, func);
> size = RET_INSN_SIZE;
> break;
> + default:
> + return;
> }
>
> if (memcmp(insn, code, size) == 0)
> --
> 2.25.1
>