Cleanup after m_syscalls changes: fix some NPTL ish syscalls (x86)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3850 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_syscalls/priv_syscalls-generic.h b/coregrind/m_syscalls/priv_syscalls-generic.h
index e695cf4..9562dff 100644
--- a/coregrind/m_syscalls/priv_syscalls-generic.h
+++ b/coregrind/m_syscalls/priv_syscalls-generic.h
@@ -58,204 +58,202 @@
UInt mm_flags, Int fd, ULong offset );
-DECL_TEMPLATE(generic,sys_ni_syscall); // * P -- unimplemented
-DECL_TEMPLATE(generic,sys_exit);
-DECL_TEMPLATE(generic,sys_fork);
-DECL_TEMPLATE(generic,sys_read);
-DECL_TEMPLATE(generic,sys_write);
-DECL_TEMPLATE(generic,sys_open);
-DECL_TEMPLATE(generic,sys_close);
-DECL_TEMPLATE(generic,sys_waitpid);
-DECL_TEMPLATE(generic,sys_creat);
-DECL_TEMPLATE(generic,sys_link);
-DECL_TEMPLATE(generic,sys_unlink);
-DECL_TEMPLATE(generic,sys_execve); // (*??) P
-DECL_TEMPLATE(generic,sys_chdir);
-DECL_TEMPLATE(generic,sys_time);
-DECL_TEMPLATE(generic,sys_mknod);
-DECL_TEMPLATE(generic,sys_chmod);
-DECL_TEMPLATE(generic,sys_lseek);
-DECL_TEMPLATE(generic,sys_getpid);
-DECL_TEMPLATE(generic,sys_alarm);
-DECL_TEMPLATE(generic,sys_pause);
-DECL_TEMPLATE(generic,sys_utime);
-DECL_TEMPLATE(generic,sys_access);
-DECL_TEMPLATE(generic,sys_kill);
-DECL_TEMPLATE(generic,sys_rename);
-DECL_TEMPLATE(generic,sys_mkdir);
-DECL_TEMPLATE(generic,sys_rmdir);
-DECL_TEMPLATE(generic,sys_dup);
-DECL_TEMPLATE(generic,sys_times);
-DECL_TEMPLATE(generic,sys_fcntl); // POSIX (but complicated)
-DECL_TEMPLATE(generic,sys_setpgid);
-DECL_TEMPLATE(generic,sys_umask);
-DECL_TEMPLATE(generic,sys_dup2);
-DECL_TEMPLATE(generic,sys_getppid);
-DECL_TEMPLATE(generic,sys_getpgrp);
-DECL_TEMPLATE(generic,sys_setsid);
-DECL_TEMPLATE(generic,sys_munmap);
-DECL_TEMPLATE(generic,sys_truncate);
-DECL_TEMPLATE(generic,sys_ftruncate);
-DECL_TEMPLATE(generic,sys_fchmod);
-DECL_TEMPLATE(generic,sys_msync);
-DECL_TEMPLATE(generic,sys_readv);
-DECL_TEMPLATE(generic,sys_writev);
-DECL_TEMPLATE(generic,sys_getsid);
-DECL_TEMPLATE(generic,sys_fdatasync);
-DECL_TEMPLATE(generic,sys_mlock);
-DECL_TEMPLATE(generic,sys_munlock);
-DECL_TEMPLATE(generic,sys_mlockall);
-DECL_TEMPLATE(generic,sys_munlockall);
-DECL_TEMPLATE(generic,sys_sched_setparam);
-DECL_TEMPLATE(generic,sys_sched_getparam);
-DECL_TEMPLATE(generic,sys_sched_rr_get_interval);
-DECL_TEMPLATE(generic,sys_sched_setscheduler);
-DECL_TEMPLATE(generic,sys_sched_getscheduler);
-DECL_TEMPLATE(generic,sys_sched_yield);
-DECL_TEMPLATE(generic,sys_sched_get_priority_max);
-DECL_TEMPLATE(generic,sys_sched_get_priority_min);
-DECL_TEMPLATE(generic,sys_nanosleep);
-DECL_TEMPLATE(generic,sys_mremap); // POSIX, but Linux arg order may be odd
-DECL_TEMPLATE(generic,sys_getuid);
-DECL_TEMPLATE(generic,sys_getgid);
-DECL_TEMPLATE(generic,sys_geteuid);
-DECL_TEMPLATE(generic,sys_getegid);
-DECL_TEMPLATE(generic,sys_getpgid);
-DECL_TEMPLATE(generic,sys_fsync);
-DECL_TEMPLATE(generic,sys_wait4);
-DECL_TEMPLATE(generic,sys_mprotect);
-DECL_TEMPLATE(generic,sys_sigprocmask);
-DECL_TEMPLATE(generic,sys_timer_create); // Linux: varies across archs?
-DECL_TEMPLATE(generic,sys_timer_settime);
-DECL_TEMPLATE(generic,sys_timer_gettime);
-DECL_TEMPLATE(generic,sys_timer_getoverrun);
-DECL_TEMPLATE(generic,sys_timer_delete);
-DECL_TEMPLATE(generic,sys_clock_settime);
-DECL_TEMPLATE(generic,sys_clock_gettime);
-DECL_TEMPLATE(generic,sys_clock_getres);
-DECL_TEMPLATE(generic,sys_clock_nanosleep);
-DECL_TEMPLATE(generic,sys_getcwd);
-DECL_TEMPLATE(generic,sys_symlink);
-DECL_TEMPLATE(generic,sys_getgroups);
-DECL_TEMPLATE(generic,sys_setgroups); // SVr4, SVID, X/OPEN, 4.3BSD
-DECL_TEMPLATE(generic,sys_chown);
-DECL_TEMPLATE(generic,sys_setuid);
-DECL_TEMPLATE(generic,sys_gettimeofday);
-DECL_TEMPLATE(generic,sys_madvise);
-DECL_TEMPLATE(generic,sys_sigpending);
+DECL_TEMPLATE(generic, sys_ni_syscall); // * P -- unimplemented
+DECL_TEMPLATE(generic, sys_exit);
+DECL_TEMPLATE(generic, sys_fork);
+DECL_TEMPLATE(generic, sys_read);
+DECL_TEMPLATE(generic, sys_write);
+DECL_TEMPLATE(generic, sys_open);
+DECL_TEMPLATE(generic, sys_close);
+DECL_TEMPLATE(generic, sys_waitpid);
+DECL_TEMPLATE(generic, sys_creat);
+DECL_TEMPLATE(generic, sys_link);
+DECL_TEMPLATE(generic, sys_unlink);
+DECL_TEMPLATE(generic, sys_execve); // (*??) P
+DECL_TEMPLATE(generic, sys_chdir);
+DECL_TEMPLATE(generic, sys_time);
+DECL_TEMPLATE(generic, sys_mknod);
+DECL_TEMPLATE(generic, sys_chmod);
+DECL_TEMPLATE(generic, sys_lseek);
+DECL_TEMPLATE(generic, sys_getpid);
+DECL_TEMPLATE(generic, sys_alarm);
+DECL_TEMPLATE(generic, sys_pause);
+DECL_TEMPLATE(generic, sys_utime);
+DECL_TEMPLATE(generic, sys_access);
+DECL_TEMPLATE(generic, sys_kill);
+DECL_TEMPLATE(generic, sys_rename);
+DECL_TEMPLATE(generic, sys_mkdir);
+DECL_TEMPLATE(generic, sys_rmdir);
+DECL_TEMPLATE(generic, sys_dup);
+DECL_TEMPLATE(generic, sys_times);
+DECL_TEMPLATE(generic, sys_fcntl); // POSIX (but complicated)
+DECL_TEMPLATE(generic, sys_setpgid);
+DECL_TEMPLATE(generic, sys_umask);
+DECL_TEMPLATE(generic, sys_dup2);
+DECL_TEMPLATE(generic, sys_getppid);
+DECL_TEMPLATE(generic, sys_getpgrp);
+DECL_TEMPLATE(generic, sys_setsid);
+DECL_TEMPLATE(generic, sys_munmap);
+DECL_TEMPLATE(generic, sys_truncate);
+DECL_TEMPLATE(generic, sys_ftruncate);
+DECL_TEMPLATE(generic, sys_fchmod);
+DECL_TEMPLATE(generic, sys_msync);
+DECL_TEMPLATE(generic, sys_readv);
+DECL_TEMPLATE(generic, sys_writev);
+DECL_TEMPLATE(generic, sys_getsid);
+DECL_TEMPLATE(generic, sys_fdatasync);
+DECL_TEMPLATE(generic, sys_mlock);
+DECL_TEMPLATE(generic, sys_munlock);
+DECL_TEMPLATE(generic, sys_mlockall);
+DECL_TEMPLATE(generic, sys_munlockall);
+DECL_TEMPLATE(generic, sys_sched_setparam);
+DECL_TEMPLATE(generic, sys_sched_getparam);
+DECL_TEMPLATE(generic, sys_sched_rr_get_interval);
+DECL_TEMPLATE(generic, sys_sched_setscheduler);
+DECL_TEMPLATE(generic, sys_sched_getscheduler);
+DECL_TEMPLATE(generic, sys_sched_yield);
+DECL_TEMPLATE(generic, sys_sched_get_priority_max);
+DECL_TEMPLATE(generic, sys_sched_get_priority_min);
+DECL_TEMPLATE(generic, sys_nanosleep);
+DECL_TEMPLATE(generic, sys_mremap); // POSIX, but Linux arg order may be odd
+DECL_TEMPLATE(generic, sys_getuid);
+DECL_TEMPLATE(generic, sys_getgid);
+DECL_TEMPLATE(generic, sys_geteuid);
+DECL_TEMPLATE(generic, sys_getegid);
+DECL_TEMPLATE(generic, sys_getpgid);
+DECL_TEMPLATE(generic, sys_fsync);
+DECL_TEMPLATE(generic, sys_wait4);
+DECL_TEMPLATE(generic, sys_mprotect);
+DECL_TEMPLATE(generic, sys_sigprocmask);
+DECL_TEMPLATE(generic, sys_timer_create); // Linux: varies across archs?
+DECL_TEMPLATE(generic, sys_timer_settime);
+DECL_TEMPLATE(generic, sys_timer_gettime);
+DECL_TEMPLATE(generic, sys_timer_getoverrun);
+DECL_TEMPLATE(generic, sys_timer_delete);
+DECL_TEMPLATE(generic, sys_clock_settime);
+DECL_TEMPLATE(generic, sys_clock_gettime);
+DECL_TEMPLATE(generic, sys_clock_getres);
+DECL_TEMPLATE(generic, sys_clock_nanosleep);
+DECL_TEMPLATE(generic, sys_getcwd);
+DECL_TEMPLATE(generic, sys_symlink);
+DECL_TEMPLATE(generic, sys_getgroups);
+DECL_TEMPLATE(generic, sys_setgroups); // SVr4, SVID, X/OPEN, 4.3BSD
+DECL_TEMPLATE(generic, sys_chown);
+DECL_TEMPLATE(generic, sys_setuid);
+DECL_TEMPLATE(generic, sys_gettimeofday);
+DECL_TEMPLATE(generic, sys_madvise);
+DECL_TEMPLATE(generic, sys_sigpending);
// These ones aren't POSIX, but are in some standard and look reasonably
-// generic, and are the same for all architectures under Linux.
-DECL_TEMPLATE(generic,sys_nice); // SVr4, SVID EXT, AT&T, X/OPEN, BSD 4.3
-DECL_TEMPLATE(generic,sys_sync); // SVr4, SVID, X/OPEN, BSD 4.3
-DECL_TEMPLATE(generic,sys_brk); // 4.3BSD
-DECL_TEMPLATE(generic,sys_acct); // SVR4, non-POSIX
-DECL_TEMPLATE(generic,sys_chroot); // SVr4, SVID, 4.4BSD, X/OPEN
-DECL_TEMPLATE(generic,sys_readlink); // X/OPEN, 4.4BSD
-DECL_TEMPLATE(generic,sys_fchdir); // SVr4, SVID, POSIX, X/OPEN, 4.4BSD
-DECL_TEMPLATE(generic,sys_getdents); // SVr4,SVID
-DECL_TEMPLATE(generic,sys_select); // 4.4BSD
-DECL_TEMPLATE(generic,sys_flock); // 4.4BSD
-DECL_TEMPLATE(generic,sys_poll); // XPG4-UNIX
-DECL_TEMPLATE(generic,sys_getrusage); // SVr4, 4.3BSD
-DECL_TEMPLATE(generic,sys_stime); // SVr4, SVID, X/OPEN
-DECL_TEMPLATE(generic,sys_settimeofday); // SVr4, 4.3BSD (non-POSIX)
-DECL_TEMPLATE(generic,sys_getpriority); // SVr4, 4.4BSD
-DECL_TEMPLATE(generic,sys_setpriority); // SVr4, 4.4BSD
-DECL_TEMPLATE(generic,sys_setitimer); // SVr4, 4.4BSD
-DECL_TEMPLATE(generic,sys_getitimer); // SVr4, 4.4BSD
-DECL_TEMPLATE(generic,sys_setreuid); // 4.3BSD
-DECL_TEMPLATE(generic,sys_setregid); // 4.3BSD
-DECL_TEMPLATE(generic,sys_fchown); // SVr4,4.3BSD
-DECL_TEMPLATE(generic,sys_setgid); // SVr4,SVID
-DECL_TEMPLATE(generic,sys_utimes); // 4.3BSD
+// generic, and are the same for all architectures under Linux.
+DECL_TEMPLATE(generic, sys_nice); // SVr4, SVID EXT, AT&T, X/OPEN, BSD 4.3
+DECL_TEMPLATE(generic, sys_sync); // SVr4, SVID, X/OPEN, BSD 4.3
+DECL_TEMPLATE(generic, sys_brk); // 4.3BSD
+DECL_TEMPLATE(generic, sys_acct); // SVR4, non-POSIX
+DECL_TEMPLATE(generic, sys_chroot); // SVr4, SVID, 4.4BSD, X/OPEN
+DECL_TEMPLATE(generic, sys_readlink); // X/OPEN, 4.4BSD
+DECL_TEMPLATE(generic, sys_fchdir); // SVr4, SVID, POSIX, X/OPEN, 4.4BSD
+DECL_TEMPLATE(generic, sys_getdents); // SVr4,SVID
+DECL_TEMPLATE(generic, sys_select); // 4.4BSD
+DECL_TEMPLATE(generic, sys_flock); // 4.4BSD
+DECL_TEMPLATE(generic, sys_poll); // XPG4-UNIX
+DECL_TEMPLATE(generic, sys_getrusage); // SVr4, 4.3BSD
+DECL_TEMPLATE(generic, sys_stime); // SVr4, SVID, X/OPEN
+DECL_TEMPLATE(generic, sys_settimeofday); // SVr4, 4.3BSD (non-POSIX)
+DECL_TEMPLATE(generic, sys_getpriority); // SVr4, 4.4BSD
+DECL_TEMPLATE(generic, sys_setpriority); // SVr4, 4.4BSD
+DECL_TEMPLATE(generic, sys_setitimer); // SVr4, 4.4BSD
+DECL_TEMPLATE(generic, sys_getitimer); // SVr4, 4.4BSD
+DECL_TEMPLATE(generic, sys_setreuid); // 4.3BSD
+DECL_TEMPLATE(generic, sys_setregid); // 4.3BSD
+DECL_TEMPLATE(generic, sys_fchown); // SVr4,4.3BSD
+DECL_TEMPLATE(generic, sys_setgid); // SVr4,SVID
+DECL_TEMPLATE(generic, sys_utimes); // 4.3BSD
// These ones may be Linux specific... not sure. They use 16-bit gid_t and
// uid_t types. The similarly named (minus the "16" suffix) ones below use
// 32-bit versions of these types.
-DECL_TEMPLATE(generic,sys_setuid16); // ## P
-DECL_TEMPLATE(generic,sys_getuid16); // ## P
-DECL_TEMPLATE(generic,sys_setgid16); // ## SVr4,SVID
-DECL_TEMPLATE(generic,sys_getgid16); // ## P
-DECL_TEMPLATE(generic,sys_geteuid16); // ## P
-DECL_TEMPLATE(generic,sys_getegid16); // ## P
-DECL_TEMPLATE(generic,sys_setreuid16); // ## BSD4.3
-DECL_TEMPLATE(generic,sys_setregid16); // ## BSD4.3
-DECL_TEMPLATE(generic,sys_getgroups16); // ## P
-DECL_TEMPLATE(generic,sys_setgroups16); // ## SVr4, SVID, X/OPEN, 4.3BSD
-DECL_TEMPLATE(generic,sys_fchown16); // ## SVr4,BSD4.3
-DECL_TEMPLATE(generic,sys_chown16); // ## P
+DECL_TEMPLATE(generic, sys_setuid16); // ## P
+DECL_TEMPLATE(generic, sys_getuid16); // ## P
+DECL_TEMPLATE(generic, sys_setgid16); // ## SVr4,SVID
+DECL_TEMPLATE(generic, sys_getgid16); // ## P
+DECL_TEMPLATE(generic, sys_geteuid16); // ## P
+DECL_TEMPLATE(generic, sys_getegid16); // ## P
+DECL_TEMPLATE(generic, sys_setreuid16); // ## BSD4.3
+DECL_TEMPLATE(generic, sys_setregid16); // ## BSD4.3
+DECL_TEMPLATE(generic, sys_getgroups16); // ## P
+DECL_TEMPLATE(generic, sys_setgroups16); // ## SVr4, SVID, X/OPEN, 4.3BSD
+DECL_TEMPLATE(generic, sys_fchown16); // ## SVr4,BSD4.3
+DECL_TEMPLATE(generic, sys_chown16); // ## P
// Some archs on Linux do not match the generic wrapper for sys_pipe().
-DECL_TEMPLATE(generic,sys_pipe);
+DECL_TEMPLATE(generic, sys_pipe);
// May not be generic for every architecture under Linux.
-DECL_TEMPLATE(generic,sys_sigaction); // (x86) P
+DECL_TEMPLATE(generic, sys_sigaction); // (x86) P
// Funny names, not sure...
-DECL_TEMPLATE(generic,sys_newstat); // * P
-DECL_TEMPLATE(generic,sys_newlstat); // *
-DECL_TEMPLATE(generic,sys_newfstat); // * P (SVr4,BSD4.3)
+DECL_TEMPLATE(generic, sys_newstat); // * P
+DECL_TEMPLATE(generic, sys_newlstat); // *
+DECL_TEMPLATE(generic, sys_newfstat); // * P (SVr4,BSD4.3)
// For the remainder, not really sure yet
-DECL_TEMPLATE(generic,sys_ptrace); // (x86?) (almost-P)
-DECL_TEMPLATE(generic,sys_sigsuspend); // POSIX, but L (proto varies across archs)
-DECL_TEMPLATE(generic,sys_setrlimit); // SVr4, 4.3BSD
-DECL_TEMPLATE(generic,sys_ioctl); // x86? (various)
-DECL_TEMPLATE(generic,sys_old_getrlimit); // SVr4, 4.3BSD L?
-DECL_TEMPLATE(generic,sys_statfs); // * L?
-DECL_TEMPLATE(generic,sys_fstatfs); // * L?
-DECL_TEMPLATE(generic,sys_iopl); // (x86/amd64) L
-DECL_TEMPLATE(generic,sys_ipc); // (x86) L
-DECL_TEMPLATE(generic,sys_newuname); // * P
-DECL_TEMPLATE(generic,sys_init_module); // * L?
-DECL_TEMPLATE(generic,sys_quotactl); // * (?)
-DECL_TEMPLATE(generic,sys_rt_sigaction); // (x86) ()
-DECL_TEMPLATE(generic,sys_rt_sigprocmask); // * ?
-DECL_TEMPLATE(generic,sys_rt_sigpending); // * ?
-DECL_TEMPLATE(generic,sys_rt_sigtimedwait); // * ?
-DECL_TEMPLATE(generic,sys_rt_sigqueueinfo); // * ?
-DECL_TEMPLATE(generic,sys_rt_sigsuspend); // () ()
-DECL_TEMPLATE(generic,sys_pread64); // * (Unix98?)
-DECL_TEMPLATE(generic,sys_pwrite64); // * (Unix98?)
-DECL_TEMPLATE(generic,sys_capget); // * L?
-DECL_TEMPLATE(generic,sys_capset); // * L?
-DECL_TEMPLATE(generic,sys_sigaltstack); // (x86) (XPG4-UNIX)
-DECL_TEMPLATE(generic,sys_getpmsg); // (?) (?)
-DECL_TEMPLATE(generic,sys_putpmsg); // (?) (?)
-DECL_TEMPLATE(generic,sys_getrlimit); // * (?)
-DECL_TEMPLATE(generic,sys_mmap2); // (x86?) P?
-DECL_TEMPLATE(generic,sys_truncate64); // %% (P?)
-DECL_TEMPLATE(generic,sys_ftruncate64); // %% (P?)
-DECL_TEMPLATE(generic,sys_lchown); // * (L?)
-DECL_TEMPLATE(generic,sys_mincore); // * L?
-DECL_TEMPLATE(generic,sys_getdents64); // * (SVr4,SVID?)
-DECL_TEMPLATE(generic,sys_fcntl64); // * P?
-DECL_TEMPLATE(generic,sys_setxattr); // * L?
-DECL_TEMPLATE(generic,sys_lsetxattr); // * L?
-DECL_TEMPLATE(generic,sys_fsetxattr); // * L?
-DECL_TEMPLATE(generic,sys_getxattr); // * L?
-DECL_TEMPLATE(generic,sys_lgetxattr); // * L?
-DECL_TEMPLATE(generic,sys_fgetxattr); // * L?
-DECL_TEMPLATE(generic,sys_listxattr); // * L?
-DECL_TEMPLATE(generic,sys_llistxattr); // * L?
-DECL_TEMPLATE(generic,sys_flistxattr); // * L?
-DECL_TEMPLATE(generic,sys_removexattr); // * L?
-DECL_TEMPLATE(generic,sys_lremovexattr); // * L?
-DECL_TEMPLATE(generic,sys_fremovexattr); // * L?
-DECL_TEMPLATE(generic,sys_sched_setaffinity); // * L?
-DECL_TEMPLATE(generic,sys_sched_getaffinity); // * L?
-DECL_TEMPLATE(generic,sys_lookup_dcookie); // (*/32/64) L
-DECL_TEMPLATE(generic,sys_set_tid_address); // * ?
-DECL_TEMPLATE(generic,sys_statfs64); // * (?)
-DECL_TEMPLATE(generic,sys_fstatfs64); // * (?)
-DECL_TEMPLATE(generic,sys_mq_open); // * P?
-DECL_TEMPLATE(generic,sys_mq_unlink); // * P?
-DECL_TEMPLATE(generic,sys_mq_timedsend); // * P?
-DECL_TEMPLATE(generic,sys_mq_timedreceive); // * P?
-DECL_TEMPLATE(generic,sys_mq_notify); // * P?
-DECL_TEMPLATE(generic,sys_mq_getsetattr); // * P?
-
+DECL_TEMPLATE(generic, sys_ptrace); // (x86?) (almost-P)
+DECL_TEMPLATE(generic, sys_sigsuspend); // POSIX, but L (proto varies across archs)
+DECL_TEMPLATE(generic, sys_setrlimit); // SVr4, 4.3BSD
+DECL_TEMPLATE(generic, sys_ioctl); // x86? (various)
+DECL_TEMPLATE(generic, sys_old_getrlimit); // SVr4, 4.3BSD L?
+DECL_TEMPLATE(generic, sys_statfs); // * L?
+DECL_TEMPLATE(generic, sys_fstatfs); // * L?
+DECL_TEMPLATE(generic, sys_iopl); // (x86/amd64) L
+DECL_TEMPLATE(generic, sys_ipc); // (x86) L
+DECL_TEMPLATE(generic, sys_newuname); // * P
+DECL_TEMPLATE(generic, sys_init_module); // * L?
+DECL_TEMPLATE(generic, sys_quotactl); // * (?)
+DECL_TEMPLATE(generic, sys_rt_sigaction); // (x86) ()
+DECL_TEMPLATE(generic, sys_rt_sigprocmask); // * ?
+DECL_TEMPLATE(generic, sys_rt_sigpending); // * ?
+DECL_TEMPLATE(generic, sys_rt_sigtimedwait); // * ?
+DECL_TEMPLATE(generic, sys_rt_sigqueueinfo); // * ?
+DECL_TEMPLATE(generic, sys_rt_sigsuspend); // () ()
+DECL_TEMPLATE(generic, sys_pread64); // * (Unix98?)
+DECL_TEMPLATE(generic, sys_pwrite64); // * (Unix98?)
+DECL_TEMPLATE(generic, sys_capget); // * L?
+DECL_TEMPLATE(generic, sys_capset); // * L?
+DECL_TEMPLATE(generic, sys_sigaltstack); // (x86) (XPG4-UNIX)
+DECL_TEMPLATE(generic, sys_getpmsg); // (?) (?)
+DECL_TEMPLATE(generic, sys_putpmsg); // (?) (?)
+DECL_TEMPLATE(generic, sys_getrlimit); // * (?)
+DECL_TEMPLATE(generic, sys_mmap2); // (x86?) P?
+DECL_TEMPLATE(generic, sys_truncate64); // %% (P?)
+DECL_TEMPLATE(generic, sys_ftruncate64); // %% (P?)
+DECL_TEMPLATE(generic, sys_lchown); // * (L?)
+DECL_TEMPLATE(generic, sys_mincore); // * L?
+DECL_TEMPLATE(generic, sys_getdents64); // * (SVr4,SVID?)
+DECL_TEMPLATE(generic, sys_fcntl64); // * P?
+DECL_TEMPLATE(generic, sys_setxattr); // * L?
+DECL_TEMPLATE(generic, sys_lsetxattr); // * L?
+DECL_TEMPLATE(generic, sys_fsetxattr); // * L?
+DECL_TEMPLATE(generic, sys_getxattr); // * L?
+DECL_TEMPLATE(generic, sys_lgetxattr); // * L?
+DECL_TEMPLATE(generic, sys_fgetxattr); // * L?
+DECL_TEMPLATE(generic, sys_listxattr); // * L?
+DECL_TEMPLATE(generic, sys_llistxattr); // * L?
+DECL_TEMPLATE(generic, sys_flistxattr); // * L?
+DECL_TEMPLATE(generic, sys_removexattr); // * L?
+DECL_TEMPLATE(generic, sys_lremovexattr); // * L?
+DECL_TEMPLATE(generic, sys_fremovexattr); // * L?
+DECL_TEMPLATE(generic, sys_sched_setaffinity); // * L?
+DECL_TEMPLATE(generic, sys_sched_getaffinity); // * L?
+DECL_TEMPLATE(generic, sys_lookup_dcookie); // (*/32/64) L
+DECL_TEMPLATE(generic, sys_statfs64); // * (?)
+DECL_TEMPLATE(generic, sys_fstatfs64); // * (?)
+DECL_TEMPLATE(generic, sys_mq_open); // * P?
+DECL_TEMPLATE(generic, sys_mq_unlink); // * P?
+DECL_TEMPLATE(generic, sys_mq_timedsend); // * P?
+DECL_TEMPLATE(generic, sys_mq_timedreceive); // * P?
+DECL_TEMPLATE(generic, sys_mq_notify); // * P?
+DECL_TEMPLATE(generic, sys_mq_getsetattr); // * P?
/* ---------------------------------------------------------------------
diff --git a/coregrind/m_syscalls/priv_syscalls-linux.h b/coregrind/m_syscalls/priv_syscalls-linux.h
index 7747196..dc65d91 100644
--- a/coregrind/m_syscalls/priv_syscalls-linux.h
+++ b/coregrind/m_syscalls/priv_syscalls-linux.h
@@ -33,58 +33,58 @@
/* requires #include "priv_types_n_macros.h" */
+DECL_TEMPLATE(linux, sys_exit_group);
-DECL_TEMPLATE(linux,sys_exit_group);
+DECL_TEMPLATE(linux, sys_mount);
+DECL_TEMPLATE(linux, sys_oldumount);
+DECL_TEMPLATE(linux, sys_umount);
-DECL_TEMPLATE(linux,sys_mount);
-DECL_TEMPLATE(linux,sys_oldumount);
-DECL_TEMPLATE(linux,sys_umount);
+DECL_TEMPLATE(linux, sys_llseek);
+DECL_TEMPLATE(linux, sys_adjtimex);
-DECL_TEMPLATE(linux,sys_llseek);
-DECL_TEMPLATE(linux,sys_adjtimex);
+DECL_TEMPLATE(linux, sys_setfsuid16);
+DECL_TEMPLATE(linux, sys_setfsgid16);
+DECL_TEMPLATE(linux, sys_setresuid16); // man page says "non-standard";
+DECL_TEMPLATE(linux, sys_getresuid16);
+DECL_TEMPLATE(linux, sys_setresgid16); // man page says "non-standard"
+DECL_TEMPLATE(linux, sys_getresgid16);
-DECL_TEMPLATE(linux,sys_setfsuid16);
-DECL_TEMPLATE(linux,sys_setfsgid16);
-DECL_TEMPLATE(linux,sys_setresuid16); // man page says "non-standard";
-DECL_TEMPLATE(linux,sys_getresuid16);
-DECL_TEMPLATE(linux,sys_setresgid16); // man page says "non-standard"
-DECL_TEMPLATE(linux,sys_getresgid16);
+DECL_TEMPLATE(linux, sys_setfsuid);
+DECL_TEMPLATE(linux, sys_setfsgid);
+DECL_TEMPLATE(linux, sys_setresuid); // man page says "non-standard"
+DECL_TEMPLATE(linux, sys_getresuid);
+DECL_TEMPLATE(linux, sys_setresgid); // man page says "non-standard"
+DECL_TEMPLATE(linux, sys_getresgid);
-DECL_TEMPLATE(linux,sys_setfsuid);
-DECL_TEMPLATE(linux,sys_setfsgid);
-DECL_TEMPLATE(linux,sys_setresuid); // man page says "non-standard"
-DECL_TEMPLATE(linux,sys_getresuid);
-DECL_TEMPLATE(linux,sys_setresgid); // man page says "non-standard"
-DECL_TEMPLATE(linux,sys_getresgid);
+DECL_TEMPLATE(linux, sys_ioperm);
+DECL_TEMPLATE(linux, sys_syslog);
+DECL_TEMPLATE(linux, sys_vhangup);
+DECL_TEMPLATE(linux, sys_sysinfo);
+DECL_TEMPLATE(linux, sys_personality);
+DECL_TEMPLATE(linux, sys_sysctl);
+DECL_TEMPLATE(linux, sys_prctl);
-DECL_TEMPLATE(linux,sys_ioperm);
-DECL_TEMPLATE(linux,sys_syslog);
-DECL_TEMPLATE(linux,sys_vhangup);
-DECL_TEMPLATE(linux,sys_sysinfo);
-DECL_TEMPLATE(linux,sys_personality);
-DECL_TEMPLATE(linux,sys_sysctl);
-DECL_TEMPLATE(linux,sys_prctl);
+DECL_TEMPLATE(linux, sys_sendfile);
+DECL_TEMPLATE(linux, sys_sendfile64);
+DECL_TEMPLATE(linux, sys_futex);
-DECL_TEMPLATE(linux,sys_sendfile);
-DECL_TEMPLATE(linux,sys_sendfile64);
-DECL_TEMPLATE(linux,sys_futex);
+DECL_TEMPLATE(linux, sys_epoll_create);
+DECL_TEMPLATE(linux, sys_epoll_ctl);
+DECL_TEMPLATE(linux, sys_epoll_wait);
-DECL_TEMPLATE(linux,sys_epoll_create);
-DECL_TEMPLATE(linux,sys_epoll_ctl);
-DECL_TEMPLATE(linux,sys_epoll_wait);
+DECL_TEMPLATE(linux, sys_gettid);
+DECL_TEMPLATE(linux, sys_set_tid_address);
+DECL_TEMPLATE(linux, sys_tkill);
+DECL_TEMPLATE(linux, sys_tgkill);
-DECL_TEMPLATE(linux,sys_gettid);
-DECL_TEMPLATE(linux,sys_tkill);
-DECL_TEMPLATE(linux,sys_tgkill);
+DECL_TEMPLATE(linux, sys_fadvise64);
+DECL_TEMPLATE(linux, sys_fadvise64_64);
-DECL_TEMPLATE(linux,sys_fadvise64);
-DECL_TEMPLATE(linux,sys_fadvise64_64);
-
-DECL_TEMPLATE(linux,sys_io_setup);
-DECL_TEMPLATE(linux,sys_io_destroy);
-DECL_TEMPLATE(linux,sys_io_getevents);
-DECL_TEMPLATE(linux,sys_io_submit);
-DECL_TEMPLATE(linux,sys_io_cancel);
+DECL_TEMPLATE(linux, sys_io_setup);
+DECL_TEMPLATE(linux, sys_io_destroy);
+DECL_TEMPLATE(linux, sys_io_getevents);
+DECL_TEMPLATE(linux, sys_io_submit);
+DECL_TEMPLATE(linux, sys_io_cancel);
#endif // __PRIV_SYSCALLS_LINUX_H
diff --git a/coregrind/m_syscalls/syscalls-generic.c b/coregrind/m_syscalls/syscalls-generic.c
index e473ed9..910c4c2 100644
--- a/coregrind/m_syscalls/syscalls-generic.c
+++ b/coregrind/m_syscalls/syscalls-generic.c
@@ -1683,12 +1683,6 @@
SET_STATUS_Failure( VKI_ENOSYS );
}
-//zz PRE(sys_set_tid_address, 0)
-//zz {
-//zz PRINT("sys_set_tid_address ( %p )", ARG1);
-//zz PRE_REG_READ1(long, "set_tid_address", int *, tidptr);
-//zz }
-//zz
//zz PRE(sys_iopl, 0)
//zz {
//zz PRINT("sys_iopl ( %d )", ARG1);
diff --git a/coregrind/m_syscalls/syscalls-linux.c b/coregrind/m_syscalls/syscalls-linux.c
index c8f3bfc..5018d82 100644
--- a/coregrind/m_syscalls/syscalls-linux.c
+++ b/coregrind/m_syscalls/syscalls-linux.c
@@ -30,16 +30,18 @@
#include "core.h"
#include "pub_core_aspacemgr.h"
+#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcfile.h"
#include "pub_core_libcprint.h"
#include "pub_core_tooliface.h"
#include "pub_core_options.h"
+#include "pub_core_signals.h"
#include "priv_types_n_macros.h"
+#include "priv_syscalls-generic.h"
#include "priv_syscalls-linux.h"
-
/* ---------------------------------------------------------------------
PRE/POST wrappers for arch-generic, Linux-specific syscalls
------------------------------------------------------------------ */
@@ -50,6 +52,12 @@
#define PRE(name) DEFN_PRE_TEMPLATE(linux, name)
#define POST(name) DEFN_POST_TEMPLATE(linux, name)
+PRE(sys_set_tid_address)
+{
+ PRINT("sys_set_tid_address ( %p )", ARG1);
+ PRE_REG_READ1(long, "set_tid_address", int *, tidptr);
+}
+
PRE(sys_exit_group)
{
ThreadId t;
@@ -416,62 +424,65 @@
//zz POST_MEM_WRITE( ARG3, sizeof(vki_loff_t) );
//zz }
//zz }
-//zz
-//zz PRE(sys_futex, MayBlock)
-//zz {
-//zz /*
-//zz arg param used by ops
-//zz
-//zz ARG1 - u32 *futex all
-//zz ARG2 - int op
-//zz ARG3 - int val WAIT,WAKE,FD,REQUEUE,CMP_REQUEUE
-//zz ARG4 - struct timespec *utime WAIT:time* REQUEUE,CMP_REQUEUE:val2
-//zz ARG5 - u32 *uaddr2 REQUEUE,CMP_REQUEUE
-//zz ARG6 - int val3 CMP_REQUEUE
-//zz */
-//zz PRINT("sys_futex ( %p, %d, %d, %p, %p )", ARG1,ARG2,ARG3,ARG4,ARG5);
-//zz PRE_REG_READ6(long, "futex",
-//zz vki_u32 *, futex, int, op, int, val,
-//zz struct timespec *, utime, vki_u32 *, uaddr2, int, val3);
-//zz
-//zz PRE_MEM_READ( "futex(futex)", ARG1, sizeof(Int) );
-//zz
-//zz switch(ARG2) {
-//zz case VKI_FUTEX_WAIT:
-//zz if (ARG4 != 0)
-//zz PRE_MEM_READ( "futex(timeout)", ARG4, sizeof(struct vki_timespec) );
-//zz break;
-//zz
-//zz case VKI_FUTEX_REQUEUE:
-//zz case VKI_FUTEX_CMP_REQUEUE:
-//zz PRE_MEM_READ( "futex(futex2)", ARG5, sizeof(Int) );
-//zz break;
-//zz
-//zz case VKI_FUTEX_WAKE:
-//zz case VKI_FUTEX_FD:
-//zz /* no additional pointers */
-//zz break;
-//zz
-//zz default:
-//zz SET_RESULT(-VKI_ENOSYS); // some futex function we don't understand
-//zz break;
-//zz }
-//zz }
-//zz
-//zz POST(sys_futex)
-//zz {
-//zz POST_MEM_WRITE( ARG1, sizeof(int) );
-//zz if (ARG2 == VKI_FUTEX_FD) {
-//zz if (!VG_(fd_allowed)(RES, "futex", tid, True)) {
-//zz VG_(close)(RES);
-//zz SET_RESULT( -VKI_EMFILE );
-//zz } else {
-//zz if (VG_(clo_track_fds))
-//zz VG_(record_fd_open)(tid, RES, VG_(arena_strdup)(VG_AR_CORE, (Char*)ARG1));
-//zz }
-//zz }
-//zz }
-//zz
+
+PRE(sys_futex)
+{
+ /*
+ arg param used by ops
+
+ ARG1 - u32 *futex all
+ ARG2 - int op
+ ARG3 - int val WAIT,WAKE,FD,REQUEUE,CMP_REQUEUE
+ ARG4 - struct timespec *utime WAIT:time* REQUEUE,CMP_REQUEUE:val2
+ ARG5 - u32 *uaddr2 REQUEUE,CMP_REQUEUE
+ ARG6 - int val3 CMP_REQUEUE
+ */
+ PRINT("sys_futex ( %p, %d, %d, %p, %p )", ARG1,ARG2,ARG3,ARG4,ARG5);
+ PRE_REG_READ6(long, "futex",
+ vki_u32 *, futex, int, op, int, val,
+ struct timespec *, utime, vki_u32 *, uaddr2, int, val3);
+
+ PRE_MEM_READ( "futex(futex)", ARG1, sizeof(Int) );
+
+ *flags |= SfMayBlock;
+
+ switch(ARG2) {
+ case VKI_FUTEX_WAIT:
+ if (ARG4 != 0)
+ PRE_MEM_READ( "futex(timeout)", ARG4, sizeof(struct vki_timespec) );
+ break;
+
+ case VKI_FUTEX_REQUEUE:
+ case VKI_FUTEX_CMP_REQUEUE:
+ PRE_MEM_READ( "futex(futex2)", ARG5, sizeof(Int) );
+ break;
+
+ case VKI_FUTEX_WAKE:
+ case VKI_FUTEX_FD:
+ /* no additional pointers */
+ break;
+
+ default:
+ SET_STATUS_Failure( VKI_ENOSYS ); // some futex function we don't understand
+ break;
+ }
+}
+
+POST(sys_futex)
+{
+ vg_assert(SUCCESS);
+ POST_MEM_WRITE( ARG1, sizeof(int) );
+ if (ARG2 == VKI_FUTEX_FD) {
+ if (!VG_(fd_allowed)(RES, "futex", tid, True)) {
+ VG_(close)(RES);
+ SET_STATUS_Failure( VKI_EMFILE );
+ } else {
+ if (VG_(clo_track_fds))
+ VG_(record_fd_open)(tid, RES, VG_(arena_strdup)(VG_AR_CORE, (Char*)ARG1));
+ }
+ }
+}
+
//zz PRE(sys_epoll_create, 0)
//zz {
//zz PRINT("sys_epoll_create ( %d )", ARG1);
@@ -482,7 +493,7 @@
//zz {
//zz if (!VG_(fd_allowed)(RES, "epoll_create", tid, True)) {
//zz VG_(close)(RES);
-//zz SET_RESULT( -VKI_EMFILE );
+//zz SET_STATUS_( -VKI_EMFILE );
//zz } else {
//zz if (VG_(clo_track_fds))
//zz VG_(record_fd_open) (tid, RES, NULL);
@@ -530,16 +541,16 @@
//zz PRINT("sys_tkill ( %d, %d )", ARG1,ARG2);
//zz PRE_REG_READ2(long, "tkill", int, tid, int, sig);
//zz if (!VG_(client_signal_OK)(ARG2)) {
-//zz SET_RESULT( -VKI_EINVAL );
+//zz SET_STATUS_( -VKI_EINVAL );
//zz return;
//zz }
//zz
//zz /* If we're sending SIGKILL, check to see if the target is one of
//zz our threads and handle it specially. */
//zz if (ARG2 == VKI_SIGKILL && VG_(do_sigkill)(ARG1, -1))
-//zz SET_RESULT(0);
+//zz SET_STATUS_(0);
//zz else
-//zz SET_RESULT(VG_(do_syscall2)(SYSNO, ARG1, ARG2));
+//zz SET_STATUS_(VG_(do_syscall2)(SYSNO, ARG1, ARG2));
//zz
//zz if (VG_(clo_trace_signals))
//zz VG_(message)(Vg_DebugMsg, "tkill: sent signal %d to pid %d",
@@ -547,40 +558,38 @@
//zz // Check to see if this kill gave us a pending signal
//zz XXX FIXME VG_(poll_signals)(tid);
//zz }
-//zz
-//zz PRE(sys_tgkill, Special)
-//zz {
-//zz /* int tgkill(pid_t tgid, pid_t tid, int sig); */
-//zz PRINT("sys_tgkill ( %d, %d, %d )", ARG1,ARG2,ARG3);
-//zz PRE_REG_READ3(long, "tgkill", int, tgid, int, tid, int, sig);
-//zz if (!VG_(client_signal_OK)(ARG3)) {
-//zz SET_RESULT( -VKI_EINVAL );
-//zz return;
-//zz }
-//zz
-//zz /* If we're sending SIGKILL, check to see if the target is one of
-//zz our threads and handle it specially. */
-//zz if (ARG3 == VKI_SIGKILL && VG_(do_sigkill)(ARG2, ARG1))
-//zz SET_RESULT(0);
-//zz else
-//zz SET_RESULT(VG_(do_syscall3)(SYSNO, ARG1, ARG2, ARG3));
-//zz
-//zz if (VG_(clo_trace_signals))
-//zz VG_(message)(Vg_DebugMsg, "tgkill: sent signal %d to pid %d/%d",
-//zz ARG3, ARG1, ARG2);
-//zz // Check to see if this kill gave us a pending signal
-//zz XXX FIXME VG_(poll_signals)(tid);
-//zz }
-//zz
-//zz POST(sys_tgkill)
-//zz {
-//zz if (VG_(clo_trace_signals))
-//zz VG_(message)(Vg_DebugMsg, "tgkill: sent signal %d to pid %d/%d",
-//zz ARG3, ARG1, ARG2);
-//zz // Check to see if this kill gave us a pending signal
-//zz XXX FIXME VG_(poll_signals)(tid);
-//zz }
-//zz
+
+PRE(sys_tgkill)
+{
+ /* int tgkill(pid_t tgid, pid_t tid, int sig); */
+ PRINT("sys_tgkill ( %d, %d, %d )", ARG1,ARG2,ARG3);
+ PRE_REG_READ3(long, "tgkill", int, tgid, int, tid, int, sig);
+ if (!VG_(client_signal_OK)(ARG3)) {
+ SET_STATUS_Failure( VKI_EINVAL );
+ return;
+ }
+
+ /* If we're sending SIGKILL, check to see if the target is one of
+ our threads and handle it specially. */
+ if (ARG3 == VKI_SIGKILL && VG_(do_sigkill)(ARG2, ARG1))
+ SET_STATUS_Success(0);
+ else
+ SET_STATUS_from_SysRes(VG_(do_syscall3)(SYSNO, ARG1, ARG2, ARG3));
+
+ if (VG_(clo_trace_signals))
+ VG_(message)(Vg_DebugMsg, "tgkill: sent signal %d to pid %d/%d",
+ ARG3, ARG1, ARG2);
+ /* Check to see if this kill gave us a pending signal */
+ *flags |= SfPollAfter;
+}
+
+POST(sys_tgkill)
+{
+ if (VG_(clo_trace_signals))
+ VG_(message)(Vg_DebugMsg, "tgkill: sent signal %d to pid %d/%d",
+ ARG3, ARG1, ARG2);
+}
+
//zz PRE(sys_fadvise64, 0)
//zz {
//zz PRINT("sys_fadvise64 ( %d, %lld, %lu, %d )", ARG1,ARG2,ARG3);
@@ -613,14 +622,14 @@
//zz addr = VG_(find_map_space)(0, size, True);
//zz
//zz if (addr == 0) {
-//zz SET_RESULT( -VKI_ENOMEM );
+//zz SET_STATUS_( -VKI_ENOMEM );
//zz return;
//zz }
//zz
//zz VG_(map_segment)(addr, size, VKI_PROT_READ|VKI_PROT_WRITE, SF_FIXED);
//zz
//zz VG_(pad_address_space)(0);
-//zz SET_RESULT( VG_(do_syscall2)(SYSNO, ARG1, ARG2) );
+//zz SET_STATUS_( VG_(do_syscall2)(SYSNO, ARG1, ARG2) );
//zz VG_(unpad_address_space)(0);
//zz
//zz if (RES == 0) {
@@ -660,7 +669,7 @@
//zz size = VG_PGROUNDUP(sizeof(struct vki_aio_ring) +
//zz r->nr*sizeof(struct vki_io_event));
//zz
-//zz SET_RESULT( VG_(do_syscall1)(SYSNO, ARG1) );
+//zz SET_STATUS_( VG_(do_syscall1)(SYSNO, ARG1) );
//zz
//zz if (RES == 0 && s != NULL) {
//zz VG_TRACK( die_mem_munmap, ARG1, size );
diff --git a/coregrind/m_syscalls/syscalls-x86-linux.c b/coregrind/m_syscalls/syscalls-x86-linux.c
index 74f9bb1..fd7fd3b 100644
--- a/coregrind/m_syscalls/syscalls-x86-linux.c
+++ b/coregrind/m_syscalls/syscalls-x86-linux.c
@@ -949,6 +949,7 @@
DECL_TEMPLATE(x86_linux, sys_ipc);
DECL_TEMPLATE(x86_linux, sys_rt_sigreturn);
DECL_TEMPLATE(x86_linux, sys_modify_ldt);
+DECL_TEMPLATE(x86_linux, sys_set_thread_area);
//zz PRE(old_select, MayBlock)
//zz {
@@ -1192,16 +1193,16 @@
}
}
-//zz PRE(sys_set_thread_area, Special)
-//zz {
-//zz PRINT("sys_set_thread_area ( %p )", ARG1);
-//zz PRE_REG_READ1(int, "set_thread_area", struct user_desc *, u_info)
-//zz PRE_MEM_READ( "set_thread_area(u_info)", ARG1, sizeof(vki_modify_ldt_t) );
-//zz
-//zz /* "do" the syscall ourselves; the kernel never sees it */
-//zz SET_STATUS_( sys_set_thread_area( tid, (void *)ARG1 ) );
-//zz }
-//zz
+PRE(sys_set_thread_area)
+{
+ PRINT("sys_set_thread_area ( %p )", ARG1);
+ PRE_REG_READ1(int, "set_thread_area", struct user_desc *, u_info)
+ PRE_MEM_READ( "set_thread_area(u_info)", ARG1, sizeof(vki_modify_ldt_t) );
+
+ /* "do" the syscall ourselves; the kernel never sees it */
+ SET_STATUS_from_SysRes( sys_set_thread_area( tid, (void *)ARG1 ) );
+}
+
//zz PRE(sys_get_thread_area, Special)
//zz {
//zz PRINT("sys_get_thread_area ( %p )", ARG1);
@@ -2204,10 +2205,10 @@
//zz LINX_(__NR_tkill, sys_tkill), // 238 */Linux
//zz LINXY(__NR_sendfile64, sys_sendfile64), // 239
//zz
-//zz LINXY(__NR_futex, sys_futex), // 240
+ LINXY(__NR_futex, sys_futex), // 240
//zz GENX_(__NR_sched_setaffinity, sys_sched_setaffinity), // 241
//zz GENXY(__NR_sched_getaffinity, sys_sched_getaffinity), // 242
-//zz PLAX_(__NR_set_thread_area, sys_set_thread_area), // 243
+ PLAX_(__NR_set_thread_area, sys_set_thread_area), // 243
//zz PLAX_(__NR_get_thread_area, sys_get_thread_area), // 244
//zz
//zz LINX_(__NR_io_setup, sys_io_setup), // 245
@@ -2225,7 +2226,7 @@
//zz LINX_(__NR_epoll_ctl, sys_epoll_ctl), // 255
//zz LINXY(__NR_epoll_wait, sys_epoll_wait), // 256
//zz // (__NR_remap_file_pages, sys_remap_file_pages), // 257 */Linux
-//zz GENX_(__NR_set_tid_address, sys_set_tid_address), // 258
+ LINX_(__NR_set_tid_address, sys_set_tid_address), // 258
//zz GENXY(__NR_timer_create, sys_timer_create), // 259
//zz
//zz GENXY(__NR_timer_settime, sys_timer_settime), // (timer_create+1)
@@ -2240,7 +2241,7 @@
//zz GENXY(__NR_statfs64, sys_statfs64), // 268
//zz GENXY(__NR_fstatfs64, sys_fstatfs64), // 269
//zz
-//zz LINX_(__NR_tgkill, sys_tgkill), // 270 */Linux
+ LINX_(__NR_tgkill, sys_tgkill), // 270 */Linux
//zz GENX_(__NR_utimes, sys_utimes), // 271
//zz LINX_(__NR_fadvise64_64, sys_fadvise64_64), // 272 */(Linux?)
GENX_(__NR_vserver, sys_ni_syscall), // 273