mailing list of musl libc
 help / color / mirror / code / Atom feed
* [musl] Re: Pending patches for MT-fork stuff
@ 2020-09-29 18:04 Jesse Hathaway
  2020-09-29 18:36 ` Rich Felker
  0 siblings, 1 reply; 11+ messages in thread
From: Jesse Hathaway @ 2020-09-29 18:04 UTC (permalink / raw)
  To: musl, Jesse Hathaway

[-- Attachment #1: Type: text/plain, Size: 516 bytes --]

I was experiencing a hang when calling setreuid from a thread on musl
1.2.1 as well as on master with these patches applied. I have attached
a Go program which hangs when run as the root user outputting only:

    main.go:31: Calling setreuid

Whereas with glibc the setreuid call completes successfully, with the
following output:

    test.go:31: Calling setreuid
    test.go:40: Running command
    test.go:45: root
    test.go:46: Command complete

I am happy to help troubleshoot the issue, yours kindly, Jesse

[-- Attachment #2: test.go --]
[-- Type: text/x-go, Size: 1574 bytes --]

package main

// #include <unistd.h>
// #include <errno.h>
import "C"

import (
	"log"
	"os"
	"os/exec"
	"os/signal"
	"os/user"
	"strconv"
	"syscall"

	"golang.org/x/sys/unix"
)

func runAsRoot() {
	cmd := exec.Command("whoami")
	uid := 0
	unprivUser := "nobody"
	lu, err := user.Lookup(unprivUser)
	if err != nil {
		log.Fatalf("Error: Unable to lookup user '%s': %v", unprivUser, err)
	}
	unprivUid, err := strconv.Atoi(lu.Uid)
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	log.Printf("Calling setreuid")
	ret, errno := C.setreuid(C.uid_t(unprivUid), C.uid_t(uid))
	if ret != 0 {
		log.Fatalf("Error: returned %d, errno: %v", ret, errno)
	}
	euid := unix.Geteuid()
	if euid != uid {
		log.Fatalf("Error: euid %d, should be %d", euid, uid)
	}
	log.Printf("Running command")
	stdoutStderr, err := cmd.CombinedOutput()
	if err != nil {
		log.Fatal(err)
	}
	log.Printf("%s", stdoutStderr)
	log.Printf("Command complete")
	return
}

func main() {
	log.SetFlags(log.Lshortfile)
	unprivUser := "nobody"
	lu, err := user.Lookup(unprivUser)
	if err != nil {
		log.Fatalf("Error: Unable to lookup user '%s': %v", unprivUser, err)
	}
	uid, err := strconv.Atoi(lu.Uid)
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	ret, errno := C.setreuid(C.uid_t(0), C.uid_t(uid))
	if ret != 0 {
		log.Fatalf("Error: returned %d, errno: %v", ret, errno)
	}
	euid := unix.Geteuid()
	if euid != uid {
		log.Fatalf("Error: euid %d, should be %d", euid, uid)
	}

	go func() {
		runAsRoot()
	}()

	sigs := make(chan os.Signal, 1)
	signal.Notify(sigs, os.Interrupt, syscall.SIGTERM)
	<-sigs
}

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-29 18:04 [musl] Re: Pending patches for MT-fork stuff Jesse Hathaway
@ 2020-09-29 18:36 ` Rich Felker
  2020-09-29 18:51   ` Jesse Hathaway
  0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2020-09-29 18:36 UTC (permalink / raw)
  To: Jesse Hathaway; +Cc: musl

On Tue, Sep 29, 2020 at 01:04:06PM -0500, Jesse Hathaway wrote:
> I was experiencing a hang when calling setreuid from a thread on musl
> 1.2.1 as well as on master with these patches applied. I have attached
> a Go program which hangs when run as the root user outputting only:
> 
>     main.go:31: Calling setreuid
> 
> Whereas with glibc the setreuid call completes successfully, with the
> following output:
> 
>     test.go:31: Calling setreuid
>     test.go:40: Running command
>     test.go:45: root
>     test.go:46: Command complete
> 
> I am happy to help troubleshoot the issue, yours kindly, Jesse

Can you provide an strace (with -f) showing the hang? It's probably
not related to this since fork does not seem to be involved. Depending
on how you're using Go, it may just be Go bypassing libc then trying
to use libc functions, which at least used to be a big problem; I
don't know if it's fixed nowadays or not.

Rich

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-29 18:36 ` Rich Felker
@ 2020-09-29 18:51   ` Jesse Hathaway
  2020-09-29 20:34     ` Rich Felker
  0 siblings, 1 reply; 11+ messages in thread
From: Jesse Hathaway @ 2020-09-29 18:51 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

