|
From: <sv...@va...> - 2013-02-21 10:57:35
|
tom 2013-02-21 10:57:23 +0000 (Thu, 21 Feb 2013)
New Revision: 13289
Log:
Make msgrcv wrappers on amd64, arm and mips32 look for IPC_NOWAIT in
the flags argument, not the type argument. Fixes #315534.
Modified files:
trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
trunk/coregrind/m_syswrap/syswrap-arm-linux.c
trunk/coregrind/m_syswrap/syswrap-mips32-linux.c
Modified: trunk/coregrind/m_syswrap/syswrap-arm-linux.c (+1 -1)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-arm-linux.c 2013-02-15 03:12:17 +00:00 (rev 13288)
+++ trunk/coregrind/m_syswrap/syswrap-arm-linux.c 2013-02-21 10:57:23 +00:00 (rev 13289)
@@ -606,7 +606,7 @@
int, msqid, struct msgbuf *, msgp, vki_size_t, msgsz,
long, msgytp, int, msgflg);
ML_(linux_PRE_sys_msgrcv)(tid, ARG1,ARG2,ARG3,ARG4,ARG5);
- if ((ARG4 & VKI_IPC_NOWAIT) == 0)
+ if ((ARG5 & VKI_IPC_NOWAIT) == 0)
*flags |= SfMayBlock;
}
POST(sys_msgrcv)
Modified: trunk/coregrind/m_syswrap/syswrap-mips32-linux.c (+1 -1)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-mips32-linux.c 2013-02-15 03:12:17 +00:00 (rev 13288)
+++ trunk/coregrind/m_syswrap/syswrap-mips32-linux.c 2013-02-21 10:57:23 +00:00 (rev 13289)
@@ -616,7 +616,7 @@
PRE_REG_READ5 (long, "msgrcv", int, msqid, struct msgbuf *, msgp,
vki_size_t, msgsz, long, msgytp, int, msgflg);
ML_ (linux_PRE_sys_msgrcv) (tid, ARG1, ARG2, ARG3, ARG4, ARG5);
- if ((ARG4 & VKI_IPC_NOWAIT) == 0)
+ if ((ARG5 & VKI_IPC_NOWAIT) == 0)
*flags |= SfMayBlock;
}
Modified: trunk/coregrind/m_syswrap/syswrap-amd64-linux.c (+1 -1)
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2013-02-15 03:12:17 +00:00 (rev 13288)
+++ trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2013-02-21 10:57:23 +00:00 (rev 13289)
@@ -933,7 +933,7 @@
int, msqid, struct msgbuf *, msgp, vki_size_t, msgsz,
long, msgytp, int, msgflg);
ML_(linux_PRE_sys_msgrcv)(tid, ARG1,ARG2,ARG3,ARG4,ARG5);
- if ((ARG4 & VKI_IPC_NOWAIT) == 0)
+ if ((ARG5 & VKI_IPC_NOWAIT) == 0)
*flags |= SfMayBlock;
}
POST(sys_msgrcv)
|