warnings from backtrace

Hal Murray hmurray at megapathdsl.net
Fri Jun 2 05:57:49 UTC 2017


> Is mprotect the syscall you turned off?

I turned off a whole cluster - whatever threads and DNS lookup need.

Yes, mprotect is one of them.

> Are you sure that is the first SIGSYS?  The problem looks to me like when I
> was getting double SIGSYS. 

The write a few lines up in the chunk I sent is from a dns log message.

13335 22:05:33 write(1, " 1 Jun 22:05:33 ntpd[13335]: dns"..., 68) = 68
13335 22:05:33 write(4, " 1 Jun 22:05:33 ntpd[13335]: dns"..., 68) = 68
13335 22:05:33 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
13335 22:05:33 mmap(NULL, 8392704, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f007e582000
13335 22:05:33 mprotect(0x7f007e582000, 4096, PROT_NONE) = 10
13335 22:05:33 --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, 
si_call_addr=0x7f007f4b0e97, si_syscall=__NR_mprotect, 
si_arch=AUDIT_ARCH_X86_64} ---
13335 22:05:33 +++ killed by SIGSYS +++

It's doing a pthread_create

Program received signal SIGSYS, Bad system call.
0x00007ffff6b3be97 in mprotect () at ../sysdeps/unix/syscall-template.S:84
84      T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
(gdb) 
(gdb) 
(gdb) bt
#0  0x00007ffff6b3be97 in mprotect () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ffff726950b in allocate_stack (stack=<synthetic pointer>, 
    pdp=<synthetic pointer>, attr=<optimized out>) at allocatestack.c:647
#2  __pthread_create_2_1 (newthread=newthread at entry=0x5555557a9888 <worker>, 
    attr=attr at entry=0x7fffffffde40, 
    start_routine=start_routine at entry=0x5555555886b0 <dns_lookup>, 
    arg=arg at entry=0x5555557a59c0 <init_peer_alloc>) at pthread_create.c:539
#3  0x0000555555588809 in dns_probe (
    pp=pp at entry=0x5555557a59c0 <init_peer_alloc>) at ../../libntp/ntp_dns.c:70


> Can you send the ENTIRE strace?

Sure.  Off list.

>> Looks like your signal handler didn't get installed.
>I never created a signal handler, so no surprise it did not
>get installed.

I meant catchTrap.

You changed it to use signal_no_reset1 rather than signal_no_reset


> Did you try my suggested test of removing recvfrom?

I commented out the stuff DNS needs.
I put an x in:
  #ifdef xENABLE_DNS_LOOKUP


-- 
These are my opinions.  I hate spam.





More information about the devel mailing list