|
From: Dirk M. <mu...@kd...> - 2005-07-28 20:20:12
|
SVN commit 439751 by mueller:
fix fadvise64 syscalls, backport from 3.0
M +12 -6 syscalls.c =20
--- trunk/valgrind/coregrind/linux/syscalls.c #439750:439751
@@ -55,6 +55,8 @@
#define VG_ROUNDDN( p, a ) ( ( Addr )( p ) & ~( ( Addr )( a )-1 ) )
#define VG_ROUNDUP( p, a ) VG_ROUNDDN( ( p )+( a )-1, ( a ) )
=20
+#define LOHI64( lo,hi ) ( ( lo ) | ( ( ULong )( hi ) << 32 ) )
+
#define PRINT(format, args...) \
if (VG_(clo_trace_syscalls)) \
VG_(printf)(format, ## args)
@@ -516,16 +518,20 @@
=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)
+ PRINT("sys_fadvise64 ( %d, %lld, %lu, %d )",
+ arg1, LOHI64(arg2,arg3), arg4, arg5);
+ PRE_REG_READ5(long, "fadvise64",
+ int, fd, vki_u32, offset_low, vki_u32, offset_high,
+ vki_size_t, len, int, advice);
}
=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)
+ PRINT("sys_fadvise64_64 ( %d, %lld, %lld, %d )",
+ arg1, LOHI64(arg2,arg3), LOHI64(arg4,arg5), arg6);
+ PRE_REG_READ6(long, "fadvise64_64",
+ int, fd, vki_u32, offset_low, vki_u32, offset_high,
+ vki_u32, len_low, vki_u32, len_high, int, advice);
}
=20
PRE(sys_set_mempolicy, 0)
|