|
From: <sv...@va...> - 2005-04-26 08:13:44
|
Author: tom
Date: 2005-04-26 09:13:24 +0100 (Tue, 26 Apr 2005)
New Revision: 3571
Modified:
trunk/coregrind/amd64-linux/syscalls.c
trunk/coregrind/linux/core_os.h
trunk/coregrind/linux/syscalls.c
trunk/coregrind/x86-linux/syscalls.c
Log:
Add support for the fadvise system calls.
Modified: trunk/coregrind/amd64-linux/syscalls.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/amd64-linux/syscalls.c 2005-04-26 07:44:48 UTC (rev 3=
570)
+++ trunk/coregrind/amd64-linux/syscalls.c 2005-04-26 08:13:24 UTC (rev 3=
571)
@@ -1166,7 +1166,7 @@
// (__NR_restart_syscall, sys_restart_syscall),// 219=20
=20
PLAX_(__NR_semtimedop, sys_semtimedop), // 220=20
- // (__NR_fadvise64, sys_fadvise64), // 221=20
+ LINX_(__NR_fadvise64, sys_fadvise64), // 221=20
// (__NR_timer_create, sys_timer_create), // 222=20
// (__NR_timer_settime, sys_timer_settime), // 223=20
// (__NR_timer_gettime, sys_timer_gettime), // 224=20
Modified: trunk/coregrind/linux/core_os.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/linux/core_os.h 2005-04-26 07:44:48 UTC (rev 3570)
+++ trunk/coregrind/linux/core_os.h 2005-04-26 08:13:24 UTC (rev 3571)
@@ -86,6 +86,9 @@
VGO_LINUX_SYSCALL_WRAPPER(sys_tkill);
VGO_LINUX_SYSCALL_WRAPPER(sys_tgkill);
=20
+VGO_LINUX_SYSCALL_WRAPPER(sys_fadvise64);
+VGO_LINUX_SYSCALL_WRAPPER(sys_fadvise64_64);
+
VGO_LINUX_SYSCALL_WRAPPER(sys_io_setup);
VGO_LINUX_SYSCALL_WRAPPER(sys_io_destroy);
VGO_LINUX_SYSCALL_WRAPPER(sys_io_getevents);
Modified: trunk/coregrind/linux/syscalls.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/linux/syscalls.c 2005-04-26 07:44:48 UTC (rev 3570)
+++ trunk/coregrind/linux/syscalls.c 2005-04-26 08:13:24 UTC (rev 3571)
@@ -567,7 +567,20 @@
VG_(poll_signals)(tid);
}
=20
+PRE(sys_fadvise64, 0)
+{
+ PRINT("sys_fadvise64 ( %d, %lld, %lu, %d )", ARG1,ARG2,ARG3);
+ PRE_REG_READ4(long, "fadvise64",
+ int, fd, vki_loff_t, offset, vki_size_t, len, int, advi=
ce)
+}
=20
+PRE(sys_fadvise64_64, 0)
+{
+ PRINT("sys_fadvise64_64 ( %d, %lld, %lld, %d )", ARG1,ARG2,ARG3);
+ PRE_REG_READ4(long, "fadvise64_64",
+ int, fd, vki_loff_t, offset, vki_loff_t, len, int, advi=
ce)
+}
+
// Nb: this wrapper is "Special" because we have to pad/unpad memory aro=
und
// the syscall itself, and this allows us to control exactly the code th=
at
// gets run while the padding is in place.
Modified: trunk/coregrind/x86-linux/syscalls.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/x86-linux/syscalls.c 2005-04-26 07:44:48 UTC (rev 357=
0)
+++ trunk/coregrind/x86-linux/syscalls.c 2005-04-26 08:13:24 UTC (rev 357=
1)
@@ -1283,7 +1283,7 @@
LINX_(__NR_io_submit, sys_io_submit), // 248
LINXY(__NR_io_cancel, sys_io_cancel), // 249
=20
- // (__NR_fadvise64, sys_fadvise64), // 250 */(Linux?)
+ LINX_(__NR_fadvise64, sys_fadvise64), // 250 */(Linux?)
GENX_(251, sys_ni_syscall), // 251
LINX_(__NR_exit_group, sys_exit_group), // 252
GENXY(__NR_lookup_dcookie, sys_lookup_dcookie), // 253
@@ -1309,7 +1309,7 @@
=20
LINX_(__NR_tgkill, sys_tgkill), // 270 */Linux
GENX_(__NR_utimes, sys_utimes), // 271
- // (__NR_fadvise64_64, sys_fadvise64_64), // 272 */(Linux?)
+ LINX_(__NR_fadvise64_64, sys_fadvise64_64), // 272 */(Linux?)
GENX_(__NR_vserver, sys_ni_syscall), // 273
// (__NR_mbind, sys_mbind), // 274 ?/?
=20
|