> > I'm thinking there of the silly fadvise64_64 syscall, where ARM was forced > into having a different argument ordering from everything else through > zero discussion. > > So, what would your scripts do with the fadvise64_64 syscall on an > architecture requiring natural alignment of the 64-bit args in 32-bit > regs? > It depends on the exact rules: in most cases, it doesn't have to do anything, because the calling convention on the user side and on the kernel side simply cancel out. This was lesson #1 while implementing klibc (which does all system calls that aren't totally ad hoc via autogenerated stubs.) If, however, it is needed, the scripts I have can handle arbitrary weirdness, including stuff like needing manual splitting and even passing 64-bit arguments by reference. The important bit here is consistent rules, but ad hoc rules that are per system call (as opposed to a set of *per platform* rules that are adhered to) is just a disaster -- and one from which we can never recover with any kind of automation. Inconsistencies here hurt everything that involves the system call interface: all libcs, the kernel itself, strace etc. -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html