On 2 July 2016 at 22:17, Laurent Vivier <laur...@vivier.eu> wrote: > Le 02/07/2016 à 22:12, Peter Maydell a écrit : >> (1) Define neither NR_select nor NR__newselect >> (and use pselect6 syscall for select): >> aarch64, openrisc, tilegx, unicore32, presumably any future arch > > They use: > > kernel/sys.c: > > #undef __SYSCALL > #define __SYSCALL(nr, call) [nr] = (call), > > void *sys_call_table[__NR_syscalls] = { > #include <asm/unistd.h> > }; > > It's not very clear, but I think they use NR_select with sys_select: > > include/uapi/asm-generic/unistd.h > > #define __ARCH_WANT_SYS_SELECT > __SYSCALL(__NR_select, sys_select)
This is inside an #ifdef __ARCH_WANT_SYSCALL_DEPRECATED. Only arch/score defines that; most architectures using the asm-generic syscall numbers don't want these obsolete syscalls to exist. >> For openrisc, sh and tilegx we incorrectly define >> a TARGET_NR_select which the kernel doesn't, so >> we should delete that from our headers. > > I think they really exist (from asm-generic/unistd.h) See above. thanks -- PMM