strace 4.6 broken on mips64 n32

Lluís Batlle i Rossell viric at viric.name
Sun Jan 22 18:44:17 UTC 2012


Hello,

strace 4.5.20 works perfectly on mips64 n32, but 4.6 shows wrong syscalls all
around.

You'll see an example at the end of this letter.

There is also a build warning, as defs.h does not contain any 'ifdef' for MIPS,
regarding MIPS with glibc at defs.h:148.

For the compiler warning, easy. But I've no idea on how to fix the syscall
report.

Below, the example.

Regards,
Lluís.

strace -f /nix/store/610vsnc37rmdqlpx1kbfhigahf67mzaa-glibc-2.12.2/bin/rpcgen -l
-o mount_clnt.c mount.x
getpeername(2146103936, {sa_family=AF_UNSPEC,
sa_data="\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}, [0]) = 0
svr4_syscall()                          = -1 ERRNO_6012 (Unknown error 6012)
close(0)                                = 2005352448
clone(child_stack=0x184,
flags=CLONE_IDLETASK|CLONE_VFORK|CLONE_PARENT|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_UNTRACED|CLONE_CHILD_SETTID|CLONE_STOPPED|CLONE_NEWUTS|CLONE_NEWIPC|CLONE_NEWUSER|CLONE_NEWPID|CLONE_NEWNET|0x400000|SIGRT_16,
parent_tidptr=0x7feb0624, child_tidptr=0) = 0
rt_sigprocmask(0x77868318 /* SIG_??? */, 0x4, 0x6474e552, 2005413904) = -1
ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = 0
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = -1 ENOENT (No such file or directory)
SYS_5998()                              = -1 ENOENT (No such file or directory)
SYS_5996()                              = 3
SYS_5994()                              = 512
open(0x3, O_RDONLY|O_TRUNC|O_APPEND|O_NONBLOCK|O_DSYNC|0x20) = 696
SYS_5994()                              = 32
SYS_5999()                              = 0
close(0)                                = 2003664896
stat("\4WA", {...})                     = 0
close(2005123072)                       = 2005123072
SYS_5997()                              = 0
SYS_6240()                              = 0
stat("cket for broadcast rpc", {...})   = 0
SYS_5998()                              = 0
SYS_5998()                              = -1 ENOENT (No such file or directory)
ioctl(2146489456, 0x10011160, 0x7ff0e1e8) = 3
listen(18874386, 0Process 12399 attached
)                     = 12399
[pid 12399] SYS_5997()                  = 0
[pid 12399] mincore(0x4, 0x1, 0x10)     = 1
[pid 12399] SYS_5997()                  = 0
[pid 12399] getpeername(2146489223, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489221, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489228, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489226, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489228, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489231, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489233, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489230, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489228, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489229, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] getpeername(2146489228, 0x100253c8, [2146492925]) = -1 ENOENT (No
such file or directory)
[pid 12399] msync(0x2, 2005203360, MS_INVALIDATE) = 3
[pid 12399] lookup_dcookie(0x3, 0x3, 0x1) = 8194
[pid 12398] SYS_5997()                  = 0
[pid 12398] lookup_dcookie(0x3, 0x3, 0x1) = 0
[pid 12399] lstat(NULL,  <unfinished ...>[pid 12398] lstat(NULL, NULL)
= 268599296
[pid 12398] lstat(0x1004c000, {...})    = 268746752
[pid 12398] SYS_5999()                  = 0
[pid 12398] close(0)                    = 2003599360
[pid 12398] open(0x3, O_RDONLY)         = -1 ESPIPE (Illegal seek)
[pid 12398] SYS_5996()                  = 4
[pid 12398] SYS_5999()                  = 0
[pid 12398] close(0)                    = 2003533824
[pid 12398] SYS_5994( <unfinished ...>
[pid 12399] <... lstat resumed> NULL)   = 268599296
[pid 12399] lstat(0x1004c000, {...})    = 268746752
[pid 12399] SYS_5999()                  = 0
[pid 12399] close(0)                    = 2003599360
[pid 12399] open(0x3, O_RDONLY)         = -1 ESPIPE (Illegal seek)
[pid 12399] SYS_5995(execv: No such file or directory
)                  = 33
[pid 12399] SYS_5997()                  = 0
[pid 12399] fstat(2003599360, {...})    = 0
[pid 12399] sysmips(SETNAME, 0x1PANIC: attached pid 12399 exited with 1
 <unfinished ... exit status 1>
 <... SYS_5994 resumed> )                = 0
 --- {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=12399, si_status=1,
 si_utime=0, si_stime=0} (Child exited) ---
 SYS_5997()                              = 0
 fstat(2003599360, {...})                = 0
 setsockopt(12399, 0x7ff0d480 /* SOL_?? */, 0, NULL, 268517307) = 12399
 SYS_5995(/nix/store/610vsnc37rmdqlpx1kbfhigahf67mzaa-glibc-2.12.2/bin/rpcgen: C
 preprocessor failed with exit code 1
 )                              = 108
 fchdir(2146492904)                      = 0
 SYS_5995()                              = 233
 sysmips(SETNAME, 0x1 <unfinished ... exit status 1>





More information about the Strace-devel mailing list