[-- Attachment #1: Type: text/plain, Size: 589 bytes --]

On Tue, Sep 29, 2020 at 1:36 PM Rich Felker <dalias@libc.org> wrote:
> Can you provide an strace (with -f) showing the hang? It's probably
> not related to this since fork does not seem to be involved. Depending
> on how you're using Go, it may just be Go bypassing libc then trying
> to use libc functions, which at least used to be a big problem; I
> don't know if it's fixed nowadays or not.

Thanks Rich, for taking a look, I have attached an strace of the
program compiled against musl & glibc. The first call to setreuid
succeeds in both, but the second call fails under musl. Jesse

[-- Attachment #2: glibc_strace.txt --]
[-- Type: text/plain, Size: 98307 bytes --]

9714  execve("./test", ["./test"], 0x7ffe0fb65f38 /* 12 vars */) = 0
9714  brk(NULL)                         = 0x87f000
9714  access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
9714  openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
9714  fstat(3, {st_mode=S_IFREG|0644, st_size=68053, ...}) = 0
9714  mmap(NULL, 68053, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fabb1977000
9714  close(3)                          = 0
9714  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
9714  read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@l\0\0\0\0\0\0"..., 832) = 832
9714  fstat(3, {st_mode=S_IFREG|0755, st_size=146968, ...}) = 0
9714  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabb1975000
9714  mmap(NULL, 132288, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fabb1954000
9714  mmap(0x7fabb195a000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7fabb195a000
9714  mmap(0x7fabb1969000, 24576, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7fabb1969000
9714  mmap(0x7fabb196f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7fabb196f000
9714  mmap(0x7fabb1971000, 13504, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fabb1971000
9714  close(3)                          = 0
9714  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
9714  read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260A\2\0\0\0\0\0"..., 832) = 832
9714  fstat(3, {st_mode=S_IFREG|0755, st_size=1824496, ...}) = 0
9714  mmap(NULL, 1837056, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fabb1793000
9714  mprotect(0x7fabb17b5000, 1658880, PROT_NONE) = 0
9714  mmap(0x7fabb17b5000, 1343488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7fabb17b5000
9714  mmap(0x7fabb18fd000, 311296, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16a000) = 0x7fabb18fd000
9714  mmap(0x7fabb194a000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b6000) = 0x7fabb194a000
9714  mmap(0x7fabb1950000, 14336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fabb1950000
9714  close(3)                          = 0
9714  mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabb1790000
9714  arch_prctl(ARCH_SET_FS, 0x7fabb1790740) = 0
9714  mprotect(0x7fabb194a000, 16384, PROT_READ) = 0
9714  mprotect(0x7fabb196f000, 4096, PROT_READ) = 0
9714  mprotect(0x596000, 4096, PROT_READ) = 0
9714  mprotect(0x7fabb19af000, 4096, PROT_READ) = 0
9714  munmap(0x7fabb1977000, 68053)     = 0
9714  set_tid_address(0x7fabb1790a10)   = 9714
9714  set_robust_list(0x7fabb1790a20, 24) = 0
9714  rt_sigaction(SIGRTMIN, {sa_handler=0x7fabb195a6b0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_1, {sa_handler=0x7fabb195a740, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
9714  prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
9714  brk(NULL)                         = 0x87f000
9714  brk(0x8a0000)                     = 0x8a0000
9714  sched_getaffinity(0, 8192, [0, 1, 2, 3]) = 64
9714  openat(AT_FDCWD, "/sys/kernel/mm/transparent_hugepage/hpage_pmd_size", O_RDONLY) = 3
9714  read(3, "2097152\n", 20)          = 8
9714  close(3)                          = 0
9714  mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabb1750000
9714  mmap(0xc000000000, 67108864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
9714  mmap(0xc000000000, 67108864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xc000000000
9714  mmap(NULL, 33554432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabaf750000
9714  mmap(NULL, 2164736, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabaf53f000
9714  mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabb1978000
9714  mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fabaf52f000
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586186626}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586247941}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586305948}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586364040}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586422171}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586479639}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586537564}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586595843}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586654628}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586712709}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586770431}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586828402}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586886273}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=586944192}) = 0
9714  rt_sigprocmask(SIG_SETMASK, NULL, [], 8) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=587110739}) = 0
9714  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=587186200}) = 0
9714  sigaltstack(NULL, {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9714  sigaltstack({ss_sp=0xc000002000, ss_flags=0, ss_size=32768}, NULL) = 0
9714  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
9714  gettid()                          = 9714
9714  rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGHUP, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGINT, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGQUIT, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGILL, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGTRAP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGTRAP, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGABRT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGABRT, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGBUS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGBUS, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGFPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGFPE, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGUSR1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGUSR1, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGSEGV, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGUSR2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGUSR2, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGPIPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGPIPE, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGALRM, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGTERM, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGSTKFLT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGSTKFLT, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGCHLD, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGURG, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGURG, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGXCPU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGXCPU, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGXFSZ, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGXFSZ, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGVTALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGVTALRM, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGPROF, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGPROF, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGWINCH, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGWINCH, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGIO, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGIO, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGPWR, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGPWR, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGSYS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGSYS, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRTMIN, NULL, {sa_handler=0x7fabb195a6b0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7fabb1966730}, 8) = 0
9714  rt_sigaction(SIGRTMIN, NULL, {sa_handler=0x7fabb195a6b0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7fabb1966730}, 8) = 0
9714  rt_sigaction(SIGRTMIN, {sa_handler=0x7fabb195a6b0, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_1, NULL, {sa_handler=0x7fabb195a740, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, 8) = 0
9714  rt_sigaction(SIGRT_1, NULL, {sa_handler=0x7fabb195a740, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, 8) = 0
9714  rt_sigaction(SIGRT_1, {sa_handler=0x7fabb195a740, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_2, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_3, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_3, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_4, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_4, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_5, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_5, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_6, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_6, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_7, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_7, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_8, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_8, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_9, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_9, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_10, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_10, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_11, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_11, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_12, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_12, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_13, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_13, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_14, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_14, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_15, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_15, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_16, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_16, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_17, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_17, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_18, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_18, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_19, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_19, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_20, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_20, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_21, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_21, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_22, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_22, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_23, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_23, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_24, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_24, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_25, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_25, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_26, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_26, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_27, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_27, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_28, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_28, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_29, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_29, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_30, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_30, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_31, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_31, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigaction(SIGRT_32, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
9714  rt_sigaction(SIGRT_32, {sa_handler=0x45a930, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fabb1966730}, NULL, 8) = 0
9714  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
9714  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fabaed2e000
9714  mprotect(0x7fabaed2f000, 8388608, PROT_READ|PROT_WRITE) = 0
9714  clone(child_stack=0x7fabaf52dfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabaf52e9d0, tls=0x7fabaf52e700, child_tidptr=0x7fabaf52e9d0) = 9715
9715  set_robust_list(0x7fabaf52e9e0, 24 <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
9715  <... set_robust_list resumed> )   = 0
9715  mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9715  <... mmap resumed> )              = 0x7faba6d2e000
9714  <... rt_sigprocmask resumed> [], 8) = 0
9715  munmap(0x7faba6d2e000, 19734528 <unfinished ...>
9714  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7faba77ff000
9715  <... munmap resumed> )            = 0
9714  mprotect(0x7faba7800000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9715  munmap(0x7fabac000000, 47374336 <unfinished ...>
9714  <... mprotect resumed> )          = 0
9715  <... munmap resumed> )            = 0
9715  mprotect(0x7faba8000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9714  clone( <unfinished ...>
9715  <... mprotect resumed> )          = 0
9715  sigaltstack(NULL,  <unfinished ...>
9714  <... clone resumed> child_stack=0x7faba7ffefb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7faba7fff9d0, tls=0x7faba7fff700, child_tidptr=0x7faba7fff9d0) = 9716
9714  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9716  set_robust_list(0x7faba7fff9e0, 24 <unfinished ...>
9715  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9716  <... set_robust_list resumed> )   = 0
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9715  sigaltstack({ss_sp=0xc000046000, ss_flags=0, ss_size=32768},  <unfinished ...>
9714  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9716  mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9714  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=596248988}) = 0
9715  <... sigaltstack resumed> NULL)   = 0
9714  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9716  <... mmap resumed> )              = 0x7fab9f7ff000
9714  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=596293562}) = 0
9716  munmap(0x7fab9f7ff000, 8392704 <unfinished ...>
9715  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9716  <... munmap resumed> )            = 0
9714  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9716  munmap(0x7faba4000000, 58716160 <unfinished ...>
9714  <... rt_sigprocmask resumed> [], 8) = 0
9716  <... munmap resumed> )            = 0
9714  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
9716  mprotect(0x7faba0000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9714  <... mmap resumed> )              = 0x7fabae52d000
9716  <... mprotect resumed> )          = 0
9714  mprotect(0x7fabae52e000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9715  <... rt_sigprocmask resumed> NULL, 8) = 0
9714  <... mprotect resumed> )          = 0
9716  sigaltstack(NULL,  <unfinished ...>
9715  gettid( <unfinished ...>
9714  clone( <unfinished ...>
9716  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9715  <... gettid resumed> )            = 9715
9716  sigaltstack({ss_sp=0xc00004e000, ss_flags=0, ss_size=32768}, NULL) = 0
9714  <... clone resumed> child_stack=0x7fabaed2cfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabaed2d9d0, tls=0x7fabaed2d700, child_tidptr=0x7fabaed2d9d0) = 9717
9717  set_robust_list(0x7fabaed2d9e0, 24 <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9717  <... set_robust_list resumed> )   = 0
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9717  mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9717  <... mmap resumed> )              = 0x7fab98000000
9716  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9717  munmap(0x7fab9c000000, 67108864 <unfinished ...>
9716  <... rt_sigprocmask resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9717  <... munmap resumed> )            = 0
9716  gettid( <unfinished ...>
9717  mprotect(0x7fab98000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9716  <... gettid resumed> )            = 9716
9717  <... mprotect resumed> )          = 0
9717  sigaltstack(NULL,  <unfinished ...>
9716  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9717  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9716  <... rt_sigprocmask resumed> [], 8) = 0
9717  sigaltstack({ss_sp=0xc00005c000, ss_flags=0, ss_size=32768},  <unfinished ...>
9716  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
9717  <... sigaltstack resumed> NULL)   = 0
9716  <... mmap resumed> )              = 0x7fabadd2c000
9717  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9716  mprotect(0x7fabadd2d000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9717  <... rt_sigprocmask resumed> NULL, 8) = 0
9716  <... mprotect resumed> )          = 0
9717  gettid( <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9717  <... gettid resumed> )            = 9717
9716  clone( <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9717  futex(0x5ae8e8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=596949998}) = 0
9714  <... futex resumed> )             = 0
9718  set_robust_list(0x7fabae52c9e0, 24 <unfinished ...>
9717  <... futex resumed> )             = 1
9714  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9718  <... set_robust_list resumed> )   = 0
9714  <... rt_sigprocmask resumed> [], 8) = 0
9718  mmap(0x7fab9c000000, 67108864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9714  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
9718  <... mmap resumed> )              = 0x7fab9c000000
9714  <... mmap resumed> )              = 0x7fabad52b000
9718  mprotect(0x7fab9c000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9714  mprotect(0x7fabad52c000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9718  <... mprotect resumed> )          = 0
9714  <... mprotect resumed> )          = 0
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9718  sigaltstack(NULL,  <unfinished ...>
9714  clone( <unfinished ...>
9718  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9716  <... clone resumed> child_stack=0x7fabae52bfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabae52c9d0, tls=0x7fabae52c700, child_tidptr=0x7fabae52c9d0) = 9718
9718  sigaltstack({ss_sp=0xc000068000, ss_flags=0, ss_size=32768},  <unfinished ...>
9714  <... clone resumed> child_stack=0x7fabadd2afb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabadd2b9d0, tls=0x7fabadd2b700, child_tidptr=0x7fabadd2b9d0) = 9719
9719  set_robust_list(0x7fabadd2b9e0, 24 <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9719  <... set_robust_list resumed> )   = 0
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9719  mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  <... mmap resumed> )              = 0x7fab90000000
9718  <... sigaltstack resumed> NULL)   = 0
9719  munmap(0x7fab94000000, 67108864 <unfinished ...>
9718  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9719  <... munmap resumed> )            = 0
9718  <... rt_sigprocmask resumed> NULL, 8) = 0
9719  mprotect(0x7fab90000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9718  gettid( <unfinished ...>
9719  <... mprotect resumed> )          = 0
9718  <... gettid resumed> )            = 9718
9716  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9719  sigaltstack(NULL,  <unfinished ...>
9718  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9718  <... futex resumed> )             = 1
9719  sigaltstack({ss_sp=0xc000072000, ss_flags=0, ss_size=32768},  <unfinished ...>
9718  futex(0x5ae8e8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... sigaltstack resumed> NULL)   = 0
9717  <... futex resumed> )             = 0
9714  <... futex resumed> )             = 0
9719  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9718  <... futex resumed> )             = 1
9719  <... rt_sigprocmask resumed> NULL, 8) = 0
9718  sched_yield( <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9719  gettid( <unfinished ...>
9714  <... rt_sigprocmask resumed> [], 8) = 0
9719  <... gettid resumed> )            = 9719
9714  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
9719  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  <... mmap resumed> )              = 0x7fabacd2a000
9718  <... sched_yield resumed> )       = 0
9714  mprotect(0x7fabacd2b000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9718  futex(0x5adeb0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... mprotect resumed> )          = 0
9718  <... futex resumed> )             = 0
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  clone( <unfinished ...>
9718  futex(0xc000064148, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9716  <... rt_sigprocmask resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... clone resumed> child_stack=0x7fabad529fb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabad52a9d0, tls=0x7fabad52a700, child_tidptr=0x7fabad52a9d0) = 9720
9720  set_robust_list(0x7fabad52a9e0, 24 <unfinished ...>
9714  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9720  <... set_robust_list resumed> )   = 0
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9720  mmap(0x7fab94000000, 67108864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9720  <... mmap resumed> )              = 0x7fab94000000
9720  mprotect(0x7fab94000000, 135168, PROT_READ|PROT_WRITE) = 0
9715  <... nanosleep resumed> NULL)     = 0
9720  sigaltstack(NULL,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9720  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9714  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=597965385}) = 0
9720  sigaltstack({ss_sp=0xc000080000, ss_flags=0, ss_size=32768},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=597956304}) = 0
9714  readlinkat(AT_FDCWD, "/proc/self/exe",  <unfinished ...>
9720  <... sigaltstack resumed> NULL)   = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... readlinkat resumed> "/home/admin/test", 128) = 16
9720  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9714  fcntl(0, F_GETFL <unfinished ...>
9720  <... rt_sigprocmask resumed> NULL, 8) = 0
9714  <... fcntl resumed> )             = 0x402 (flags O_RDWR|O_APPEND)
9720  gettid( <unfinished ...>
9714  futex(0xc000034848, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9720  <... gettid resumed> )            = 9720
9714  <... futex resumed> )             = 1
9720  futex(0x5c9438, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
9716  <... futex resumed> )             = 0
9714  <... mmap resumed> )              = 0x7fabaccea000
9716  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  fcntl(1, F_GETFL <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  <... fcntl resumed> )             = 0x402 (flags O_RDWR|O_APPEND)
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=598297860}) = 0
9714  fcntl(2, F_GETFL <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... fcntl resumed> )             = 0x402 (flags O_RDWR|O_APPEND)
9714  getuid()                          = 0
9716  <... nanosleep resumed> NULL)     = 0
9714  socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0 <unfinished ...>
9716  futex(0xc000064148, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... socket resumed> )            = 3
9718  <... futex resumed> )             = 0
9714  connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110 <unfinished ...>
9718  futex(0xc000034f48, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9716  <... futex resumed> )             = 1
9714  <... connect resumed> )           = -1 ENOENT (No such file or directory)
9719  <... futex resumed> )             = 0
9714  close(3 <unfinished ...>
9719  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  <... close resumed> )             = 0
9718  <... futex resumed> )             = 1
9714  socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0 <unfinished ...>
9718  futex(0x5c9520, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  <... socket resumed> )            = 3
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... connect resumed> )           = -1 ENOENT (No such file or directory)
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  close(3 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=598722553}) = 0
9714  <... close resumed> )             = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  openat(AT_FDCWD, "/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
9714  fstat(3, {st_mode=S_IFREG|0644, st_size=572, ...}) = 0
9714  read(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... read resumed> "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 572
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  read(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=598986660}) = 0
9714  <... read resumed> "", 4096)      = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  close(3)                          = 0
9714  openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
9715  <... nanosleep resumed> NULL)     = 0
9714  fstat(3,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=68053, ...}) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=599195983}) = 0
9714  mmap(NULL, 68053, PROT_READ, MAP_PRIVATE, 3, 0 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... mmap resumed> )              = 0x7fabaccd9000
9714  close(3)                          = 0
9714  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
9714  read(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... read resumed> "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0003\0\0\0\0\0\0"..., 832) = 832
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=599474188}) = 0
9714  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=55792, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  mmap(NULL, 83768, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fabaccc4000
9714  mprotect(0x7fabaccc7000, 40960, PROT_NONE) = 0
9714  mmap(0x7fabaccc7000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fabaccc7000
9714  mmap(0x7fabaccce000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... mmap resumed> )              = 0x7fabaccce000
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  mmap(0x7fabaccd1000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=599740746}) = 0
9714  <... mmap resumed> )              = 0x7fabaccd1000
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  mmap(0x7fabaccd3000, 22328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fabaccd3000
9714  close(3)                          = 0
9714  mprotect(0x7fabaccd1000, 4096, PROT_READ <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... mprotect resumed> )          = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  munmap(0x7fabaccd9000, 68053 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=600000627}) = 0
9714  <... munmap resumed> )            = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
9714  lseek(3, 0, SEEK_CUR)             = 0
9714  fstat(3, {st_mode=S_IFREG|0644, st_size=2388, ...}) = 0
9715  <... nanosleep resumed> NULL)     = 0
9714  read(3,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  <... read resumed> "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=600325625}) = 0
9714  close(3 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... close resumed> )             = 0
9714  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
9714  lseek(3, 0, SEEK_CUR)             = 0
9714  fstat(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=2388, ...}) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  read(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=600582761}) = 0
9714  <... read resumed> "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  close(3)                          = 0
9714  getpid()                          = 9714
9714  tgkill(9714, 9720, SIGRT_1)       = 0
9720  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  getpid( <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9714  <... getpid resumed> )            = 9714
9720  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9714  tgkill(9714, 9719, SIGRT_1 <unfinished ...>
9720  getpid( <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9714  <... tgkill resumed> )            = 0
9720  <... getpid resumed> )            = 9714
9714  getpid( <unfinished ...>
9720  setreuid(0, 65534 <unfinished ...>
9714  <... getpid resumed> )            = 9714
9720  <... setreuid resumed> )          = 0
9714  tgkill(9714, 9718, SIGRT_1 <unfinished ...>
9720  futex(0x7fabad52ad1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... tgkill resumed> )            = 0
9720  <... futex resumed> )             = 0
9714  getpid( <unfinished ...>
9720  rt_sigreturn({mask=[]} <unfinished ...>
9714  <... getpid resumed> )            = 9714
9720  <... rt_sigreturn resumed> )      = 202
9714  tgkill(9714, 9717, SIGRT_1 <unfinished ...>
9720  futex(0x5c9438, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  <... tgkill resumed> )            = 0
9719  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9714  getpid( <unfinished ...>
9719  getpid( <unfinished ...>
9714  <... getpid resumed> )            = 9714
9719  <... getpid resumed> )            = 9714
9714  tgkill(9714, 9716, SIGRT_1 <unfinished ...>
9719  setreuid(0, 65534 <unfinished ...>
9718  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  <... tgkill resumed> )            = 0
9719  <... setreuid resumed> )          = 0
9714  getpid( <unfinished ...>
9719  futex(0x7fabadd2bd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... getpid resumed> )            = 9714
9719  <... futex resumed> )             = 0
9714  tgkill(9714, 9715, SIGRT_1 <unfinished ...>
9719  rt_sigreturn({mask=[]} <unfinished ...>
9718  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9714  <... tgkill resumed> )            = 0
9717  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  futex(0x7ffd65219bc0, FUTEX_WAIT_PRIVATE, 4, NULL <unfinished ...>
9718  getpid( <unfinished ...>
9719  <... rt_sigreturn resumed> )      = 202
9718  <... getpid resumed> )            = 9714
9719  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9718  setreuid(0, 65534 <unfinished ...>
9717  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9718  <... setreuid resumed> )          = 0
9717  getpid( <unfinished ...>
9718  futex(0x7fabae52cd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9717  <... getpid resumed> )            = 9714
9718  <... futex resumed> )             = 0
9717  setreuid(0, 65534 <unfinished ...>
9718  rt_sigreturn({mask=[]} <unfinished ...>
9717  <... setreuid resumed> )          = 0
9718  <... rt_sigreturn resumed> )      = 202
9717  futex(0x7fabaed2dd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9718  futex(0x5c9520, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9717  <... futex resumed> )             = 0
9716  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9717  rt_sigreturn({mask=[]} <unfinished ...>
9716  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9717  <... rt_sigreturn resumed> )      = 202
9716  getpid( <unfinished ...>
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9716  <... getpid resumed> )            = 9714
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=600869703}) = 0
9716  setreuid(0, 65534 <unfinished ...>
9715  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9716  <... setreuid resumed> )          = 0
9715  getpid( <unfinished ...>
9716  futex(0x7faba7fffd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  <... getpid resumed> )            = 9714
9716  <... futex resumed> )             = 0
9715  setreuid(0, 65534 <unfinished ...>
9716  rt_sigreturn({mask=[]} <unfinished ...>
9715  <... setreuid resumed> )          = 0
9716  <... rt_sigreturn resumed> )      = 202
9715  futex(0x7fabaf52ed1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9715  <... futex resumed> )             = 0
9715  futex(0x7ffd65219bc0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... futex resumed> )             = 0
9715  <... futex resumed> )             = 1
9714  setreuid(0, 65534 <unfinished ...>
9715  rt_sigreturn({mask=[]} <unfinished ...>
9714  <... setreuid resumed> )          = 0
9715  <... rt_sigreturn resumed> )      = 0
9714  geteuid( <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9714  <... geteuid resumed> )           = 65534
9714  futex(0xc000034f48, FUTEX_WAKE_PRIVATE, 1) = 1
9719  <... futex resumed> )             = 0
9714  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
9719  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9714  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
9719  <... nanosleep resumed> NULL)     = 0
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9719  futex(0xc000034848, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9719  <... futex resumed> )             = 1
9714  <... futex resumed> )             = 1
9717  <... futex resumed> )             = 0
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9716  <... futex resumed> )             = 0
9714  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
9719  newfstatat(AT_FDCWD, "/usr/local/sbin/whoami",  <unfinished ...>
9714  futex(0xc000034848, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9717  futex(0x5ae8e8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... futex resumed> )             = 0
9719  <... newfstatat resumed> 0xc0000b2108, 0) = -1 ENOENT (No such file or directory)
9714  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
9719  newfstatat(AT_FDCWD, "/usr/local/bin/whoami",  <unfinished ...>
9714  <... rt_sigprocmask resumed> NULL, 8) = 0
9719  <... newfstatat resumed> 0xc0000b21d8, 0) = -1 ENOENT (No such file or directory)
9714  futex(0x5c9438, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  newfstatat(AT_FDCWD, "/usr/sbin/whoami",  <unfinished ...>
9714  <... futex resumed> )             = 1
9720  <... futex resumed> )             = 0
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9720  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1],  <unfinished ...>
9719  <... newfstatat resumed> 0xc0000b22a8, 0) = -1 ENOENT (No such file or directory)
9720  <... rt_sigprocmask resumed> [], 8) = 0
9719  newfstatat(AT_FDCWD, "/usr/bin/whoami",  <unfinished ...>
9720  mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
9719  <... newfstatat resumed> {st_mode=S_IFREG|0755, st_size=35456, ...}, 0) = 0
9720  <... mmap resumed> )              = 0x7fabac4c3000
9717  <... futex resumed> )             = 0
9720  mprotect(0x7fabac4c4000, 8388608, PROT_READ|PROT_WRITE <unfinished ...>
9719  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC <unfinished ...>
9720  <... mprotect resumed> )          = 0
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  <... openat resumed> )            = 3
9720  clone( <unfinished ...>
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  lseek(3, 0, SEEK_CUR <unfinished ...>
9716  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
9719  <... lseek resumed> )             = 0
9721  set_robust_list(0x7fabaccc39e0, 24 <unfinished ...>
9720  <... clone resumed> child_stack=0x7fabaccc2fb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fabaccc39d0, tls=0x7fabaccc3700, child_tidptr=0x7fabaccc39d0) = 9721
9721  <... set_robust_list resumed> )   = 0
9720  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9721  mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
9720  <... rt_sigprocmask resumed> NULL, 8) = 0
9721  <... mmap resumed> )              = 0x7fab88000000
9720  futex(0x5c9438, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9721  munmap(0x7fab8c000000, 67108864 <unfinished ...>
9719  fstat(3,  <unfinished ...>
9716  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9721  <... munmap resumed> )            = 0
9719  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=2388, ...}) = 0
9721  mprotect(0x7fab88000000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
9717  <... futex resumed> )             = 0
9721  <... mprotect resumed> )          = 0
9719  read(3,  <unfinished ...>
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9721  sigaltstack(NULL,  <unfinished ...>
9719  <... read resumed> "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
9721  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
9716  <... futex resumed> )             = 1
9721  sigaltstack({ss_sp=0xc0000b6000, ss_flags=0, ss_size=32768},  <unfinished ...>
9719  close(3 <unfinished ...>
9721  <... sigaltstack resumed> NULL)   = 0
9719  <... close resumed> )             = 0
9721  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9716  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9721  <... rt_sigprocmask resumed> NULL, 8) = 0
9719  clock_gettime(CLOCK_REALTIME,  <unfinished ...>
9721  gettid( <unfinished ...>
9719  <... clock_gettime resumed> {tv_sec=1601405013, tv_nsec=750536312}) = 0
9721  <... gettid resumed> )            = 9721
9719  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9721  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
9719  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=602820290}) = 0
9717  <... futex resumed> )             = 0
9716  <... futex resumed> )             = 1
9719  write(2, "test.go:31: Calling setreuid\n", 29 <unfinished ...>
9717  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
9716  futex(0x5ae8e8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... write resumed> )             = 29
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  getpid( <unfinished ...>
9716  <... futex resumed> )             = 1
9719  <... getpid resumed> )            = 9714
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  tgkill(9714, 9721, SIGRT_1 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=602925177}) = 0
9719  <... tgkill resumed> )            = 0
9721  <... nanosleep resumed> NULL)     = 0
9719  getpid( <unfinished ...>
9721  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9719  <... getpid resumed> )            = 9714
9721  getpid( <unfinished ...>
9719  tgkill(9714, 9720, SIGRT_1 <unfinished ...>
9721  <... getpid resumed> )            = 9714
9717  <... nanosleep resumed> NULL)     = 0
9714  <... futex resumed> )             = 0
9721  setreuid(65534, 0 <unfinished ...>
9719  <... tgkill resumed> )            = 0
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9721  <... setreuid resumed> )          = 0
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9720  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9721  futex(0x7fabaccc3d1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9720  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9721  <... futex resumed> )             = 0
9720  getpid( <unfinished ...>
9721  rt_sigreturn({mask=[]} <unfinished ...>
9720  <... getpid resumed> )            = 9714
9721  <... rt_sigreturn resumed> )      = 0
9720  setreuid(65534, 0 <unfinished ...>
9721  futex(0xc00007cf48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9720  <... setreuid resumed> )          = 0
9719  getpid( <unfinished ...>
9720  futex(0x7fabad52ad1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... getpid resumed> )            = 9714
9720  <... futex resumed> )             = 0
9719  tgkill(9714, 9718, SIGRT_1 <unfinished ...>
9720  futex(0x7fabadd2adf0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9720  <... futex resumed> )             = 0
9719  <... tgkill resumed> )            = 0
9720  rt_sigreturn({mask=[]} <unfinished ...>
9719  getpid( <unfinished ...>
9720  <... rt_sigreturn resumed> )      = 202
9719  <... getpid resumed> )            = 9714
9720  futex(0x5c9438, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  tgkill(9714, 9717, SIGRT_1 <unfinished ...>
9718  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9719  <... tgkill resumed> )            = 0
9718  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9719  getpid( <unfinished ...>
9718  getpid( <unfinished ...>
9719  <... getpid resumed> )            = 9714
9718  <... getpid resumed> )            = 9714
9719  tgkill(9714, 9716, SIGRT_1 <unfinished ...>
9718  setreuid(65534, 0 <unfinished ...>
9719  <... tgkill resumed> )            = 0
9718  <... setreuid resumed> )          = 0
9719  getpid( <unfinished ...>
9718  futex(0x7fabae52cd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... getpid resumed> )            = 9714
9718  <... futex resumed> )             = 0
9719  tgkill(9714, 9715, SIGRT_1 <unfinished ...>
9718  rt_sigreturn({mask=[]} <unfinished ...>
9717  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9718  <... rt_sigreturn resumed> )      = 202
9719  <... tgkill resumed> )            = 0
9718  futex(0x5c9520, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  getpid( <unfinished ...>
9717  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9719  <... getpid resumed> )            = 9714
9717  getpid( <unfinished ...>
9719  tgkill(9714, 9714, SIGRT_1 <unfinished ...>
9717  <... getpid resumed> )            = 9714
9719  <... tgkill resumed> )            = 0
9714  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9719  futex(0x7fabadd2adf0, FUTEX_WAIT_PRIVATE, 4, NULL <unfinished ...>
9714  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9717  setreuid(65534, 0 <unfinished ...>
9714  getpid( <unfinished ...>
9717  <... setreuid resumed> )          = 0
9714  <... getpid resumed> )            = 9714
9717  futex(0x7fabaed2dd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  setreuid(65534, 0 <unfinished ...>
9717  <... futex resumed> )             = 0
9714  <... setreuid resumed> )          = 0
9717  rt_sigreturn({mask=[]} <unfinished ...>
9714  futex(0x7fabb1790d5c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9717  <... rt_sigreturn resumed> )      = 202
9714  <... futex resumed> )             = 0
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9714  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]} <unfinished ...>
9716  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  <... rt_sigreturn resumed> )      = 202
9716  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9716  getpid( <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9716  <... getpid resumed> )            = 9714
9715  --- SIGRT_1 {si_signo=SIGRT_1, si_code=SI_TKILL, si_pid=9714, si_uid=0} ---
9716  setreuid(65534, 0 <unfinished ...>
9715  getpid( <unfinished ...>
9716  <... setreuid resumed> )          = 0
9715  <... getpid resumed> )            = 9714
9716  futex(0x7faba7fffd1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  setreuid(65534, 0 <unfinished ...>
9716  <... futex resumed> )             = 0
9715  <... setreuid resumed> )          = 0
9716  rt_sigreturn({mask=[]} <unfinished ...>
9715  futex(0x7fabaf52ed1c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9716  <... rt_sigreturn resumed> )      = 202
9715  <... futex resumed> )             = 0
9716  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9715  futex(0x7fabadd2adf0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9719  <... futex resumed> )             = 0
9715  <... futex resumed> )             = 1
9719  setreuid(65534, 0)                = 0
9715  rt_sigreturn({mask=[]} <unfinished ...>
9719  geteuid( <unfinished ...>
9715  <... rt_sigreturn resumed> )      = 0
9719  <... geteuid resumed> )           = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  clock_gettime(CLOCK_REALTIME,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=604244242}) = 0
9719  <... clock_gettime resumed> {tv_sec=1601405013, tv_nsec=752009144}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9719  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=604298698}) = 0
9719  write(2, "test.go:40: Running command\n", 28) = 28
9719  openat(AT_FDCWD, "/dev/null", O_RDONLY|O_CLOEXEC) = 3
9715  <... nanosleep resumed> NULL)     = 0
9719  epoll_create1(EPOLL_CLOEXEC)      = 4
9719  mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  <... mmap resumed> )              = 0x7fabac483000
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=604637508}) = 0
9719  epoll_ctl(4, EPOLL_CTL_ADD, 3, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=2890415784, u64=140375306550952}} <unfinished ...>
9715  epoll_pwait(4,  <unfinished ...>
9719  <... epoll_ctl resumed> )         = -1 EPERM (Operation not permitted)
9715  <... epoll_pwait resumed> [], 128, 0, NULL, 8909472) = 0
9719  epoll_ctl(4, EPOLL_CTL_DEL, 3, 0xc000043b74 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9719  <... epoll_ctl resumed> )         = -1 EPERM (Operation not permitted)
9719  pipe2([5, 6], O_CLOEXEC)          = 0
9719  epoll_ctl(4, EPOLL_CTL_ADD, 5, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=2890415784, u64=140375306550952}}) = 0
9719  fcntl(5, F_GETFL <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9719  <... fcntl resumed> )             = 0 (flags O_RDONLY)
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  fcntl(5, F_SETFL, O_RDONLY|O_NONBLOCK <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=604983000}) = 0
9719  <... fcntl resumed> )             = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9719  epoll_ctl(4, EPOLL_CTL_ADD, 6, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=2890415576, u64=140375306550744}}) = 0
9719  fcntl(6, F_GETFL)                 = 0x1 (flags O_WRONLY)
9719  fcntl(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0
9719  fcntl(6, F_GETFL <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9719  <... fcntl resumed> )             = 0x801 (flags O_WRONLY|O_NONBLOCK)
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  fcntl(6, F_SETFL, O_WRONLY <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=605264688}) = 0
9719  <... fcntl resumed> )             = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9719  fcntl(6, F_GETFL)                 = 0x1 (flags O_WRONLY)
9719  fcntl(6, F_SETFL, O_WRONLY)       = 0
9719  pipe2([7, 8], O_CLOEXEC)          = 0
9719  getpid( <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9719  <... getpid resumed> )            = 9714
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9719  rt_sigprocmask(SIG_SETMASK, NULL,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=605534126}) = 0
9719  <... rt_sigprocmask resumed> [], 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9719  rt_sigprocmask(SIG_SETMASK, ~[], NULL, 8) = 0
9719  clone( <unfinished ...>
9722  rt_sigaction(SIGHUP, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9715  <... nanosleep resumed> NULL)     = 0
9722  rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=605832063}) = 0
9722  rt_sigaction(SIGQUIT, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGILL, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGTRAP, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGABRT, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGBUS, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=606082978}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGFPE, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGUSR1, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGSEGV, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGUSR2, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGPIPE, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=606351912}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGALRM, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGTERM, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGSTKFLT, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGCHLD, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGURG, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=606619002}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGXCPU, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGXFSZ, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGVTALRM, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGPROF, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGWINCH, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=606888457}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGIO, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGPWR, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGSYS, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_2, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_3, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=607226908}) = 0
9722  rt_sigaction(SIGRT_4, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_5, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_6, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_7, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9715  <... nanosleep resumed> NULL)     = 0
9722  rt_sigaction(SIGRT_8, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_9, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=607505059}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_10, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_11, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_12, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_13, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9715  <... nanosleep resumed> NULL)     = 0
9722  rt_sigaction(SIGRT_14, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=607899465}) = 0
9722  rt_sigaction(SIGRT_15, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... rt_sigaction resumed> NULL, 8) = 0
9722  rt_sigaction(SIGRT_16, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_17, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_18, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGRT_19, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=608151009}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGRT_20, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_21, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_22, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_23, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGRT_24, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=608427842}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGRT_25, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_26, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_27, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_28, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  rt_sigaction(SIGRT_29, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0},  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=608693690}) = 0
9722  <... rt_sigaction resumed> NULL, 8) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  rt_sigaction(SIGRT_30, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_31, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigaction(SIGRT_32, {sa_handler=SIG_DFL, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x45a9f0}, NULL, 8) = 0
9722  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... rt_sigprocmask resumed> NULL, 8) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  dup2(3, 0 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=608960005}) = 0
9722  <... dup2 resumed> )              = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  dup2(6, 1)                        = 1
9722  dup2(6, 2)                        = 2
9722  execve("/usr/bin/whoami", ["whoami"], 0xc0000cc000 /* 12 vars */ <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9719  <... clone resumed> child_stack=NULL, flags=CLONE_VM|CLONE_VFORK|SIGCHLD) = 9722
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... execve resumed> )            = 0
9719  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=609289447}) = 0
9722  access("/etc/suid-debug", F_OK <unfinished ...>
9719  <... rt_sigprocmask resumed> NULL, 8) = 0
9722  <... access resumed> )            = -1 ENOENT (No such file or directory)
9719  close(8 <unfinished ...>
9722  brk(NULL <unfinished ...>
9719  <... close resumed> )             = 0
9722  <... brk resumed> )               = 0x555c651ed000
9719  read(7,  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  fcntl(0, F_GETFD <unfinished ...>
9719  <... read resumed> "", 8)         = 0
9722  <... fcntl resumed> )             = 0
9719  close(7 <unfinished ...>
9722  fcntl(1, F_GETFD)                 = 0
9719  <... close resumed> )             = 0
9722  fcntl(2, F_GETFD)                 = 0
9719  close(3 <unfinished ...>
9722  access("/etc/suid-debug", F_OK <unfinished ...>
9719  <... close resumed> )             = 0
9722  <... access resumed> )            = -1 ENOENT (No such file or directory)
9719  epoll_ctl(4, EPOLL_CTL_DEL, 6, 0xc000043c0c <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  access("/etc/ld.so.preload", R_OK <unfinished ...>
9719  <... epoll_ctl resumed> )         = 0
9722  <... access resumed> )            = -1 ENOENT (No such file or directory)
9719  close(6 <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC <unfinished ...>
9719  <... close resumed> )             = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=609680938}) = 0
9722  <... openat resumed> )            = 3
9719  futex(0xc00007cf48, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=68053, ...}) = 0
9721  <... futex resumed> )             = 0
9722  mmap(NULL, 68053, PROT_READ, MAP_PRIVATE, 3, 0 <unfinished ...>
9721  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
9719  <... futex resumed> )             = 1
9722  <... mmap resumed> )              = 0x7f315aa03000
9722  close(3 <unfinished ...>
9719  waitid(P_PID, 9722,  <unfinished ...>
9722  <... close resumed> )             = 0
9722  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
9715  <... nanosleep resumed> NULL)     = 0
9722  read(3,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... read resumed> "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260A\2\0\0\0\0\0"..., 832) = 832
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=609991761}) = 0
9722  fstat(3,  <unfinished ...>
9721  <... nanosleep resumed> NULL)     = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0755, st_size=1824496, ...}) = 0
9721  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9722  mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315aa01000
9721  <... futex resumed> )             = 1
9717  <... futex resumed> )             = 0
9722  mmap(NULL, 1837056, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0 <unfinished ...>
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a840000
9722  mprotect(0x7f315a862000, 1658880, PROT_NONE <unfinished ...>
9721  read(5,  <unfinished ...>
9722  <... mprotect resumed> )          = 0
9721  <... read resumed> 0xc0000d2000, 512) = -1 EAGAIN (Resource temporarily unavailable)
9722  mmap(0x7f315a862000, 1343488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000 <unfinished ...>
9721  epoll_pwait(4,  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a862000
9721  <... epoll_pwait resumed> [], 128, 0, NULL, 0) = 0
9722  mmap(0x7f315a9aa000, 311296, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16a000 <unfinished ...>
9721  epoll_pwait(4,  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a9aa000
9715  <... nanosleep resumed> NULL)     = 0
9722  mmap(0x7f315a9f7000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b6000 <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a9f7000
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=610351480}) = 0
9722  mmap(0x7f315a9fd000, 14336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a9fd000
9722  close(3)                          = 0
9722  arch_prctl(ARCH_SET_FS, 0x7f315aa02540) = 0
9715  <... nanosleep resumed> NULL)     = 0
9722  mprotect(0x7f315a9f7000, 16384, PROT_READ <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... mprotect resumed> )          = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=610649629}) = 0
9722  mprotect(0x555c64781000, 4096, PROT_READ <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... mprotect resumed> )          = 0
9722  mprotect(0x7f315aa3b000, 4096, PROT_READ) = 0
9722  munmap(0x7f315aa03000, 68053)     = 0
9715  <... nanosleep resumed> NULL)     = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  brk(NULL <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=610932206}) = 0
9722  <... brk resumed> )               = 0x555c651ed000
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  brk(0x555c6520e000)               = 0x555c6520e000
9722  openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
9715  <... nanosleep resumed> NULL)     = 0
9722  fstat(3,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=2995, ...}) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=611239623}) = 0
9722  read(3,  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... read resumed> "# Locale name alias data base.\n#"..., 4096) = 2995
9722  read(3, "", 4096)                 = 0
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = -1 ENOENT (No such file or directory)
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=611503370}) = 0
9722  <... openat resumed> )            = 3
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  fstat(3, {st_mode=S_IFREG|0644, st_size=368, ...}) = 0
9722  mmap(NULL, 368, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa13000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache", O_RDONLY <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=611770387}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=26402, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 26402, PROT_READ, MAP_SHARED, 3, 0) = 0x7f315aa0c000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_MEASUREMENT", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_MEASUREMENT", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=612050218}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=23, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 23, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa0b000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_TELEPHONE", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_TELEPHONE", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=612323122}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=59, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 59, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa0a000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_ADDRESS", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_ADDRESS", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=612595451}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=167, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 167, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa09000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_NAME", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_NAME", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=612867920}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=77, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 77, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa08000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_PAPER", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_PAPER", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... openat resumed> )            = 3
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=613152659}) = 0
9722  fstat(3,  <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=34, ...}) = 0
9722  mmap(NULL, 34, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa07000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_MESSAGES", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = -1 ENOENT (No such file or directory)
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_MESSAGES", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=613428642}) = 0
9722  <... openat resumed> )            = 3
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY|O_CLOEXEC) = 3
9722  fstat(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=57, ...}) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  mmap(NULL, 57, PROT_READ, MAP_PRIVATE, 3, 0 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=613701323}) = 0
9722  <... mmap resumed> )              = 0x7f315aa06000
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_MONETARY", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_MONETARY", O_RDONLY|O_CLOEXEC) = 3
9722  fstat(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=286, ...}) = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  mmap(NULL, 286, PROT_READ, MAP_PRIVATE, 3, 0 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=613972591}) = 0
9722  <... mmap resumed> )              = 0x7f315aa05000
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_COLLATE", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_COLLATE", O_RDONLY|O_CLOEXEC) = 3
9715  <... nanosleep resumed> NULL)     = 0
9722  fstat(3,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=2586242, ...}) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=614222815}) = 0
9722  mmap(NULL, 2586242, PROT_READ, MAP_PRIVATE, 3, 0 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  <... mmap resumed> )              = 0x7f315a5c8000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_TIME", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_TIME", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=614481812}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=3284, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 3284, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa04000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_NUMERIC", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_NUMERIC", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=614753796}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=54, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
9722  mmap(NULL, 54, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315aa03000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.UTF-8/LC_CTYPE", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
9722  openat(AT_FDCWD, "/usr/lib/locale/en_US.utf8/LC_CTYPE", O_RDONLY|O_CLOEXEC <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... openat resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  fstat(3,  <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=615027421}) = 0
9722  <... fstat resumed> {st_mode=S_IFREG|0644, st_size=337024, ...}) = 0
9715  nanosleep({tv_sec=0, tv_nsec=40000},  <unfinished ...>
9722  mmap(NULL, 337024, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315a575000
9722  close(3 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... close resumed> )             = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  geteuid( <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=615224419}) = 0
9722  <... geteuid resumed> )           = 0
9715  nanosleep({tv_sec=0, tv_nsec=80000},  <unfinished ...>
9722  socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
9722  connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
9722  close(3)                          = 0
9722  socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... socket resumed> )            = 3
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=615545120}) = 0
9722  <... connect resumed> )           = -1 ENOENT (No such file or directory)
9715  nanosleep({tv_sec=0, tv_nsec=160000},  <unfinished ...>
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
9722  fstat(3, {st_mode=S_IFREG|0644, st_size=572, ...}) = 0
9722  read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 572
9722  read(3,  <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... read resumed> "", 4096)      = 0
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  close(3 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=615908295}) = 0
9722  <... close resumed> )             = 0
9715  nanosleep({tv_sec=0, tv_nsec=320000},  <unfinished ...>
9722  openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
9722  fstat(3, {st_mode=S_IFREG|0644, st_size=68053, ...}) = 0
9722  mmap(NULL, 68053, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f315a564000
9722  close(3)                          = 0
9722  openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
9722  read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0003\0\0\0\0\0\0"..., 832) = 832
9722  fstat(3, {st_mode=S_IFREG|0644, st_size=55792, ...}) = 0
9722  mmap(NULL, 83768, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0 <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9722  <... mmap resumed> )              = 0x7f315a54f000
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  mprotect(0x7f315a552000, 40960, PROT_NONE <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=616431591}) = 0
9722  <... mprotect resumed> )          = 0
9715  nanosleep({tv_sec=0, tv_nsec=640000},  <unfinished ...>
9722  mmap(0x7f315a552000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f315a552000
9722  mmap(0x7f315a559000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7f315a559000
9722  mmap(0x7f315a55c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f315a55c000
9722  mmap(0x7f315a55e000, 22328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f315a55e000
9722  close(3)                          = 0
9722  mprotect(0x7f315a55c000, 4096, PROT_READ) = 0
9722  munmap(0x7f315a564000, 68053)     = 0
9722  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
9722  lseek(3, 0, SEEK_CUR)             = 0
9722  fstat(3, {st_mode=S_IFREG|0644, st_size=2388, ...}) = 0
9722  read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
9722  close(3)                          = 0
9715  <... nanosleep resumed> NULL)     = 0
9722  fstat(1,  <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... fstat resumed> {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
9715  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=617278129}) = 0
9722  write(1, "root\n", 5 <unfinished ...>
9715  nanosleep({tv_sec=0, tv_nsec=1280000},  <unfinished ...>
9722  <... write resumed> )             = 5
9721  <... epoll_pwait resumed> [{EPOLLIN, {u32=2890415784, u64=140375306550952}}], 128, -1, NULL, 3) = 1
9722  close(1 <unfinished ...>
9721  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9722  <... close resumed> )             = 0
9721  <... clock_gettime resumed> {tv_sec=1285586, tv_nsec=617380847}) = 0
9722  close(2 <unfinished ...>
9721  read(5,  <unfinished ...>
9722  <... close resumed> )             = 0
9721  <... read resumed> "root\n", 512) = 5
9722  exit_group(0)                     = ?
9721  read(5, "", 1531)                 = 0
9722  +++ exited with 0 +++
9721  epoll_ctl(4, EPOLL_CTL_DEL, 5, 0xc00003fe24 <unfinished ...>
9719  <... waitid resumed> {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=9722, si_uid=65534, si_status=0, si_utime=0, si_stime=0}, WEXITED|WNOWAIT, NULL) = 0
9721  <... epoll_ctl resumed> )         = 0
9719  --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=9722, si_uid=65534, si_status=0, si_utime=0, si_stime=0} ---
9721  close(5)                          = 0
9719  rt_sigreturn({mask=[]} <unfinished ...>
9721  epoll_pwait(4,  <unfinished ...>
9719  <... rt_sigreturn resumed> )      = 0
9721  <... epoll_pwait resumed> [], 128, 0, NULL, 824633982976) = 0
9721  epoll_pwait(4,  <unfinished ...>
9719  wait4(9722, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, {ru_utime={tv_sec=0, tv_usec=0}, ru_stime={tv_sec=0, tv_usec=6608}, ...}) = 9722
9719  clock_gettime(CLOCK_REALTIME, {tv_sec=1601405013, tv_nsec=765582946}) = 0
9719  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=617888861}) = 0
9719  write(2, "test.go:45: root\n", 17) = 17
9719  clock_gettime(CLOCK_REALTIME, {tv_sec=1601405013, tv_nsec=765781019}) = 0
9719  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=618085655}) = 0
9719  write(2, "test.go:46: Command complete\n", 29) = 29
9719  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9715  <... nanosleep resumed> NULL)     = 0
9715  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285586, tv_nsec=618796472}) = 0
9715  futex(0x5adfb0, FUTEX_WAIT_PRIVATE, 0, {tv_sec=60, tv_nsec=0} <unfinished ...>
9714  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
9714  --- SIGTERM {si_signo=SIGTERM, si_code=SI_USER, si_pid=10032, si_uid=0} ---
9714  futex(0x5c9520, FUTEX_WAKE_PRIVATE, 1) = 1
9718  <... futex resumed> )             = 0
9714  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]} <unfinished ...>
9718  futex(0x5adfb0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9714  <... rt_sigreturn resumed> )      = 202
9714  futex(0x5ae8e8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9718  <... futex resumed> )             = 1
9715  <... futex resumed> )             = 0
9718  futex(0xc000034f48, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
9718  <... futex resumed> )             = 1
9719  <... futex resumed> )             = 0
9718  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9715  <... clock_gettime resumed> {tv_sec=1285594, tv_nsec=521481912}) = 0
9719  futex(0xc000034848, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
9718  <... futex resumed> )             = 1
9717  <... futex resumed> )             = 0
9719  <... futex resumed> )             = 1
9718  futex(0x5c9520, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  exit_group(0 <unfinished ...>
9717  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
9719  <... exit_group resumed>)         = ?
9714  <... futex resumed>)              = ?
9721  <... epoll_pwait resumed> <unfinished ...>) = ?
9720  <... futex resumed>)              = ?
9719  +++ exited with 0 +++
9721  +++ exited with 0 +++
9718  <... futex resumed>)              = ?
9720  +++ exited with 0 +++
9717  <... futex resumed>)              = ?
9718  +++ exited with 0 +++
9716  <... futex resumed>)              = ?
9717  +++ exited with 0 +++
9716  +++ exited with 0 +++
9715  +++ exited with 0 +++
9714  +++ exited with 0 +++

