On Thu, Feb 16, 2012 at 13:17, H. Peter Anvin <hpa@xxxxxxxxx> wrote: > The other thing that you really need in addition to system call number is > ABI identifier, since a syscall number may mean different things for > different entry points. For example, on x86-64 system call number 4 is > write() if called via int $0x80 but stat() if called via syscall64. This is > a local property of the system call, not a global per process. I think, the documentation said that as soon as prctl() is used to set a bpf filter for system calls, it automatically disallows system calls using an entry point other than the one used by this particular prctl(). I was trying to come up with scenarios where this particular approach causes problem, but I can't think of any off the top of my head. So, it might actually turn out to be a very elegant way to reduce the attack surface of the kernel. If we are really worried about userspace compatibility, we could make the kernel send a signal instead of terminating the program, if the wrong entry point was used; not sure if that is needed, though. Markus -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html