Bad system call
Hal Murray
hmurray at megapathdsl.net
Mon Jan 18 23:49:49 UTC 2021
>> Have you tried strace or gdb?
> strace attached.
clock_gettime64(CLOCK_REALTIME_COARSE, {tv_sec=9136151223987077120,
tv_nsec=18446744071541764330}) = 5
--- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x76a9238c,
si_syscall=__NR_clock_gettime64, si_arch=AUDIT_ARCH_ARM} ---
clock_gettime64(CLOCK_REALTIME_COARSE, {tv_sec=1991495680,
tv_nsec=22592472869765122}) = 5
--- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x76a9238c,
si_syscall=__NR_clock_gettime64, si_arch=AUDIT_ARCH_ARM} ---
+++ killed by SIGSYS +++
Interesting timing. There is a discussion on Libc-help
<libc-help at sourceware.org> about clock_gettime64 on 32 bit systems, or
something maybe interesting in that area.
List-archive: <https://sourceware.org/pipermail/libc-help/>
Subject: Re: Glibc 2.31 - time64 with 64-bit kernel and 32-bit userland
I see SECCOMP in there. Did you build with SECCOMP?
If seccomp is enabled, it installs a handler for SIGSYS that is supposed to
print out a helpful error message. Of course, that doesn't work if the trap
happens again in the error printout path.
I gave up on seccomp. I think there are comments about how to debug it in the
code, probably near the SIGSYS catcher.
clock_gettime64 isn't on the seccomp list. It's probably fastest to try
adding it.
--
These are my opinions. I hate spam.
More information about the devel
mailing list