[-- Attachment #3: musl_strace.txt --]
[-- Type: text/plain, Size: 56013 bytes --]

8238  execve("./test", ["./test"], 0x7ffd72c9f958 /* 12 vars */) = 0
8238  arch_prctl(ARCH_SET_FS, 0x5d2840) = 0
8238  set_tid_address(0x5d2ab0)         = 8238
8238  brk(NULL)                         = 0x1d86000
8238  brk(0x1d88000)                    = 0x1d88000
8238  mmap(0x1d86000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d86000
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b64585000
8238  munmap(0x7f2b64585000, 4096)      = 0
8238  sched_getaffinity(0, 8192, [0, 1, 2, 3]) = 64
8238  openat(AT_FDCWD, "/sys/kernel/mm/transparent_hugepage/hpage_pmd_size", O_RDONLY) = 3
8238  read(3, "2097152\n", 20)          = 8
8238  close(3)                          = 0
8238  mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b64546000
8238  mmap(0xc000000000, 67108864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
8238  mmap(0xc000000000, 67108864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xc000000000
8238  mmap(NULL, 33554432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b62546000
8238  mmap(NULL, 2164736, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b62335000
8238  mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b62325000
8238  mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b62315000
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568547878}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568623785}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568682073}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568741198}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568799229}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568856910}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568915069}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=568973296}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569031460}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569089101}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569146855}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569205266}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569263015}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569321306}) = 0
8238  rt_sigprocmask(SIG_SETMASK, NULL, [], 8) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569514898}) = 0
8238  clock_gettime(CLOCK_MONOTONIC, {tv_sec=1285556, tv_nsec=569571747}) = 0
8238  sigaltstack(NULL, {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  sigaltstack({ss_sp=0xc000002000, ss_flags=0, ss_size=32768}, NULL) = 0
8238  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
8238  gettid()                          = 8238
8238  rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigprocmask(SIG_UNBLOCK, [RT_1 RT_2], NULL, 8) = 0
8238  rt_sigaction(SIGHUP, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGINT, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGQUIT, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGILL, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGTRAP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGTRAP, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGABRT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigprocmask(SIG_BLOCK, ~[], [], 8) = 0
8238  rt_sigaction(SIGABRT, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
8238  rt_sigaction(SIGBUS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGBUS, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGFPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGFPE, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGUSR1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGUSR1, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGSEGV, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGUSR2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGUSR2, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGPIPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGPIPE, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGALRM, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGTERM, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGSTKFLT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGSTKFLT, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGCHLD, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGURG, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGURG, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGXCPU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGXCPU, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGXFSZ, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGXFSZ, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGVTALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGVTALRM, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGPROF, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGPROF, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGWINCH, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGWINCH, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGIO, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGIO, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGPWR, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGPWR, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGSYS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGSYS, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRTMIN, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_2, {sa_handler=0x458b80, sa_mask=~[], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x458c40}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_3, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_3, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_4, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_4, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_5, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_5, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_6, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_6, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_7, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_7, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_8, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_8, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_9, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_9, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_10, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_10, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_11, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_11, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_12, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_12, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_13, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_13, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_14, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_14, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_15, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_15, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_16, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_16, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_17, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_17, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_18, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_18, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_19, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_19, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_20, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_20, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_21, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_21, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_22, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_22, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_23, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_23, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_24, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_24, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_25, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_25, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_26, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_26, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_27, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_27, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_28, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_28, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_29, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_29, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_30, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_30, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_31, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_31, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  rt_sigaction(SIGRT_32, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
8238  rt_sigaction(SIGRT_32, {sa_handler=0x458b80, sa_mask=~[RTMIN RT_1 RT_2], sa_flags=SA_RESTORER|SA_ONSTACK|SA_RESTART|SA_SIGINFO, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b62314000
8238  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2], [], 8) = 0
8238  rt_sigprocmask(SIG_UNBLOCK, [RT_1 RT_2], NULL, 8) = 0
8238  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2b622f1000
8238  mprotect(0x7f2b622f3000, 135168, PROT_READ|PROT_WRITE) = 0
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2], ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8238  clone(child_stack=0x7f2b62313ee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b62313f68, tls=0x7f2b62313f38, child_tidptr=0x5d2ab0) = 8239
8239  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8239  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8239  munmap(0x7f2b62314000, 4096 <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
8239  <... munmap resumed> )            = 0
8239  sigaltstack(NULL,  <unfinished ...>
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8239  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  <... mmap resumed> )              = 0x7f2b62314000
8239  sigaltstack({ss_sp=0xc000046000, ss_flags=0, ss_size=32768},  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8239  <... sigaltstack resumed> NULL)   = 0
8238  <... rt_sigprocmask resumed> [], 8) = 0
8239  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8238  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8239  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... mmap resumed> )              = 0x7f2b622ce000
8239  gettid( <unfinished ...>
8238  mprotect(0x7f2b622d0000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8239  <... gettid resumed> )            = 8239
8238  <... mprotect resumed> )          = 0
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2], ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8238  clone(child_stack=0x7f2b622f0ee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b622f0f68, tls=0x7f2b622f0f38, child_tidptr=0x5d2ab0) = 8240
8240  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8240  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8240  munmap(0x7f2b62314000, 4096 <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8240  <... munmap resumed> )            = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8240  sigaltstack(NULL,  <unfinished ...>
8238  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8240  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=578521431}) = 0
8240  sigaltstack({ss_sp=0xc00004e000, ss_flags=0, ss_size=32768},  <unfinished ...>
8238  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8240  <... sigaltstack resumed> NULL)   = 0
8238  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=578567552}) = 0
8240  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8240  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8240  gettid( <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... mmap resumed> )              = 0x7f2b62314000
8240  <... gettid resumed> )            = 8240
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=578672468}) = 0
8238  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  <... rt_sigprocmask resumed> [], 8) = 0
8240  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8238  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8240  <... rt_sigprocmask resumed> [], 8) = 0
8238  <... mmap resumed> )              = 0x7f2b622ab000
8240  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8238  mprotect(0x7f2b622ad000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8240  <... mmap resumed> )              = 0x7f2b62288000
8238  <... mprotect resumed> )          = 0
8240  mprotect(0x7f2b6228a000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8240  <... mprotect resumed> )          = 0
8238  <... rt_sigprocmask resumed> ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8238  clone( <unfinished ...>
8240  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... clone resumed> child_stack=0x7f2b622cdee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b622cdf68, tls=0x7f2b622cdf38, child_tidptr=0x5d2ab0) = 8241
8241  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8241  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8241  sigaltstack(NULL,  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8241  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8241  sigaltstack({ss_sp=0xc00005c000, ss_flags=0, ss_size=32768},  <unfinished ...>
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8241  <... sigaltstack resumed> NULL)   = 0
8240  <... rt_sigprocmask resumed> ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8241  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8240  clone( <unfinished ...>
8241  <... rt_sigprocmask resumed> NULL, 8) = 0
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8241  gettid()                          = 8241
8242  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8241  futex(0x5b7ac8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8242  <... rt_sigprocmask resumed> NULL, 8) = 0
8240  <... clone resumed> child_stack=0x7f2b622aaee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b622aaf68, tls=0x7f2b622aaf38, child_tidptr=0x5d2ab0) = 8242
8238  <... futex resumed> )             = 0
8242  munmap(0x7f2b62314000, 4096 <unfinished ...>
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8241  <... futex resumed> )             = 1
8242  <... munmap resumed> )            = 0
8238  <... mmap resumed> )              = 0x7f2b62314000
8242  sigaltstack(NULL,  <unfinished ...>
8241  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8242  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  <... rt_sigprocmask resumed> [], 8) = 0
8242  sigaltstack({ss_sp=0xc000068000, ss_flags=0, ss_size=32768},  <unfinished ...>
8238  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8242  <... sigaltstack resumed> NULL)   = 0
8238  <... mmap resumed> )              = 0x7f2b62265000
8242  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8238  mprotect(0x7f2b62267000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8242  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... mprotect resumed> )          = 0
8242  gettid( <unfinished ...>
8240  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8242  <... gettid resumed> )            = 8242
8238  <... rt_sigprocmask resumed> ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8242  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  clone( <unfinished ...>
8240  <... rt_sigprocmask resumed> NULL, 8) = 0
8242  <... futex resumed> )             = 1
8241  <... futex resumed> )             = 0
8242  futex(0x5b7ac8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... clone resumed> child_stack=0x7f2b62287ee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b62287f68, tls=0x7f2b62287f38, child_tidptr=0x5d2ab0) = 8243
8243  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8243  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8243  munmap(0x7f2b62314000, 4096 <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8242  <... futex resumed> )             = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8243  <... munmap resumed> )            = 0
8242  futex(0xc000064148, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  sigaltstack(NULL,  <unfinished ...>
8241  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8238  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8243  sigaltstack({ss_sp=0xc000072000, ss_flags=0, ss_size=32768},  <unfinished ...>
8238  <... mmap resumed> )              = 0x7f2b62314000
8243  <... sigaltstack resumed> NULL)   = 0
8240  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8243  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8238  <... rt_sigprocmask resumed> [], 8) = 0
8243  <... rt_sigprocmask resumed> NULL, 8) = 0
8240  <... rt_sigprocmask resumed> NULL, 8) = 0
8243  gettid( <unfinished ...>
8238  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8243  <... gettid resumed> )            = 8243
8238  <... mmap resumed> )              = 0x7f2b62242000
8243  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  mprotect(0x7f2b62244000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8240  futex(0xc000034848, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=579163958}) = 0
8238  <... mprotect resumed> )          = 0
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2], ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8238  clone(child_stack=0x7f2b62264ee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b62264f68, tls=0x7f2b62264f38, child_tidptr=0x5d2ab0) = 8244
8244  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8244  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8244  munmap(0x7f2b62314000, 4096 <unfinished ...>
8238  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8244  <... munmap resumed> )            = 0
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8244  sigaltstack(NULL,  <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=580202019}) = 0
8244  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8244  sigaltstack({ss_sp=0xc000080000, ss_flags=0, ss_size=32768}, NULL) = 0
8244  rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
8238  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8244  gettid( <unfinished ...>
8238  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=580388505}) = 0
8244  <... gettid resumed> )            = 8244
8238  readlinkat(AT_FDCWD, "/proc/self/exe",  <unfinished ...>
8244  futex(0x5d2d38, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... readlinkat resumed> "/home/admin/go/src/github.braint"..., 128) = 66
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  fcntl(0, F_GETFL <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=580515611}) = 0
8238  <... fcntl resumed> )             = 0x402 (flags O_RDWR|O_APPEND)
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  futex(0xc000034f48, FUTEX_WAKE_PRIVATE, 1) = 1
8243  <... futex resumed> )             = 0
8238  mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8243  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
8238  <... mmap resumed> )              = 0x7f2b62202000
8238  fcntl(1, F_GETFL)                 = 0x402 (flags O_RDWR|O_APPEND)
8238  fcntl(2, F_GETFL <unfinished ...>
8243  <... nanosleep resumed> NULL)     = 0
8238  <... fcntl resumed> )             = 0x402 (flags O_RDWR|O_APPEND)
8243  futex(0xc000034848, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8243  <... futex resumed> )             = 1
8238  getuid( <unfinished ...>
8243  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
8238  <... getuid resumed> )            = 0
8240  <... futex resumed> )             = 0
8238  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC <unfinished ...>
8240  futex(0x5d2e20, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... openat resumed> )            = 3
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=580911141}) = 0
8238  epoll_create1(EPOLL_CLOEXEC <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  <... epoll_create1 resumed> )     = 4
8238  epoll_ctl(4, EPOLL_CTL_ADD, 3, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=1646292648, u64=139824306613928}}) = -1 EPERM (Operation not permitted)
8243  <... nanosleep resumed> NULL)     = 0
8238  epoll_ctl(4, EPOLL_CTL_DEL, 3, 0xc00003ea94 <unfinished ...>
8243  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  <... epoll_ctl resumed> )         = -1 EPERM (Operation not permitted)
8238  read(3,  <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... read resumed> "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  close(3 <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=581185499}) = 0
8238  <... close resumed> )             = 0
8239  epoll_pwait(4,  <unfinished ...>
8238  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC <unfinished ...>
8239  <... epoll_pwait resumed> [], 128, 0, NULL, 2) = 0
8238  <... openat resumed> )            = 3
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  epoll_ctl(4, EPOLL_CTL_ADD, 3, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=1646292648, u64=139824306613928}}) = -1 EPERM (Operation not permitted)
8238  epoll_ctl(4, EPOLL_CTL_DEL, 3, 0xc00003ec2c) = -1 EPERM (Operation not permitted)
8238  read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
8238  close(3 <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... close resumed> )             = 0
8238  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... rt_sigprocmask resumed> [], 8) = 0
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=581609599}) = 0
8238  rt_sigprocmask(SIG_BLOCK, ~[],  <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  gettid()                          = 8238
8238  rt_sigaction(SIGRT_2, {sa_handler=0x4b96cf, sa_mask=~[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x4b566e}, NULL, 8) = 0
8238  tkill(8244, SIGRT_2)              = 0
8244  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8244  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  <... nanosleep resumed> NULL)     = 0
8244  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... futex resumed> )             = 0
8244  <... futex resumed> )             = 1
8238  tkill(8243, SIGRT_2 <unfinished ...>
8244  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=581925309}) = 0
8238  <... tkill resumed> )             = 0
8243  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8243  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8243  <... futex resumed> )             = 1
8238  tkill(8241, SIGRT_2 <unfinished ...>
8243  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  <... tkill resumed> )             = 0
8241  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8241  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8241  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8241  <... futex resumed> )             = 1
8238  tkill(8240, SIGRT_2 <unfinished ...>
8241  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... tkill resumed> )             = 0
8240  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8240  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8240  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=582342334}) = 0
8240  <... futex resumed> )             = 1
8238  <... futex resumed> )             = 0
8240  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  tkill(8242, SIGRT_2 <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  <... tkill resumed> )             = 0
8242  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8242  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8242  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8242  <... futex resumed> )             = 1
8238  tkill(8239, SIGRT_2 <unfinished ...>
8242  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  <... tkill resumed> )             = 0
8239  <... nanosleep resumed> NULL)     = 0
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8239  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8239  <... futex resumed> )             = 1
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  setreuid(0, 65534 <unfinished ...>
8238  <... futex resumed> )             = 1
8244  <... futex resumed> )             = 0
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8244  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8239  <... setreuid resumed> )          = 0
8239  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8239  <... futex resumed> )             = 1
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  rt_sigreturn({mask=[]} <unfinished ...>
8238  <... futex resumed> )             = 1
8243  <... futex resumed> )             = 0
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  setreuid(0, 65534 <unfinished ...>
8239  <... rt_sigreturn resumed> )      = 0
8238  <... futex resumed> )             = 1
8243  <... setreuid resumed> )          = 0
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8243  <... futex resumed> )             = 0
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  rt_sigreturn({mask=[]} <unfinished ...>
8241  <... futex resumed> )             = 0
8238  <... futex resumed> )             = 1
8243  <... rt_sigreturn resumed> )      = 202
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  futex(0xc000034f48, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8241  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  <... futex resumed> )             = 1
8242  <... futex resumed> )             = 0
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8242  setreuid(0, 65534 <unfinished ...>
8241  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8242  <... setreuid resumed> )          = 0
8241  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8242  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8240  <... futex resumed> )             = 0
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8242  <... futex resumed> )             = 1
8238  <... futex resumed> )             = 0
8242  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8240  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8242  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8240  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8238  <... futex resumed> )             = 1
8244  <... futex resumed> )             = 0
8242  rt_sigreturn({mask=[]} <unfinished ...>
8238  rt_sigaction(SIGRT_2, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x4b566e},  <unfinished ...>
8244  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8242  <... rt_sigreturn resumed> )      = 202
8238  <... rt_sigaction resumed> NULL, 8) = 0
8242  futex(0xc000064148, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8240  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  setreuid(0, 65534 <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=583190452}) = 0
8238  <... setreuid resumed> )          = 0
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1) = 1
8241  <... futex resumed> )             = 0
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8241  setreuid(0, 65534 <unfinished ...>
8238  <... futex resumed> )             = 1
8244  <... futex resumed> )             = 0
8241  <... setreuid resumed> )          = 0
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8244  setreuid(0, 65534 <unfinished ...>
8241  rt_sigreturn({mask=[]} <unfinished ...>
8238  <... futex resumed> )             = 1
8244  <... setreuid resumed> )          = 0
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8244  rt_sigreturn({mask=[]} <unfinished ...>
8238  <... futex resumed> )             = 0
8244  <... rt_sigreturn resumed> )      = 202
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8244  futex(0x5d2d38, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  <... futex resumed> )             = 0
8241  <... rt_sigreturn resumed> )      = 202
8238  futex(0x5d29c0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8240  <... futex resumed> )             = 0
8238  <... futex resumed> )             = 0
8241  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8240  setreuid(0, 65534 <unfinished ...>
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8240  <... setreuid resumed> )          = 0
8239  <... nanosleep resumed> NULL)     = 0
8240  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  <... futex resumed> )             = 0
8240  <... futex resumed> )             = 1
8238  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8240  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8240  <... futex resumed> )             = 0
8238  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8240  rt_sigreturn({mask=[]} <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=583823568}) = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8240  <... rt_sigreturn resumed> )      = 202
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8238  geteuid( <unfinished ...>
8240  futex(0x5d2e20, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  <... geteuid resumed> )           = 65534
8238  futex(0xc000034f48, FUTEX_WAKE_PRIVATE, 1) = 1
8243  <... futex resumed> )             = 0
8238  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
8243  nanosleep({tv_sec=0, tv_nsec=3000},  <unfinished ...>
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8238  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
8239  <... nanosleep resumed> NULL)     = 0
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8238  futex(0xc000064148, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=584219136}) = 0
8238  <... futex resumed> )             = 1
8242  <... futex resumed> )             = 0
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8243  <... nanosleep resumed> NULL)     = 0
8242  futex(0x5b7ac8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  futex(0xc000034bc8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8238  <... futex resumed> )             = 0
8243  <... futex resumed> )             = 1
8238  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
8242  <... futex resumed> )             = 1
8238  <... rt_sigprocmask resumed> NULL, 8) = 0
8241  <... futex resumed> )             = 0
8238  futex(0xc000064148, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  newfstatat(AT_FDCWD, "/usr/local/sbin/whoami",  <unfinished ...>
8238  <... futex resumed> )             = 0
8242  futex(0xc000064148, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  <... newfstatat resumed> 0xc0000be108, 0) = -1 ENOENT (No such file or directory)
8242  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8243  newfstatat(AT_FDCWD, "/usr/local/bin/whoami",  <unfinished ...>
8241  mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8243  <... newfstatat resumed> 0xc0000be1d8, 0) = -1 ENOENT (No such file or directory)
8242  futex(0xc000064148, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  newfstatat(AT_FDCWD, "/usr/sbin/whoami",  <unfinished ...>
8241  <... mmap resumed> )              = 0x7f2b62314000
8243  <... newfstatat resumed> 0xc0000be2a8, 0) = -1 ENOENT (No such file or directory)
8239  <... nanosleep resumed> NULL)     = 0
8241  rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8243  newfstatat(AT_FDCWD, "/usr/bin/whoami",  <unfinished ...>
8241  <... rt_sigprocmask resumed> [], 8) = 0
8243  <... newfstatat resumed> {st_mode=S_IFREG|0755, st_size=35456, ...}, 0) = 0
8241  mmap(NULL, 143360, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8243  openat(AT_FDCWD, "/etc/passwd", O_RDONLY|O_CLOEXEC <unfinished ...>
8241  <... mmap resumed> )              = 0x7f2b621df000
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=584706769}) = 0
8243  <... openat resumed> )            = 3
8241  mprotect(0x7f2b621e1000, 135168, PROT_READ|PROT_WRITE <unfinished ...>
8243  epoll_ctl(4, EPOLL_CTL_ADD, 3, {EPOLLIN|EPOLLOUT|EPOLLRDHUP|EPOLLET, {u32=1646292648, u64=139824306613928}} <unfinished ...>
8241  <... mprotect resumed> )          = 0
8243  <... epoll_ctl resumed> )         = -1 EPERM (Operation not permitted)
8241  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8243  epoll_ctl(4, EPOLL_CTL_DEL, 3, 0xc000043ca4 <unfinished ...>
8241  <... rt_sigprocmask resumed> ~[KILL STOP RTMIN RT_1 RT_2], 8) = 0
8243  <... epoll_ctl resumed> )         = -1 EPERM (Operation not permitted)
8241  clone( <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8243  read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2388
8245  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8243  close(3 <unfinished ...>
8245  <... rt_sigprocmask resumed> NULL, 8) = 0
8243  <... close resumed> )             = 0
8245  munmap(0x7f2b62314000, 4096 <unfinished ...>
8243  clock_gettime(CLOCK_REALTIME,  <unfinished ...>
8241  <... clone resumed> child_stack=0x7f2b62201ee8, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|0x400000, parent_tidptr=0x7f2b62201f68, tls=0x7f2b62201f38, child_tidptr=0x5d2ab0) = 8245
8245  <... munmap resumed> )            = 0
8243  <... clock_gettime resumed> {tv_sec=1601404983, tv_nsec=732736621}) = 0
8245  sigaltstack(NULL,  <unfinished ...>
8243  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8245  <... sigaltstack resumed> {ss_sp=NULL, ss_flags=SS_DISABLE, ss_size=0}) = 0
8241  rt_sigprocmask(SIG_SETMASK, ~[KILL STOP RTMIN RT_1 RT_2],  <unfinished ...>
8245  sigaltstack({ss_sp=0xc0000c0000, ss_flags=0, ss_size=32768},  <unfinished ...>
8243  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=585058442}) = 0
8245  <... sigaltstack resumed> NULL)   = 0
8241  <... rt_sigprocmask resumed> NULL, 8) = 0
8245  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8243  write(2, "main.go:31: Calling setreuid\n", 29 <unfinished ...>
8245  <... rt_sigprocmask resumed> NULL, 8) = 0
8241  rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
8245  gettid( <unfinished ...>
8243  <... write resumed> )             = 29
8245  <... gettid resumed> )            = 8245
8243  rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2],  <unfinished ...>
8245  futex(0xc0000644c8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  <... rt_sigprocmask resumed> [], 8) = 0
8241  <... rt_sigprocmask resumed> NULL, 8) = 0
8243  rt_sigprocmask(SIG_BLOCK, ~[],  <unfinished ...>
8241  futex(0xc0000644c8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  <... rt_sigprocmask resumed> NULL, 8) = 0
8241  <... futex resumed> )             = 1
8245  <... futex resumed> )             = 0
8243  gettid( <unfinished ...>
8245  futex(0xc0000644c8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  <... gettid resumed> )            = 8243
8241  futex(0x5b7ac8, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  rt_sigaction(SIGRT_2, {sa_handler=0x4b96cf, sa_mask=~[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x4b566e},  <unfinished ...>
8238  <... futex resumed> )             = 0
8243  <... rt_sigaction resumed> NULL, 8) = 0
8241  <... futex resumed> )             = 1
8239  <... nanosleep resumed> NULL)     = 0
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8243  tkill(8241, SIGRT_2 <unfinished ...>
8241  futex(0xc000034bc8, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8243  <... tkill resumed> )             = 0
8241  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=585410949}) = 0
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8241  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8241  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  <... futex resumed> )             = 0
8241  <... futex resumed> )             = 1
8243  tkill(8245, SIGRT_2 <unfinished ...>
8241  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8245  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8243  <... tkill resumed> )             = 0
8245  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8245  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  <... futex resumed> )             = -1 EAGAIN (Resource temporarily unavailable)
8245  <... futex resumed> )             = 0
8243  tkill(8240, SIGRT_2 <unfinished ...>
8245  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  <... tkill resumed> )             = 0
8240  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8240  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  <... nanosleep resumed> NULL)     = 0
8240  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1) = 1
8243  <... futex resumed> )             = 0
8240  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  tkill(8242, SIGRT_2 <unfinished ...>
8239  clock_gettime(CLOCK_MONOTONIC,  <unfinished ...>
8243  <... tkill resumed> )             = 0
8242  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8242  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  <... clock_gettime resumed> {tv_sec=1285556, tv_nsec=585823375}) = 0
8242  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8239  nanosleep({tv_sec=0, tv_nsec=20000},  <unfinished ...>
8243  <... futex resumed> )             = 0
8242  <... futex resumed> )             = 1
8243  tkill(8239, SIGRT_2)              = 0
8242  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8239  <... nanosleep resumed> NULL)     = ? ERESTART_RESTARTBLOCK (Interrupted by signal)
8239  --- SIGRT_2 {si_signo=SIGRT_2, si_code=SI_TKILL, si_pid=8238, si_uid=0} ---
8239  futex(0x5d29a0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
8243  <... futex resumed> )             = 0
8239  <... futex resumed> )             = 1
8243  tkill(8238, SIGRT_2 <unfinished ...>
8239  futex(0x5d29c0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8243  <... tkill resumed> )             = 0
8243  futex(0x5d29a0, FUTEX_WAIT_PRIVATE, 4294967295, NULL <unfinished ...>
8238  <... futex resumed> )             = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  futex(0x5d2e20, FUTEX_WAKE_PRIVATE, 1) = 0
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
8238  --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
8238  rt_sigreturn({mask=~[HUP INT QUIT ILL TRAP ABRT BUS FPE KILL SEGV TERM STKFLT CHLD STOP PROF SYS RTMIN RT_1]}) = 202
8238  futex(0x5b7ac8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
8245  <... futex resumed>)              = ?
8243  <... futex resumed>)              = ?
8242  <... futex resumed>)              = ?
8240  <... futex resumed>)              = ?
8245  +++ killed by SIGKILL +++
8240  +++ killed by SIGKILL +++
8242  +++ killed by SIGKILL +++
8243  +++ killed by SIGKILL +++
8244  <... futex resumed>)              = ?
8241  <... futex resumed>)              = ?
8239  <... futex resumed>)              = ?
8244  +++ killed by SIGKILL +++
8241  +++ killed by SIGKILL +++
8239  +++ killed by SIGKILL +++
8238  +++ killed by SIGKILL +++

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-29 18:51   ` Jesse Hathaway
@ 2020-09-29 20:34     ` Rich Felker
  2020-09-30  0:10       ` Rich Felker
  0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2020-09-29 20:34 UTC (permalink / raw)
  To: Jesse Hathaway; +Cc: musl

On Tue, Sep 29, 2020 at 01:51:30PM -0500, Jesse Hathaway wrote:
> On Tue, Sep 29, 2020 at 1:36 PM Rich Felker <dalias@libc.org> wrote:
> > Can you provide an strace (with -f) showing the hang? It's probably
> > not related to this since fork does not seem to be involved. Depending
> > on how you're using Go, it may just be Go bypassing libc then trying
> > to use libc functions, which at least used to be a big problem; I
> > don't know if it's fixed nowadays or not.
> 
> Thanks Rich, for taking a look, I have attached an strace of the
> program compiled against musl & glibc. The first call to setreuid
> succeeds in both, but the second call fails under musl. Jesse

The problem is this line:

> 8238  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>

Something broken in the Go runtime is bypassing libc and either
calling SYS_rt_sigprocmask itself, or calling the libc sigprocmask
function with a sigset_t it produced itself, blocking a libc-internal
signal. This makes it invalid to make any further use of libc.

Either it (the Go runtime) needs to manipulate sigset_t objects via
the public APIs for them (sigfillset, sigaddset, etc.) or its wrapper
for sigprocmask needs to convert the Go-manipulated sigset_t to one
valid for libc by iterating over the bits and using sigaddset, so that
invalid bits don't end up in the one passed to libc.

Rich

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-29 20:34     ` Rich Felker
@ 2020-09-30  0:10       ` Rich Felker
  2020-09-30 14:46         ` Jesse Hathaway
  0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2020-09-30  0:10 UTC (permalink / raw)
  To: Jesse Hathaway; +Cc: musl

