Hi Arnd, On Mon, Nov 28, 2022 at 8:57 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > On Mon, Nov 28, 2022, at 20:23, Jason A. Donenfeld wrote: > > On Mon, Nov 28, 2022 at 08:18:12PM +0100, Arnd Bergmann wrote: > >> On Mon, Nov 28, 2022, at 12:18, Jason A. Donenfeld wrote: > > > > That's more or less how v7 was, but Thomas thought the x86 stuff should > > be separate. So for v8, the organization is: > > > > 1) generic syscall > > 2) generic vdso > > 3) x86 wiring > > > > The primary advantage is that future archs wanting to add this now can > > just look at commit (3) only, and make a similar commit for that new > > arch. > > > > If you think a different organization outweighs that advantage, can you > > spell out what division of patches you want, and I'll do that for v9? > > Or maybe this v8 is okay? > > My interest is that at the end of the series, all architectures > are hooked up with the same syscall number, which avoids confusion > and merge conflicts when we add the next syscall to all tables. > > How about one patch to add all the syscall table entries, and then > have the x86 specific change just turn on the Kconfig symbol that > actually enables the syscall? Okay, I can split it that way. If I gather your meaning correctly: 1) generic syscall C code 2) #define __NR_... in asm-generic/unistd.h x86/.../unistd.h, x86/.../syscall_64.tbl 3) generic vdso C code 4) hook up x86 vdso, and select the right Kconfig symbol to start compiling the code Is that what you have in mind? If so, I'll name (2) "arch: wire up vgetrandom_alloc() syscall number". Jason