On Fri, Mar 09, 2007 at 11:40:08AM -0800, H. Peter Anvin wrote:Jan-Benedict Glaw wrote:Not everybody has a simple indexed list of pointers :) For example,I discussed with Al Viro a while ago about using something like the SYSCALLS.def file from klibc as the source format for the system calls. That would deal very flexibly with almost all kinds of stub generation.
for vax-linux, we use a struct per syscall with the expected number of
on-stack longwords for the call.
So if something "new" is coming up, please keep in mind that it should
be flexible enough to represent that. :)
Hopefully with this idea in place, we can spot new syscalls before
the final release of the kernel (maybe kautobuild can help there)
and fix any silly system call argument ordering which requires
different architectures to have different syscall prototypes (eg,
sys_arm_fadvise64_64 vs sys_fadvise64_64, sys_arm_sync_file_range vs
sys_sync_file_range).
Otherwise the SYSCALLS.def file will probably end up being full of
ifdefs.