Re: [PATCH v2 4/4] x86/static_call: Add inline static call implementation for x86-64

From: Linus Torvalds
Date: Thu Nov 29 2018 - 14:25:07 EST


On Thu, Nov 29, 2018 at 11:16 AM Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> But then we need to implement all numbers of parameters.

Oh, I agree, it's nasty.

But it's actually a nastiness that we've solved before. In particular,
with the system call mappings, which have pretty much the exact same
issue of "map unknown number of arguments to registers".

Yes, it's different - there you map the unknown number of arguments to
a structure access instead. And yes, the macros are unbelievably ugly.
See

arch/x86/include/asm/syscall_wrapper.h

and the __MAP() macro from

include/linux/syscalls.h

so it's not pretty. But it would solve all the problems.

Linus