From: Nicholas Nethercote Date: Fri, 26 Aug 2005 03:54:30 +0000 (+0000) Subject: Move timer_* syscalls from "generic" to "linux". X-Git-Tag: svn/VALGRIND_3_1_0~521 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=832989d4af9efbd25264578d8f0637373fa970d9;p=thirdparty%2Fvalgrind.git Move timer_* syscalls from "generic" to "linux". git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4519 --- diff --git a/coregrind/m_syswrap/priv_syswrap-linux.h b/coregrind/m_syswrap/priv_syswrap-linux.h index 9abfc354df..30869683ca 100644 --- a/coregrind/m_syswrap/priv_syswrap-linux.h +++ b/coregrind/m_syswrap/priv_syswrap-linux.h @@ -108,6 +108,12 @@ DECL_TEMPLATE(linux, sys_clock_gettime); DECL_TEMPLATE(linux, sys_clock_getres); DECL_TEMPLATE(linux, sys_clock_nanosleep); +DECL_TEMPLATE(linux, sys_timer_create); // Linux: varies across archs? +DECL_TEMPLATE(linux, sys_timer_settime); +DECL_TEMPLATE(linux, sys_timer_gettime); +DECL_TEMPLATE(linux, sys_timer_getoverrun); +DECL_TEMPLATE(linux, sys_timer_delete); + #endif // __PRIV_SYSWRAP_LINUX_H /*--------------------------------------------------------------------*/ diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c index 0f12b2706a..05fc4aa9ad 100644 --- a/coregrind/m_syswrap/syswrap-amd64-linux.c +++ b/coregrind/m_syswrap/syswrap-amd64-linux.c @@ -1442,12 +1442,12 @@ const SyscallTableEntry ML_(syscall_table)[] = { PLAX_(__NR_semtimedop, sys_semtimedop), // 220 PLAX_(__NR_fadvise64, sys_fadvise64), // 221 - GENXY(__NR_timer_create, sys_timer_create), // 222 - GENXY(__NR_timer_settime, sys_timer_settime), // 223 - GENXY(__NR_timer_gettime, sys_timer_gettime), // 224 + LINXY(__NR_timer_create, sys_timer_create), // 222 + LINXY(__NR_timer_settime, sys_timer_settime), // 223 + LINXY(__NR_timer_gettime, sys_timer_gettime), // 224 - GENX_(__NR_timer_getoverrun, sys_timer_getoverrun), // 225 - GENX_(__NR_timer_delete, sys_timer_delete), // 226 + LINX_(__NR_timer_getoverrun, sys_timer_getoverrun), // 225 + LINX_(__NR_timer_delete, sys_timer_delete), // 226 LINX_(__NR_clock_settime, sys_clock_settime), // 227 LINXY(__NR_clock_gettime, sys_clock_gettime), // 228 LINXY(__NR_clock_getres, sys_clock_getres), // 229 diff --git a/coregrind/m_syswrap/syswrap-generic.c b/coregrind/m_syswrap/syswrap-generic.c index e70e235538..4f04814894 100644 --- a/coregrind/m_syswrap/syswrap-generic.c +++ b/coregrind/m_syswrap/syswrap-generic.c @@ -5513,65 +5513,6 @@ POST(sys_rt_sigpending) POST_MEM_WRITE( ARG1, sizeof(vki_sigset_t) ) ; } -PRE(sys_timer_create) -{ - PRINT("sys_timer_create( %d, %p, %p )", ARG1,ARG2,ARG3); - PRE_REG_READ3(long, "timer_create", - vki_clockid_t, clockid, struct sigevent *, evp, - vki_timer_t *, timerid); - if (ARG2 != 0) - PRE_MEM_READ( "timer_create(evp)", ARG2, sizeof(struct vki_sigevent) ); - PRE_MEM_WRITE( "timer_create(timerid)", ARG3, sizeof(vki_timer_t) ); -} -POST(sys_timer_create) -{ - POST_MEM_WRITE( ARG3, sizeof(vki_timer_t) ); -} - -PRE(sys_timer_settime) -{ - PRINT("sys_timer_settime( %lld, %d, %p, %p )", (ULong)ARG1,ARG2,ARG3,ARG4); - PRE_REG_READ4(long, "timer_settime", - vki_timer_t, timerid, int, flags, - const struct itimerspec *, value, - struct itimerspec *, ovalue); - PRE_MEM_READ( "timer_settime(value)", ARG3, - sizeof(struct vki_itimerspec) ); - if (ARG4 != 0) - PRE_MEM_WRITE( "timer_settime(ovalue)", ARG4, - sizeof(struct vki_itimerspec) ); -} -POST(sys_timer_settime) -{ - if (ARG4 != 0) - POST_MEM_WRITE( ARG4, sizeof(struct vki_itimerspec) ); -} - -PRE(sys_timer_gettime) -{ - PRINT("sys_timer_gettime( %lld, %p )", (ULong)ARG1,ARG2); - PRE_REG_READ2(long, "timer_gettime", - vki_timer_t, timerid, struct itimerspec *, value); - PRE_MEM_WRITE( "timer_gettime(value)", ARG2, - sizeof(struct vki_itimerspec)); -} -POST(sys_timer_gettime) -{ - POST_MEM_WRITE( ARG2, sizeof(struct vki_itimerspec) ); -} - -PRE(sys_timer_getoverrun) -{ - PRINT("sys_timer_getoverrun( %p )", ARG1); - PRE_REG_READ1(long, "timer_getoverrun", vki_timer_t, timerid); -} - -PRE(sys_timer_delete) -{ - PRINT("sys_timer_delete( %p )", ARG1); - PRE_REG_READ1(long, "timer_delete", vki_timer_t, timerid); -} - PRE(sys_waitid) { *flags |= SfMayBlock; diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c index 7707e407b8..b6b6cda9e1 100644 --- a/coregrind/m_syswrap/syswrap-linux.c +++ b/coregrind/m_syswrap/syswrap-linux.c @@ -1068,6 +1068,65 @@ POST(sys_clock_nanosleep) POST_MEM_WRITE( ARG4, sizeof(struct vki_timespec) ); } +PRE(sys_timer_create) +{ + PRINT("sys_timer_create( %d, %p, %p )", ARG1,ARG2,ARG3); + PRE_REG_READ3(long, "timer_create", + vki_clockid_t, clockid, struct sigevent *, evp, + vki_timer_t *, timerid); + if (ARG2 != 0) + PRE_MEM_READ( "timer_create(evp)", ARG2, sizeof(struct vki_sigevent) ); + PRE_MEM_WRITE( "timer_create(timerid)", ARG3, sizeof(vki_timer_t) ); +} +POST(sys_timer_create) +{ + POST_MEM_WRITE( ARG3, sizeof(vki_timer_t) ); +} + +PRE(sys_timer_settime) +{ + PRINT("sys_timer_settime( %lld, %d, %p, %p )", (ULong)ARG1,ARG2,ARG3,ARG4); + PRE_REG_READ4(long, "timer_settime", + vki_timer_t, timerid, int, flags, + const struct itimerspec *, value, + struct itimerspec *, ovalue); + PRE_MEM_READ( "timer_settime(value)", ARG3, + sizeof(struct vki_itimerspec) ); + if (ARG4 != 0) + PRE_MEM_WRITE( "timer_settime(ovalue)", ARG4, + sizeof(struct vki_itimerspec) ); +} +POST(sys_timer_settime) +{ + if (ARG4 != 0) + POST_MEM_WRITE( ARG4, sizeof(struct vki_itimerspec) ); +} + +PRE(sys_timer_gettime) +{ + PRINT("sys_timer_gettime( %lld, %p )", (ULong)ARG1,ARG2); + PRE_REG_READ2(long, "timer_gettime", + vki_timer_t, timerid, struct itimerspec *, value); + PRE_MEM_WRITE( "timer_gettime(value)", ARG2, + sizeof(struct vki_itimerspec)); +} +POST(sys_timer_gettime) +{ + POST_MEM_WRITE( ARG2, sizeof(struct vki_itimerspec) ); +} + +PRE(sys_timer_getoverrun) +{ + PRINT("sys_timer_getoverrun( %p )", ARG1); + PRE_REG_READ1(long, "timer_getoverrun", vki_timer_t, timerid); +} + +PRE(sys_timer_delete) +{ + PRINT("sys_timer_delete( %p )", ARG1); + PRE_REG_READ1(long, "timer_delete", vki_timer_t, timerid); +} + #undef PRE #undef POST diff --git a/coregrind/m_syswrap/syswrap-ppc32-linux.c b/coregrind/m_syswrap/syswrap-ppc32-linux.c index f3126dc17b..0eb9ff8e14 100644 --- a/coregrind/m_syswrap/syswrap-ppc32-linux.c +++ b/coregrind/m_syswrap/syswrap-ppc32-linux.c @@ -2251,11 +2251,11 @@ const SyscallTableEntry ML_(syscall_table)[] = { //.. LINXY(__NR_epoll_wait, sys_epoll_wait), // 238 //.. // (__NR_remap_file_pages, sys_remap_file_pages), // 239 */Linux -//.. GENXY(__NR_timer_create, sys_timer_create), // 240 -//.. GENXY(__NR_timer_settime, sys_timer_settime), // 241 -//.. GENXY(__NR_timer_gettime, sys_timer_gettime), // 242 -//.. GENX_(__NR_timer_getoverrun, sys_timer_getoverrun), // 243 -//.. GENX_(__NR_timer_delete, sys_timer_delete), // 244 +//.. LINXY(__NR_timer_create, sys_timer_create), // 240 +//.. LINXY(__NR_timer_settime, sys_timer_settime), // 241 +//.. LINXY(__NR_timer_gettime, sys_timer_gettime), // 242 +//.. LINX_(__NR_timer_getoverrun, sys_timer_getoverrun), // 243 +//.. LINX_(__NR_timer_delete, sys_timer_delete), // 244 //.. LINX_(__NR_clock_settime, sys_clock_settime), // 245 LINXY(__NR_clock_gettime, sys_clock_gettime), // 246 //.. LINXY(__NR_clock_getres, sys_clock_getres), // 247 diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c index ad1501b035..4133d62437 100644 --- a/coregrind/m_syswrap/syswrap-x86-linux.c +++ b/coregrind/m_syswrap/syswrap-x86-linux.c @@ -2253,12 +2253,12 @@ const SyscallTableEntry ML_(syscall_table)[] = { LINXY(__NR_epoll_wait, sys_epoll_wait), // 256 //zz // (__NR_remap_file_pages, sys_remap_file_pages), // 257 */Linux LINX_(__NR_set_tid_address, sys_set_tid_address), // 258 - GENXY(__NR_timer_create, sys_timer_create), // 259 + LINXY(__NR_timer_create, sys_timer_create), // 259 - GENXY(__NR_timer_settime, sys_timer_settime), // (timer_create+1) - GENXY(__NR_timer_gettime, sys_timer_gettime), // (timer_create+2) - GENX_(__NR_timer_getoverrun, sys_timer_getoverrun),//(timer_create+3) - GENX_(__NR_timer_delete, sys_timer_delete), // (timer_create+4) + LINXY(__NR_timer_settime, sys_timer_settime), // (timer_create+1) + LINXY(__NR_timer_gettime, sys_timer_gettime), // (timer_create+2) + LINX_(__NR_timer_getoverrun, sys_timer_getoverrun),//(timer_create+3) + LINX_(__NR_timer_delete, sys_timer_delete), // (timer_create+4) LINX_(__NR_clock_settime, sys_clock_settime), // (timer_create+5) LINXY(__NR_clock_gettime, sys_clock_gettime), // (timer_create+6)