mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 18:13:01 +00:00
Add missing syscall wrapper on Solaris
I tried to test drd/tests/pth_mutex_signal on Solaris (you never know) but encountered a missing syscall wrapper. So this adds a very basic wrapper for lwp_mutex_unlock. Also update a Solaris expected that I missed amongst the FreeBSD changes.
This commit is contained in:
parent
542447d470
commit
49d6d73c25
@ -1067,6 +1067,7 @@ DECL_TEMPLATE(solaris, sys_getpeername);
|
||||
DECL_TEMPLATE(solaris, sys_getsockname);
|
||||
DECL_TEMPLATE(solaris, sys_getsockopt);
|
||||
DECL_TEMPLATE(solaris, sys_setsockopt);
|
||||
DECL_TEMPLATE(solaris, sys_lwp_mutex_unlock);
|
||||
DECL_TEMPLATE(solaris, sys_lwp_mutex_register);
|
||||
DECL_TEMPLATE(solaris, sys_uucopy);
|
||||
DECL_TEMPLATE(solaris, sys_umount2);
|
||||
@ -10635,6 +10636,21 @@ PRE(sys_lwp_mutex_register)
|
||||
PRE_FIELD_READ("lwp_mutex_register(mp->mutex_type)", mp->vki_mutex_type);
|
||||
}
|
||||
|
||||
PRE(sys_lwp_mutex_unlock)
|
||||
{
|
||||
/* int lwp_mutex_unlock(lwp_mutex_t *lp); */
|
||||
vki_lwp_mutex_t *lp = (vki_lwp_mutex_t*)ARG1;
|
||||
PRINT("sys_lwp_mutex_unlock ( %#lx )", ARG1);
|
||||
PRE_REG_READ1(int, "lwp_mutex_unlock", lwp_mutex_t *, lp);
|
||||
PRE_MEM_READ("lwp_mutex_unlock(lp)", (Addr)lp, sizeof(vki_lwp_mutex_t));
|
||||
PRE_MEM_WRITE("lwp_mutex_unlock(lp)", (Addr)lp, sizeof(vki_lwp_mutex_t));
|
||||
}
|
||||
|
||||
POST(sys_lwp_mutex_unlock)
|
||||
{
|
||||
POST_MEM_WRITE(ARG1, sizeof(vki_lwp_mutex_t));
|
||||
}
|
||||
|
||||
PRE(sys_uucopy)
|
||||
{
|
||||
/* int uucopy(const void *s1, void *s2, size_t n); */
|
||||
@ -11027,6 +11043,7 @@ static SyscallTableEntry syscall_table[] = {
|
||||
SOLXY(__NR_getsockname, sys_getsockname), /* 244 */
|
||||
SOLXY(__NR_getsockopt, sys_getsockopt), /* 245 */
|
||||
SOLX_(__NR_setsockopt, sys_setsockopt), /* 246 */
|
||||
SOLXY(__NR_lwp_mutex_unlock, sys_lwp_mutex_unlock), /* 250 */
|
||||
SOLX_(__NR_lwp_mutex_register, sys_lwp_mutex_register), /* 252 */
|
||||
SOLXY(__NR_uucopy, sys_uucopy), /* 254 */
|
||||
SOLX_(__NR_umount2, sys_umount2) /* 255 */
|
||||
|
||||
@ -5,8 +5,8 @@ Program received signal SIGTRAP, Trace/breakpoint trap.
|
||||
Now threads are burning CPU
|
||||
Continuing.
|
||||
Program received signal SIGTRAP, Trace/breakpoint trap.
|
||||
0x........ in do_burn () at sleepers.c:41
|
||||
41 for (i = 0; i < burn; i++) loopnr++;
|
||||
do_burn () at sleepers.c:40
|
||||
40 for (i = 0; i < burn; i++) loopnr++;
|
||||
$1 = 0
|
||||
$2 = 0
|
||||
$3 = 0
|
||||
|
||||
@ -300,7 +300,7 @@
|
||||
//#define __NR_sockconfig SYS_sockconfig
|
||||
//#define __NR_ntp_gettime SYS_ntp_gettime
|
||||
//#define __NR_ntp_adjtime SYS_ntp_adjtime
|
||||
//#define __NR_lwp_mutex_unlock SYS_lwp_mutex_unlock
|
||||
#define __NR_lwp_mutex_unlock SYS_lwp_mutex_unlock
|
||||
//#define __NR_lwp_mutex_trylock SYS_lwp_mutex_trylock
|
||||
#define __NR_lwp_mutex_register SYS_lwp_mutex_register
|
||||
//#define __NR_cladm SYS_cladm
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user