sparc64: fix decoding of the forth argument of semctl syscall

On sparc64, unlike all other architectures where semctl is an indirect
ipc subcall, the forth argument is passed directly.

* ipc_sem.c (SYS_FUNC(semctl)) [SPARC64]: Print 4th argument without
indirection in case of native personality.
This commit is contained in:
Дмитрий Левин 2016-08-17 21:58:37 +00:00
parent 4b69c4736c
commit 1a6470fc80

View File

@ -117,7 +117,11 @@ SYS_FUNC(semctl)
tprintf("%lu, %lu, ", tcp->u_arg[0], tcp->u_arg[1]);
PRINTCTL(semctl_flags, tcp->u_arg[2], "SEM_???");
tprints(", ");
if (indirect_ipccall(tcp)) {
if (indirect_ipccall(tcp)
#ifdef SPARC64
&& current_personality != 0
#endif
) {
printnum_ptr(tcp, tcp->u_arg[3]);
} else {
tprintf("%#lx", tcp->u_arg[3]);