|
From: <sv...@va...> - 2005-10-20 17:00:35
|
Author: tom
Date: 2005-10-20 18:00:23 +0100 (Thu, 20 Oct 2005)
New Revision: 4958
Log:
Add support for the mbind system call on x86 and amd64. Fixes bug #114756=
.
Modified:
trunk/coregrind/m_syswrap/priv_syswrap-linux.h
trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/coregrind/m_syswrap/syswrap-x86-linux.c
Modified: trunk/coregrind/m_syswrap/priv_syswrap-linux.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/m_syswrap/priv_syswrap-linux.h 2005-10-20 01:57:29 UT=
C (rev 4957)
+++ trunk/coregrind/m_syswrap/priv_syswrap-linux.h 2005-10-20 17:00:23 UT=
C (rev 4958)
@@ -85,6 +85,7 @@
DECL_TEMPLATE(linux, sys_io_submit);
DECL_TEMPLATE(linux, sys_io_cancel);
=20
+DECL_TEMPLATE(linux, sys_mbind);
DECL_TEMPLATE(linux, sys_set_mempolicy);
DECL_TEMPLATE(linux, sys_get_mempolicy);
=20
Modified: trunk/coregrind/m_syswrap/syswrap-amd64-linux.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/m_syswrap/syswrap-amd64-linux.c 2005-10-20 01:57:29 U=
TC (rev 4957)
+++ trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2005-10-20 17:00:23 U=
TC (rev 4958)
@@ -1463,7 +1463,7 @@
=20
// (__NR_utimes, sys_utimes), // 235=20
// (__NR_vserver, sys_ni_syscall), // 236=20
- // (__NR_mbind, sys_mbind), // 237=20
+ LINX_(__NR_mbind, sys_mbind), // 237=20
LINX_(__NR_set_mempolicy, sys_set_mempolicy), // 238=20
LINXY(__NR_get_mempolicy, sys_get_mempolicy), // 239
=20
Modified: trunk/coregrind/m_syswrap/syswrap-linux.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/m_syswrap/syswrap-linux.c 2005-10-20 01:57:29 UTC (re=
v 4957)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c 2005-10-20 17:00:23 UTC (re=
v 4958)
@@ -852,6 +852,18 @@
*_mempolicy wrappers
------------------------------------------------------------------ */
=20
+PRE(sys_mbind)
+{
+ PRINT("sys_mbind ( %p, %lu, %d, %p, %lu, %u )", ARG1,ARG2,ARG3,ARG4,A=
RG5,ARG6);
+ PRE_REG_READ6(long, "mbind",
+ unsigned long, start, unsigned long, len,
+ unsigned long, policy, unsigned long *, nodemask,
+ unsigned long, maxnode, unsigned, flags);
+ if (ARG1 !=3D 0)
+ PRE_MEM_READ( "mbind(nodemask)", ARG4,
+ VG_ROUNDUP( ARG5, sizeof(UWord) ) / sizeof(UWord) );
+}
+
PRE(sys_set_mempolicy)
{
PRINT("sys_set_mempolicy ( %d, %p, %d )", ARG1,ARG2,ARG3);
Modified: trunk/coregrind/m_syswrap/syswrap-x86-linux.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/m_syswrap/syswrap-x86-linux.c 2005-10-20 01:57:29 UTC=
(rev 4957)
+++ trunk/coregrind/m_syswrap/syswrap-x86-linux.c 2005-10-20 17:00:23 UTC=
(rev 4958)
@@ -2272,8 +2272,8 @@
GENX_(__NR_utimes, sys_utimes), // 271
LINX_(__NR_fadvise64_64, sys_fadvise64_64), // 272 */(Linux?)
GENX_(__NR_vserver, sys_ni_syscall), // 273
-//zz // (__NR_mbind, sys_mbind), // 274 ?/?
-//zz=20
+ LINX_(__NR_mbind, sys_mbind), // 274 ?/?
+
LINXY(__NR_get_mempolicy, sys_get_mempolicy), // 275 ?/?
LINX_(__NR_set_mempolicy, sys_set_mempolicy), // 276 ?/?
LINXY(__NR_mq_open, sys_mq_open), // 277
|