On Tue, Sep 29, 2020 at 04:34:07PM -0400, Rich Felker wrote:
> On Tue, Sep 29, 2020 at 01:51:30PM -0500, Jesse Hathaway wrote:
> > On Tue, Sep 29, 2020 at 1:36 PM Rich Felker <dalias@libc.org> wrote:
> > > Can you provide an strace (with -f) showing the hang? It's probably
> > > not related to this since fork does not seem to be involved. Depending
> > > on how you're using Go, it may just be Go bypassing libc then trying
> > > to use libc functions, which at least used to be a big problem; I
> > > don't know if it's fixed nowadays or not.
> > 
> > Thanks Rich, for taking a look, I have attached an strace of the
> > program compiled against musl & glibc. The first call to setreuid
> > succeeds in both, but the second call fails under musl. Jesse
> 
> The problem is this line:
> 
> > 8238  rt_sigprocmask(SIG_SETMASK, ~[HUP INT QUIT ILL TRAP ABRT BUS FPE SEGV TERM STKFLT CHLD PROF SYS RTMIN RT_1],  <unfinished ...>
> 
> Something broken in the Go runtime is bypassing libc and either
> calling SYS_rt_sigprocmask itself, or calling the libc sigprocmask
> function with a sigset_t it produced itself, blocking a libc-internal
> signal. This makes it invalid to make any further use of libc.
> 
> Either it (the Go runtime) needs to manipulate sigset_t objects via
> the public APIs for them (sigfillset, sigaddset, etc.) or its wrapper
> for sigprocmask needs to convert the Go-manipulated sigset_t to one
> valid for libc by iterating over the bits and using sigaddset, so that
> invalid bits don't end up in the one passed to libc.

Here is the offending code:

https://github.com/golang/go/blob/a413908dd064de6e3ea5b8d95d707a532bd3f4c8/src/runtime/signal_unix.go#L866

It should be calling sigfillset() (from libc) to get the starting
sigset_t rather than using its own all-one-bits initializer.

There may be other places in the runtime where the same error is made.
It looks like blockableSig (line 1132) is intended to do something
here, but has hard-coded (somewhere else) glibc knowledge rather than
probing via (libc's) sigaddset whether the signal number is valid.
This might be a preferred point to fix it at.

Rich

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-30  0:10       ` Rich Felker
@ 2020-09-30 14:46         ` Jesse Hathaway
  2020-09-30 15:55           ` Rich Felker
  0 siblings, 1 reply; 11+ messages in thread
From: Jesse Hathaway @ 2020-09-30 14:46 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

On Tue, Sep 29, 2020 at 7:10 PM Rich Felker <dalias@libc.org> wrote:
> Here is the offending code:
>
> https://github.com/golang/go/blob/a413908dd064de6e3ea5b8d95d707a532bd3f4c8/src/runtime/signal_unix.go#L866
>
> It should be calling sigfillset() (from libc) to get the starting
> sigset_t rather than using its own all-one-bits initializer.
>
> There may be other places in the runtime where the same error is made.
> It looks like blockableSig (line 1132) is intended to do something
> here, but has hard-coded (somewhere else) glibc knowledge rather than
> probing via (libc's) sigaddset whether the signal number is valid.
> This might be a preferred point to fix it at.

Thanks Rich for diving in and investigating the problem on the Go runtime
side. I am happy to open a bug report on the Go side, but I have a couple
of questions. Would you instead prefer to open the report, since you have
a much deeper understanding of the problem and what changes need to
be made than I? However, if you would rather I create the report, are you
okay with me quoting your analysis? Thanks, Jesse

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-30 14:46         ` Jesse Hathaway
@ 2020-09-30 15:55           ` Rich Felker
  2021-03-03 14:40             ` Jesse Hathaway
  0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2020-09-30 15:55 UTC (permalink / raw)
  To: Jesse Hathaway; +Cc: musl

On Wed, Sep 30, 2020 at 09:46:12AM -0500, Jesse Hathaway wrote:
> On Tue, Sep 29, 2020 at 7:10 PM Rich Felker <dalias@libc.org> wrote:
> > Here is the offending code:
> >
> > https://github.com/golang/go/blob/a413908dd064de6e3ea5b8d95d707a532bd3f4c8/src/runtime/signal_unix.go#L866
> >
> > It should be calling sigfillset() (from libc) to get the starting
> > sigset_t rather than using its own all-one-bits initializer.
> >
> > There may be other places in the runtime where the same error is made.
> > It looks like blockableSig (line 1132) is intended to do something
> > here, but has hard-coded (somewhere else) glibc knowledge rather than
> > probing via (libc's) sigaddset whether the signal number is valid.
> > This might be a preferred point to fix it at.
> 
> Thanks Rich for diving in and investigating the problem on the Go runtime
> side. I am happy to open a bug report on the Go side, but I have a couple
> of questions. Would you instead prefer to open the report, since you have
> a much deeper understanding of the problem and what changes need to
> be made than I? However, if you would rather I create the report, are you
> okay with me quoting your analysis? Thanks, Jesse

Please go ahead with it to the extent that you can, quoting my
analysis where it's relevant, and if there's anything unclear I'll try
to follow up.

Rich

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2020-09-30 15:55           ` Rich Felker
@ 2021-03-03 14:40             ` Jesse Hathaway
  2021-03-03 14:43               ` Rich Felker
  0 siblings, 1 reply; 11+ messages in thread
From: Jesse Hathaway @ 2021-03-03 14:40 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

On Wed, Sep 30, 2020 at 10:55 AM Rich Felker <dalias@libc.org> wrote:
> > > Here is the offending code:
> > >
> > > https://github.com/golang/go/blob/a413908dd064de6e3ea5b8d95d707a532bd3f4c8/src/runtime/signal_unix.go#L866
> > >
> > > It should be calling sigfillset() (from libc) to get the starting
> > > sigset_t rather than using its own all-one-bits initializer.
> > >
> > > There may be other places in the runtime where the same error is made.
> > > It looks like blockableSig (line 1132) is intended to do something
> > > here, but has hard-coded (somewhere else) glibc knowledge rather than
> > > probing via (libc's) sigaddset whether the signal number is valid.
> > > This might be a preferred point to fix it at.

Unfortunately I failed to submit a bug report for this issue. However, the
bug was reported by someone else and fixed with this commit:

  commit 49b017fe59bf628795f2c4fdbcb5db942e865fa9
  Author: George Tsilias <tsiliasg@gmail.com>
  Date:   Thu Jun 4 23:11:56 2020 +0300

      runtime: handle signal 34 for musl setgid

      It has been observed that setgid hangs when using cgo with musl.
      This fix ensures that signal 34 gets handled in an appropriate way,
      like signal 33 when using glibc.

      Fixes #39343

Unfortunately, it did not use sigaddset as you suggested, but instead hard-coded
the signal:

diff --git a/src/runtime/sigtab_linux_generic.go
b/src/runtime/sigtab_linux_generic.go
index b26040b803..38d686544f 100644
--- a/src/runtime/sigtab_linux_generic.go
+++ b/src/runtime/sigtab_linux_generic.go
@@ -45,7 +45,7 @@ var sigtable = [...]sigTabT{
        /* 31 */ {_SigThrow, "SIGSYS: bad system call"},
        /* 32 */ {_SigSetStack + _SigUnblock, "signal 32"}, /*
SIGCANCEL; see issue 6997 */
        /* 33 */ {_SigSetStack + _SigUnblock, "signal 33"}, /*
SIGSETXID; see issues 3871, 9400, 12498 */
-       /* 34 */ {_SigNotify, "signal 34"},
+       /* 34 */ {_SigSetStack + _SigUnblock, "signal 34"}, /* musl
SIGSYNCCALL; see issue 39343 */
        /* 35 */ {_SigNotify, "signal 35"},
        /* 36 */ {_SigNotify, "signal 36"},
        /* 37 */ {_SigNotify, "signal 37"},
diff --git a/src/runtime/sigtab_linux_mipsx.go
b/src/runtime/sigtab_linux_mipsx.go
index 81dd2314c5..51ef470ce7 100644
--- a/src/runtime/sigtab_linux_mipsx.go
+++ b/src/runtime/sigtab_linux_mipsx.go
@@ -42,7 +42,7 @@ var sigtable = [...]sigTabT{
        /*  31 */ {_SigNotify, "SIGXFSZ: file size limit exceeded"},
        /*  32 */ {_SigSetStack + _SigUnblock, "signal 32"}, /*
SIGCANCEL; see issue 6997 */
        /*  33 */ {_SigSetStack + _SigUnblock, "signal 33"}, /*
SIGSETXID; see issues 3871, 9400, 12498 */
-       /*  34 */ {_SigNotify, "signal 34"},
+       /*  34 */ {_SigSetStack + _SigUnblock, "signal 34"}, /* musl
SIGSYNCCALL; see issue 39343 */
        /*  35 */ {_SigNotify, "signal 35"},
        /*  36 */ {_SigNotify, "signal 36"},
        /*  37 */ {_SigNotify, "signal 37"},

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2021-03-03 14:40             ` Jesse Hathaway
@ 2021-03-03 14:43               ` Rich Felker
  2021-03-03 20:14                 ` Jesse Hathaway
  0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2021-03-03 14:43 UTC (permalink / raw)
  To: Jesse Hathaway; +Cc: musl

On Wed, Mar 03, 2021 at 08:40:57AM -0600, Jesse Hathaway wrote:
> On Wed, Sep 30, 2020 at 10:55 AM Rich Felker <dalias@libc.org> wrote:
> > > > Here is the offending code:
> > > >
> > > > https://github.com/golang/go/blob/a413908dd064de6e3ea5b8d95d707a532bd3f4c8/src/runtime/signal_unix.go#L866
> > > >
> > > > It should be calling sigfillset() (from libc) to get the starting
> > > > sigset_t rather than using its own all-one-bits initializer.
> > > >
> > > > There may be other places in the runtime where the same error is made.
> > > > It looks like blockableSig (line 1132) is intended to do something
> > > > here, but has hard-coded (somewhere else) glibc knowledge rather than
> > > > probing via (libc's) sigaddset whether the signal number is valid.
> > > > This might be a preferred point to fix it at.
> 
> Unfortunately I failed to submit a bug report for this issue. However, the
> bug was reported by someone else and fixed with this commit:
> 
>   commit 49b017fe59bf628795f2c4fdbcb5db942e865fa9
>   Author: George Tsilias <tsiliasg@gmail.com>
>   Date:   Thu Jun 4 23:11:56 2020 +0300
> 
>       runtime: handle signal 34 for musl setgid
> 
>       It has been observed that setgid hangs when using cgo with musl.
>       This fix ensures that signal 34 gets handled in an appropriate way,
>       like signal 33 when using glibc.
> 
>       Fixes #39343
> 
> Unfortunately, it did not use sigaddset as you suggested, but instead hard-coded
> the signal:
> 
> diff --git a/src/runtime/sigtab_linux_generic.go
> b/src/runtime/sigtab_linux_generic.go
> index b26040b803..38d686544f 100644
> --- a/src/runtime/sigtab_linux_generic.go
> +++ b/src/runtime/sigtab_linux_generic.go
> @@ -45,7 +45,7 @@ var sigtable = [...]sigTabT{
>         /* 31 */ {_SigThrow, "SIGSYS: bad system call"},
>         /* 32 */ {_SigSetStack + _SigUnblock, "signal 32"}, /*
> SIGCANCEL; see issue 6997 */
>         /* 33 */ {_SigSetStack + _SigUnblock, "signal 33"}, /*
> SIGSETXID; see issues 3871, 9400, 12498 */
> -       /* 34 */ {_SigNotify, "signal 34"},
> +       /* 34 */ {_SigSetStack + _SigUnblock, "signal 34"}, /* musl
> SIGSYNCCALL; see issue 39343 */
>         /* 35 */ {_SigNotify, "signal 35"},
>         /* 36 */ {_SigNotify, "signal 36"},
>         /* 37 */ {_SigNotify, "signal 37"},
> diff --git a/src/runtime/sigtab_linux_mipsx.go
> b/src/runtime/sigtab_linux_mipsx.go
> index 81dd2314c5..51ef470ce7 100644
> --- a/src/runtime/sigtab_linux_mipsx.go
> +++ b/src/runtime/sigtab_linux_mipsx.go
> @@ -42,7 +42,7 @@ var sigtable = [...]sigTabT{
>         /*  31 */ {_SigNotify, "SIGXFSZ: file size limit exceeded"},
>         /*  32 */ {_SigSetStack + _SigUnblock, "signal 32"}, /*
> SIGCANCEL; see issue 6997 */
>         /*  33 */ {_SigSetStack + _SigUnblock, "signal 33"}, /*
> SIGSETXID; see issues 3871, 9400, 12498 */
> -       /*  34 */ {_SigNotify, "signal 34"},
> +       /*  34 */ {_SigSetStack + _SigUnblock, "signal 34"}, /* musl
> SIGSYNCCALL; see issue 39343 */
>         /*  35 */ {_SigNotify, "signal 35"},
>         /*  36 */ {_SigNotify, "signal 36"},
>         /*  37 */ {_SigNotify, "signal 37"},

Anyone want to submit a bug report for this (the signal numbers are
not public or stable) or should I make a note to do it?

Rich

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [musl] Re: Pending patches for MT-fork stuff
  2021-03-03 14:43               ` Rich Felker
@ 2021-03-03 20:14                 ` Jesse Hathaway
  0 siblings, 0 replies; 11+ messages in thread
From: Jesse Hathaway @ 2021-03-03 20:14 UTC (permalink / raw)
  To: Rich Felker; +Cc: musl

On Wed, Mar 3, 2021 at 8:43 AM Rich Felker <dalias@libc.org> wrote:
> Anyone want to submit a bug report for this (the signal numbers are
> not public or stable) or should I make a note to do it?

Given my inability to talk authoritatively on the flaws in their current
implementation, my preference would be for you to submit a bug
report. Yours kindly, Jesse

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [musl] Re: Pending patches for MT-fork stuff
@ 2020-09-29 17:19 Jesse Hathaway
  0 siblings, 0 replies; 11+ messages in thread
From: Jesse Hathaway @ 2020-09-29 17:19 UTC (permalink / raw)
  To: musl; +Cc: Jesse Hathaway

[-- Attachment #1: Type: text/plain, Size: 516 bytes --]

I was experiencing a hang when calling setreuid from a thread on musl
1.2.1 as well
as on master with these patches applied. I have attached a Go program
which hangs
when run as the root user outputting only:

    main.go:31: Calling setreuid

Whereas with glibc the setreuid call completes successfully, with the
following output:

    test.go:31: Calling setreuid
    test.go:40: Running command
    test.go:45: root
    test.go:46: Command complete

I am happy to help troubleshoot the issue, yours kindly, Jesse

[-- Attachment #2: test.go --]
[-- Type: text/x-go, Size: 1574 bytes --]

package main

// #include <unistd.h>
// #include <errno.h>
import "C"

import (
	"log"
	"os"
	"os/exec"
	"os/signal"
	"os/user"
	"strconv"
	"syscall"

	"golang.org/x/sys/unix"
)

func runAsRoot() {
	cmd := exec.Command("whoami")
	uid := 0
	unprivUser := "nobody"
	lu, err := user.Lookup(unprivUser)
	if err != nil {
		log.Fatalf("Error: Unable to lookup user '%s': %v", unprivUser, err)
	}
	unprivUid, err := strconv.Atoi(lu.Uid)
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	log.Printf("Calling setreuid")
	ret, errno := C.setreuid(C.uid_t(unprivUid), C.uid_t(uid))
	if ret != 0 {
		log.Fatalf("Error: returned %d, errno: %v", ret, errno)
	}
	euid := unix.Geteuid()
	if euid != uid {
		log.Fatalf("Error: euid %d, should be %d", euid, uid)
	}
	log.Printf("Running command")
	stdoutStderr, err := cmd.CombinedOutput()
	if err != nil {
		log.Fatal(err)
	}
	log.Printf("%s", stdoutStderr)
	log.Printf("Command complete")
	return
}

func main() {
	log.SetFlags(log.Lshortfile)
	unprivUser := "nobody"
	lu, err := user.Lookup(unprivUser)
	if err != nil {
		log.Fatalf("Error: Unable to lookup user '%s': %v", unprivUser, err)
	}
	uid, err := strconv.Atoi(lu.Uid)
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	ret, errno := C.setreuid(C.uid_t(0), C.uid_t(uid))
	if ret != 0 {
		log.Fatalf("Error: returned %d, errno: %v", ret, errno)
	}
	euid := unix.Geteuid()
	if euid != uid {
		log.Fatalf("Error: euid %d, should be %d", euid, uid)
	}

	go func() {
		runAsRoot()
	}()

	sigs := make(chan os.Signal, 1)
	signal.Notify(sigs, os.Interrupt, syscall.SIGTERM)
	<-sigs
}

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2021-03-03 20:15 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-29 18:04 [musl] Re: Pending patches for MT-fork stuff Jesse Hathaway
2020-09-29 18:36 ` Rich Felker
2020-09-29 18:51   ` Jesse Hathaway
2020-09-29 20:34     ` Rich Felker
2020-09-30  0:10       ` Rich Felker
2020-09-30 14:46         ` Jesse Hathaway
2020-09-30 15:55           ` Rich Felker
2021-03-03 14:40             ` Jesse Hathaway
2021-03-03 14:43               ` Rich Felker
2021-03-03 20:14                 ` Jesse Hathaway
  -- strict thread matches above, loose matches on Subject: below --
2020-09-29 17:19 Jesse Hathaway

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).