On Thu, 29 Nov 2018 11:24:43 -0800 Linus Torvalds <torva...@linux-foundation.org> wrote:
> On Thu, Nov 29, 2018 at 11:16 AM Steven Rostedt <rost...@goodmis.org> 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 Those are not doing inline assembly. > > and the __MAP() macro from > > include/linux/syscalls.h > > so it's not pretty. But it would solve all the problems. > Again, not inline assembly, and those only handle up to 6 parameters. My POC started down this route, until I notice that there's tracepoints that have 13 parameters! And I need to handle all tracepoints. Yes, we can argue that we need to change those (if that doesn't break the API of something using it). -- Steve