Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hwloc-induced crash on ChromeOS [Scylla terminated by SIGFPE on startup on ChromeOS] #10439

Closed
1 task done
ghost opened this issue Apr 26, 2022 · 8 comments
Closed
1 task done
Milestone

Comments

@ghost
Copy link

ghost commented Apr 26, 2022

This is Scylla's bug tracker, to be used for reporting bugs only.
If you have a question about Scylla, and not a bug, please ask it in
our mailing-list at scylladb-dev@googlegroups.com or in our slack channel.

  • I have read the disclaimer above, and I am reporting a suspected malfunction in Scylla.

Installation details
Scylla version (or git commit hash): Tested on 4.5.0, 4.5.4, 4.6.0 , 5.0.rc3
Cluster size: 1
OS (RHEL/CentOS/Ubuntu/AWS AMI): Debian Bullseye on ChromeOS

Hardware details (for performance issues) Delete if unneeded
Platform (physical/VM/cloud instance type/docker):
Hardware: sockets= cores= hyperthreading= memory=
Disks: (SSD/HDD, count)

Right now we're running scylla in a docker container, which is itself running in an lxc container, which itself is running on a very light VM.

Summary

When attempting to run dockerized scylla on ChromeOS with Debian Bullseye, Scylla fails with a SIGFPE error during startup. This appears to be because Scylla is using hwloc to query hardware information and then pin resources to threads. This seems to fail when 0 is returned unexpectedly from hwloc so we end up with a divide by 0 error.

Repro Steps

docker run -it scylladb/scylla
In the logs you'll see the following:

thomas@penguin:~/repos/nomad$ docker run -it  scylladb/scylla:5.0.rc3 --io-setup 0
running: (['/opt/scylladb/scripts/scylla_dev_mode_setup', '--developer-mode', '1'],)
2022-04-26 18:43:12,306 CRIT Supervisor is running as root.  Privileges were not dropped because no user is specified in the config file.  If you intend to run as root, you can set user=root in the config file to avoid this message.
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/rsyslog.conf" during parsing
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/scylla-housekeeping.conf" during parsing
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/scylla-jmx.conf" during parsing
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/scylla-node-exporter.conf" during parsing
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/scylla-server.conf" during parsing
2022-04-26 18:43:12,307 INFO Included extra file "/etc/supervisord.conf.d/sshd-server.conf" during parsing
2022-04-26 18:43:12,319 INFO RPC interface 'supervisor' initialized
2022-04-26 18:43:12,319 CRIT Server 'inet_http_server' running without any HTTP authentication checking
2022-04-26 18:43:12,319 INFO supervisord started with pid 20
2022-04-26 18:43:13,327 INFO spawned: 'rsyslog' with pid 22
2022-04-26 18:43:13,345 INFO spawned: 'scylla' with pid 23
2022-04-26 18:43:13,355 INFO spawned: 'scylla-housekeeping' with pid 24
2022-04-26 18:43:13,361 INFO spawned: 'scylla-jmx' with pid 26
2022-04-26 18:43:13,368 INFO spawned: 'scylla-node-exporter' with pid 29
2022-04-26 18:43:13,372 INFO spawned: 'sshd' with pid 31
rsyslogd: imklog: cannot open kernel log (/proc/kmsg): Permission denied.
rsyslogd: activation of module imklog failed [v8.2001.0 try https://www.rsyslog.com/e/2145 ]
level=info ts=2022-04-26T18:43:13.426Z caller=node_exporter.go:177 msg="Starting node_exporter" version="(version=1.0.1, branch=HEAD, revision=3715be6ae899f2a9b9dbfd9c39f3e09a7bd4559f)"
level=info ts=2022-04-26T18:43:13.426Z caller=node_exporter.go:178 msg="Build context" build_context="(go=go1.14.4, user=root@1f76dbbcfa55, date=20200616-12:44:12)"
level=info ts=2022-04-26T18:43:13.429Z caller=node_exporter.go:105 msg="Enabled collectors"
level=info ts=2022-04-26T18:43:13.429Z caller=node_exporter.go:112 collector=arp
level=info ts=2022-04-26T18:43:13.430Z caller=node_exporter.go:112 collector=bcache
level=info ts=2022-04-26T18:43:13.431Z caller=node_exporter.go:112 collector=bonding
level=info ts=2022-04-26T18:43:13.431Z caller=node_exporter.go:112 collector=btrfs
level=info ts=2022-04-26T18:43:13.432Z caller=node_exporter.go:112 collector=conntrack
level=info ts=2022-04-26T18:43:13.433Z caller=node_exporter.go:112 collector=cpu
level=info ts=2022-04-26T18:43:13.437Z caller=node_exporter.go:112 collector=cpufreq
level=info ts=2022-04-26T18:43:13.438Z caller=node_exporter.go:112 collector=diskstats
level=info ts=2022-04-26T18:43:13.439Z caller=node_exporter.go:112 collector=edac
level=info ts=2022-04-26T18:43:13.439Z caller=node_exporter.go:112 collector=entropy
level=info ts=2022-04-26T18:43:13.439Z caller=node_exporter.go:112 collector=filefd
level=info ts=2022-04-26T18:43:13.440Z caller=node_exporter.go:112 collector=filesystem
level=info ts=2022-04-26T18:43:13.441Z caller=node_exporter.go:112 collector=hwmon
level=info ts=2022-04-26T18:43:13.441Z caller=node_exporter.go:112 collector=infiniband
level=info ts=2022-04-26T18:43:13.442Z caller=node_exporter.go:112 collector=interrupts
level=info ts=2022-04-26T18:43:13.442Z caller=node_exporter.go:112 collector=ipvs
level=info ts=2022-04-26T18:43:13.442Z caller=node_exporter.go:112 collector=loadavg
level=info ts=2022-04-26T18:43:13.443Z caller=node_exporter.go:112 collector=mdadm
level=info ts=2022-04-26T18:43:13.443Z caller=node_exporter.go:112 collector=meminfo
level=info ts=2022-04-26T18:43:13.447Z caller=node_exporter.go:112 collector=netclass
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=netdev
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=netstat
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=nfs
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=nfsd
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=powersupplyclass
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=pressure
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=rapl
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=schedstat
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=sockstat
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=softnet
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=stat
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=textfile
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=thermal_zone
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=time
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=timex
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=udp_queues
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=uname
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=vmstat
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=xfs
level=info ts=2022-04-26T18:43:13.448Z caller=node_exporter.go:112 collector=zfs
level=info ts=2022-04-26T18:43:13.449Z caller=node_exporter.go:191 msg="Listening on" address=:9100
level=info ts=2022-04-26T18:43:13.449Z caller=tls_config.go:170 msg="TLS is disabled and it cannot be enabled on the fly." http2=false
Scylla version 5.0.rc3-0.20220406.f92622e0d with build-id 2b79c4744216b294fdbd2f277940044c899156ea starting ...
command used: "/usr/bin/scylla --log-to-syslog 1 --log-to-stdout 0 --default-log-level info --network-stack posix --developer-mode=1 --overprovisioned --listen-address 172.17.0.2 --rpc-address 172.17.0.2 --seed-provider-parameters seeds=172.17.0.2 --alternator-address 172.17.0.2 --blocked-reactor-notify-ms 999999999"
parsed command line options: [log-to-syslog, (positional) 1, log-to-stdout, (positional) 0, default-log-level, (positional) info, network-stack, (positional) posix, developer-mode: 1, overprovisioned, listen-address: 172.17.0.2, rpc-address: 172.17.0.2, seed-provider-parameters: seeds=172.17.0.2, alternator-address: 172.17.0.2, blocked-reactor-notify-ms, (positional) 999999999]
2022-04-26 18:43:13,882 INFO exited: scylla (terminated by SIGFPE (core dumped); not expected)

Further debug info

From looking at dmesg we get the following

[631524.619446] traps: scylla[12534] trap divide error ip:7909374ae6c2 sp:7ffd17266bc0 error:0 in libhwloc.so.15[790937476000+3e000]
[631526.375536] traps: scylla[12599] trap divide error ip:7fcd30a506c2 sp:7ffd3cfb8b90 error:0 in libhwloc.so.15[7fcd30a18000+3e000]
[631528.637885] traps: scylla[12621] trap divide error ip:7e419b4816c2 sp:7ffc566ab9d0 error:0 in libhwloc.so.15[7e419b449000+3e000]
[631531.960227] traps: scylla[12654] trap divide error ip:7ed6187606c2 sp:7ffe11ba5150 error:0 in libhwloc.so.15[7ed618728000+3e000]

Via Strace

execve("/usr/bin/hwloc-ps", ["hwloc-ps"], 0x7ffd80c602a0 /* 45 vars */) = 0
brk(NULL)                               = 0x5bef0ae85000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=64926, ...}) = 0
mmap(NULL, 64926, PROT_READ, MAP_PRIVATE, 3, 0) = 0x78099b8e5000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libhwloc.so.15", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 l\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=360368, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x78099b8e3000
mmap(NULL, 362680, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b88a000
mmap(0x78099b890000, 253952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x78099b890000
mmap(0x78099b8ce000, 77824, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x44000) = 0x78099b8ce000
mmap(0x78099b8e1000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x56000) = 0x78099b8e1000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@n\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1839792, ...}) = 0
mmap(NULL, 1852680, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b6c5000
mprotect(0x78099b6ea000, 1662976, PROT_NONE) = 0
mmap(0x78099b6ea000, 1355776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x78099b6ea000
mmap(0x78099b835000, 303104, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x170000) = 0x78099b835000
mmap(0x78099b880000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ba000) = 0x78099b880000
mmap(0x78099b886000, 13576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78099b886000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\362\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1321344, ...}) = 0
mmap(NULL, 1323280, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b581000
mmap(0x78099b590000, 630784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x78099b590000
mmap(0x78099b62a000, 626688, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa9000) = 0x78099b62a000
mmap(0x78099b6c3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x141000) = 0x78099b6c3000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libudev.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0pG\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=157904, ...}) = 0
mmap(NULL, 162080, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b559000
mmap(0x78099b55d000, 102400, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x78099b55d000
mmap(0x78099b576000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x78099b576000
mmap(0x78099b57f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x78099b57f000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\21\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=18688, ...}) = 0
mmap(NULL, 20752, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b553000
mmap(0x78099b554000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x78099b554000
mmap(0x78099b556000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x78099b556000
mmap(0x78099b557000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x78099b557000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 |\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=149520, ...}) = 0
mmap(NULL, 136304, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x78099b531000
mmap(0x78099b538000, 65536, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x78099b538000
mmap(0x78099b548000, 20480, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x78099b548000
mmap(0x78099b54d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b000) = 0x78099b54d000
mmap(0x78099b54f000, 13424, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78099b54f000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x78099b52f000
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x78099b52c000
arch_prctl(ARCH_SET_FS, 0x78099b52c740) = 0
mprotect(0x78099b880000, 12288, PROT_READ) = 0
mprotect(0x78099b54d000, 4096, PROT_READ) = 0
mprotect(0x78099b557000, 4096, PROT_READ) = 0
mprotect(0x78099b57f000, 4096, PROT_READ) = 0
mprotect(0x78099b6c3000, 4096, PROT_READ) = 0
mprotect(0x78099b8e1000, 4096, PROT_READ) = 0
mprotect(0x5bef095dd000, 4096, PROT_READ) = 0
mprotect(0x78099b91f000, 4096, PROT_READ) = 0
munmap(0x78099b8e5000, 64926)           = 0
set_tid_address(0x78099b52ca10)         = 24926
set_robust_list(0x78099b52ca20, 24)     = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x78099b538690, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x78099b545140}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x78099b538730, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x78099b545140}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
getuid()                                = 1000
brk(NULL)                               = 0x5bef0ae85000
brk(0x5bef0aea6000)                     = 0x5bef0aea6000
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/hwloc", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=114, ...}) = 0
getdents64(3, 0x5bef0ae85690 /* 6 entries */, 32768) = 192
stat("/usr/lib/x86_64-linux-gnu/hwloc/.", {st_mode=S_IFDIR|0755, st_size=114, ...}) = 0
stat("/usr/lib/x86_64-linux-gnu/hwloc/..", {st_mode=S_IFDIR|0755, st_size=49238, ...}) = 0
stat("/usr/lib/x86_64-linux-gnu/hwloc/hwloc_gl.so", {st_mode=S_IFREG|0644, st_size=14776, ...}) = 0
futex(0x78099b5580c8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/hwloc/hwloc_gl.so", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\21\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=14776, ...}) = 0
mmap(NULL, 16696, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b8f0000
mmap(0x78099b8f1000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x78099b8f1000
mmap(0x78099b8f2000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b8f2000
mmap(0x78099b8f3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b8f3000
close(4)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=64926, ...}) = 0
mmap(NULL, 64926, PROT_READ, MAP_PRIVATE, 4, 0) = 0x78099b51c000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libXNVCtrl.so.0", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260!\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=26584, ...}) = 0
mmap(NULL, 28840, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b8e8000
mmap(0x78099b8ea000, 12288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b8ea000
mmap(0x78099b8ed000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x5000) = 0x78099b8ed000
mmap(0x78099b8ee000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x5000) = 0x78099b8ee000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libX11.so.6", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\351\1\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1318408, ...}) = 0
mmap(NULL, 1322312, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b3d9000
mprotect(0x78099b3f5000, 1183744, PROT_NONE) = 0
mmap(0x78099b3f5000, 573440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1c000) = 0x78099b3f5000
mmap(0x78099b481000, 606208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xa8000) = 0x78099b481000
mmap(0x78099b516000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x13c000) = 0x78099b516000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libXext.so.6", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320C\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=81544, ...}) = 0
mmap(NULL, 84248, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b3c4000
mmap(0x78099b3c8000, 45056, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x4000) = 0x78099b3c8000
mmap(0x78099b3d3000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xf000) = 0x78099b3d3000
mmap(0x78099b3d7000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x12000) = 0x78099b3d7000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libxcb.so.1", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \307\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=170936, ...}) = 0
mmap(NULL, 173224, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b399000
mmap(0x78099b3a5000, 81920, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xc000) = 0x78099b3a5000
mmap(0x78099b3b9000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x20000) = 0x78099b3b9000
mmap(0x78099b3c2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x28000) = 0x78099b3c2000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libXau.so.6", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\22\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=14496, ...}) = 0
mmap(NULL, 16672, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b394000
mmap(0x78099b395000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x78099b395000
mmap(0x78099b396000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b396000
mmap(0x78099b397000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b397000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libXdmcp.so.6", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\23\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=22728, ...}) = 0
mmap(NULL, 2117872, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b18e000
mprotect(0x78099b193000, 2093056, PROT_NONE) = 0
mmap(0x78099b392000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x4000) = 0x78099b392000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libbsd.so.0", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300H\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=84064, ...}) = 0
mmap(NULL, 90384, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b177000
mprotect(0x78099b17b000, 65536, PROT_NONE) = 0
mmap(0x78099b17b000, 49152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x4000) = 0x78099b17b000
mmap(0x78099b187000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x10000) = 0x78099b187000
mmap(0x78099b18b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x13000) = 0x78099b18b000
mmap(0x78099b18d000, 272, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78099b18d000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libmd.so.0", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000$\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=47312, ...}) = 0
mmap(NULL, 49384, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b16a000
mmap(0x78099b16c000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b16c000
mmap(0x78099b173000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x9000) = 0x78099b173000
mmap(0x78099b175000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xa000) = 0x78099b175000
close(4)                                = 0
mprotect(0x78099b175000, 4096, PROT_READ) = 0
mprotect(0x78099b18b000, 4096, PROT_READ) = 0
mprotect(0x78099b392000, 4096, PROT_READ) = 0
mprotect(0x78099b397000, 4096, PROT_READ) = 0
mprotect(0x78099b3c2000, 4096, PROT_READ) = 0
mprotect(0x78099b516000, 4096, PROT_READ) = 0
mprotect(0x78099b3d7000, 4096, PROT_READ) = 0
mprotect(0x78099b8ee000, 4096, PROT_READ) = 0
mprotect(0x78099b8f3000, 4096, PROT_READ) = 0
munmap(0x78099b51c000, 64926)           = 0
stat("/usr/lib/x86_64-linux-gnu/hwloc/hwloc_opencl.so", {st_mode=S_IFREG|0644, st_size=14776, ...}) = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/hwloc/hwloc_opencl.so", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\21\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=14776, ...}) = 0
mmap(NULL, 16696, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b527000
mmap(0x78099b528000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x78099b528000
mmap(0x78099b529000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b529000
mmap(0x78099b52a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b52a000
close(4)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=64926, ...}) = 0
mmap(NULL, 64926, PROT_READ, MAP_PRIVATE, 4, 0) = 0x78099b15a000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libOpenCL.so.1", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0b\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=69136, ...}) = 0
mmap(NULL, 71208, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b148000
mmap(0x78099b14e000, 24576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x6000) = 0x78099b14e000
mmap(0x78099b154000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xc000) = 0x78099b154000
mmap(0x78099b158000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xf000) = 0x78099b158000
close(4)                                = 0
mprotect(0x78099b158000, 4096, PROT_READ) = 0
mprotect(0x78099b52a000, 4096, PROT_READ) = 0
munmap(0x78099b15a000, 64926)           = 0
stat("/usr/lib/x86_64-linux-gnu/hwloc/hwloc_pci.so", {st_mode=S_IFREG|0644, st_size=19000, ...}) = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/hwloc/hwloc_pci.so", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\"\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=19000, ...}) = 0
mmap(NULL, 21032, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b521000
mmap(0x78099b523000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b523000
mmap(0x78099b524000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099b524000
mmap(0x78099b525000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099b525000
close(4)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=64926, ...}) = 0
mmap(NULL, 64926, PROT_READ, MAP_PRIVATE, 4, 0) = 0x78099b15a000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libpciaccess.so.0", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340#\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=39384, ...}) = 0
mmap(NULL, 41480, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b13d000
mmap(0x78099b13f000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099b13f000
mmap(0x78099b144000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x7000) = 0x78099b144000
mmap(0x78099b146000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x8000) = 0x78099b146000
close(4)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0203\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=113088, ...}) = 0
mmap(NULL, 115088, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b120000
mprotect(0x78099b123000, 98304, PROT_NONE) = 0
mmap(0x78099b123000, 69632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099b123000
mmap(0x78099b134000, 24576, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x14000) = 0x78099b134000
mmap(0x78099b13b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1a000) = 0x78099b13b000
close(4)                                = 0
mprotect(0x78099b13b000, 4096, PROT_READ) = 0
mprotect(0x78099b146000, 4096, PROT_READ) = 0
mprotect(0x78099b525000, 4096, PROT_READ) = 0
munmap(0x78099b15a000, 64926)           = 0
stat("/usr/lib/x86_64-linux-gnu/hwloc/hwloc_xml_libxml.so", {st_mode=S_IFREG|0644, st_size=19016, ...}) = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/hwloc/hwloc_xml_libxml.so", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\22\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=19016, ...}) = 0
mmap(NULL, 20944, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099b164000
mmap(0x78099b165000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x78099b165000
mmap(0x78099b167000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099b167000
mmap(0x78099b168000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099b168000
close(4)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=64926, ...}) = 0
mmap(NULL, 64926, PROT_READ, MAP_PRIVATE, 4, 0) = 0x78099b110000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libxml2.so.2", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\354\2\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1750104, ...}) = 0
mmap(NULL, 1757448, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099af62000
mmap(0x78099af90000, 1163264, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2e000) = 0x78099af90000
mmap(0x78099b0ac000, 360448, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x14a000) = 0x78099b0ac000
mmap(0x78099b104000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1a1000) = 0x78099b104000
mmap(0x78099b10e000, 4360, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78099b10e000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220d\6\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1988784, ...}) = 0
mmap(NULL, 1999296, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099ad79000
mprotect(0x78099addf000, 1499136, PROT_NONE) = 0
mmap(0x78099addf000, 942080, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x66000) = 0x78099addf000
mmap(0x78099aec5000, 552960, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x14c000) = 0x78099aec5000
mmap(0x78099af4d000, 77824, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1d3000) = 0x78099af4d000
mmap(0x78099af60000, 4544, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x78099af60000
close(4)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/liblzma.so.5", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0205\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=158400, ...}) = 0
mmap(NULL, 160400, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099ad51000
mmap(0x78099ad54000, 98304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x78099ad54000
mmap(0x78099ad6c000, 45056, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1b000) = 0x78099ad6c000
mmap(0x78099ad77000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x25000) = 0x78099ad77000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libicudata.so.67", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\20\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=28407344, ...}) = 0
mmap(NULL, 28409872, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x780999238000
mmap(0x780999239000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x780999239000
mmap(0x78099923a000, 28397568, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x78099923a000
mmap(0x78099ad4f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1b16000) = 0x78099ad4f000
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\240\t\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1870824, ...}) = 0
mmap(NULL, 1886208, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x78099906b000
mmap(0x780999101000, 901120, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x96000) = 0x780999101000
mmap(0x7809991dd000, 303104, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x172000) = 0x7809991dd000
mmap(0x780999227000, 57344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1bb000) = 0x780999227000
mmap(0x780999235000, 10240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x780999235000
close(4)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0203\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=100736, ...}) = 0
mmap(NULL, 103496, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x780999051000
mmap(0x780999054000, 69632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x780999054000
mmap(0x780999065000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x14000) = 0x780999065000
mmap(0x780999069000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x17000) = 0x780999069000
close(4)                                = 0
mprotect(0x780999069000, 4096, PROT_READ) = 0
mprotect(0x780999227000, 45056, PROT_READ) = 0
mprotect(0x78099ad4f000, 4096, PROT_READ) = 0
mprotect(0x78099ad77000, 4096, PROT_READ) = 0
mprotect(0x78099af4d000, 73728, PROT_READ) = 0
mprotect(0x78099b104000, 36864, PROT_READ) = 0
mprotect(0x78099b168000, 4096, PROT_READ) = 0
brk(0x5bef0aecb000)                     = 0x5bef0aecb000
munmap(0x78099b110000, 64926)           = 0
getdents64(3, 0x5bef0ae85690 /* 0 entries */, 32768) = 0
close(3)                                = 0
faccessat(-1, "/sys/bus/cpu/devices", R_OK|X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu0/topology/package_cpus", R_OK) = 0
faccessat(-1, "/sys/bus/node/devices", R_OK|X_OK) = -1 ENOENT (No such file or directory)
faccessat(-1, "/sys/devices/system/node", R_OK|X_OK) = -1 ENOENT (No such file or directory)
uname({sysname="Linux", nodename="penguin", ...}) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 3
read(3, "0-7\n", 8192)                  = 4
close(3)                                = 0
openat(-1, "/proc/cpuinfo", O_RDONLY)   = 3
fcntl(3, F_GETFL)                       = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "processor\t: 0\nvendor_id\t: Genuin"..., 4096) = 4096
read(3, "895.997\ncache size\t: 6144 KB\nphy"..., 4096) = 4096
read(3, "\nwp\t\t: yes\nflags\t\t: fpu vme de p"..., 4096) = 2296
read(3, "", 4096)                       = 0
close(3)                                = 0
openat(AT_FDCWD, "/proc/mounts", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "/dev/vdb / btrfs rw,relatime,dis"..., 1024) = 1024
read(3, "e=15535116k,nr_inodes=3883779,mo"..., 1024) = 1024
read(3, "5 0 0\nrun /dev/.host_ip tmpfs rw"..., 1024) = 1024
read(3, "_subvol_rm_allowed,subvolid=5,su"..., 1024) = 1024
read(3, "w,nosuid,noexec,relatime,gid=100"..., 1024) = 1024
close(3)                                = 0
openat(-1, "/proc/self/cpuset", O_RDONLY) = 3
read(3, "/\n", 127)                     = 2
close(3)                                = 0
openat(-1, "/sys/fs/cgroup/cpuset//cpuset.cpus", O_RDONLY) = 3
read(3, "0-7\n", 4097)                  = 4
close(3)                                = 0
openat(-1, "/sys/fs/cgroup/cpuset//cpuset.mems", O_RDONLY) = 3
read(3, "0\n", 4097)                    = 2
close(3)                                = 0
openat(-1, "/sys/devices/system/cpu/online", O_RDONLY) = 3
read(3, "0-7\n", 4097)                  = 4
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices", O_RDONLY|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
fcntl(3, F_GETFL)                       = 0x18000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
getdents64(3, 0x5bef0aeaa340 /* 10 entries */, 32768) = 240
faccessat(-1, "/sys/bus/cpu/devices/cpu7/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu5/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu3/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu1/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu6/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu4/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu2/topology", X_OK) = 0
faccessat(-1, "/sys/bus/cpu/devices/cpu0/topology", X_OK) = 0
getdents64(3, 0x5bef0aeaa340 /* 0 entries */, 32768) = 0
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/topology/core_cpus", O_RDONLY) = 3
read(3, "01\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/topology/core_id", O_RDONLY) = 3
read(3, "0\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/topology/package_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/topology/physical_package_id", O_RDONLY) = 3
read(3, "0\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/type", O_RDONLY) = 3
read(3, "Data\n", 19)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/size", O_RDONLY) = 3
read(3, "32K\n", 10)                    = 4
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/number_of_sets", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index0/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index1/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index1/type", O_RDONLY) = 3
read(3, "Instruction\n", 19)            = 12
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/level", O_RDONLY) = 3
read(3, "2\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/type", O_RDONLY) = 3
read(3, "Unified\n", 19)                = 8
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/size", O_RDONLY) = 3
read(3, "256K\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/number_of_sets", O_RDONLY) = 3
read(3, "1024\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index2/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/level", O_RDONLY) = 3
read(3, "3\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/type", O_RDONLY) = 3
read(3, "Unified\n", 19)                = 8
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/size", O_RDONLY) = 3
read(3, "6144K\n", 10)                  = 6
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/number_of_sets", O_RDONLY) = 3
read(3, "8192\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index3/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu0/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/topology/core_cpus", O_RDONLY) = 3
read(3, "02\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/topology/core_id", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "03\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu1/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/topology/core_cpus", O_RDONLY) = 3
read(3, "04\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/topology/core_id", O_RDONLY) = 3
read(3, "2\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/type", O_RDONLY) = 3
read(3, "Data\n", 19)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/size", O_RDONLY) = 3
read(3, "32K\n", 10)                    = 4
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/number_of_sets", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index0/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index1/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index1/type", O_RDONLY) = 3
read(3, "Instruction\n", 19)            = 12
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/level", O_RDONLY) = 3
read(3, "2\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/type", O_RDONLY) = 3
read(3, "Unified\n", 19)                = 8
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/size", O_RDONLY) = 3
read(3, "256K\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/number_of_sets", O_RDONLY) = 3
read(3, "1024\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index2/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu2/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/topology/core_cpus", O_RDONLY) = 3
read(3, "08\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/topology/core_id", O_RDONLY) = 3
read(3, "3\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "0c\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu3/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/topology/core_cpus", O_RDONLY) = 3
read(3, "10\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/topology/core_id", O_RDONLY) = 3
read(3, "4\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/type", O_RDONLY) = 3
read(3, "Data\n", 19)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/size", O_RDONLY) = 3
read(3, "32K\n", 10)                    = 4
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/number_of_sets", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index0/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index1/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index1/type", O_RDONLY) = 3
read(3, "Instruction\n", 19)            = 12
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/level", O_RDONLY) = 3
read(3, "2\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/type", O_RDONLY) = 3
read(3, "Unified\n", 19)                = 8
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/size", O_RDONLY) = 3
read(3, "256K\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/number_of_sets", O_RDONLY) = 3
read(3, "1024\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index2/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu4/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/topology/core_cpus", O_RDONLY) = 3
read(3, "20\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/topology/core_id", O_RDONLY) = 3
read(3, "5\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "30\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu5/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/topology/core_cpus", O_RDONLY) = 3
read(3, "40\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/topology/core_id", O_RDONLY) = 3
read(3, "6\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/type", O_RDONLY) = 3
read(3, "Data\n", 19)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/size", O_RDONLY) = 3
read(3, "32K\n", 10)                    = 4
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/number_of_sets", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index0/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index1/level", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index1/type", O_RDONLY) = 3
read(3, "Instruction\n", 19)            = 12
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/level", O_RDONLY) = 3
read(3, "2\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/type", O_RDONLY) = 3
read(3, "Unified\n", 19)                = 8
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/size", O_RDONLY) = 3
read(3, "256K\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/coherency_line_size", O_RDONLY) = 3
read(3, "64\n", 10)                     = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/number_of_sets", O_RDONLY) = 3
read(3, "1024\n", 10)                   = 5
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index2/physical_line_partition", O_RDONLY) = 3
read(3, "1\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu6/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/topology/core_cpus", O_RDONLY) = 3
read(3, "80\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/topology/core_id", O_RDONLY) = 3
read(3, "7\n", 10)                      = 2
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/topology/die_cpus", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/cpufreq/cpuinfo_max_freq", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cpufreq/base_frequency", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index0/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index1/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index2/shared_cpu_map", O_RDONLY) = 3
read(3, "c0\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index3/shared_cpu_map", O_RDONLY) = 3
read(3, "ff\n", 4097)                   = 3
close(3)                                = 0
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index4/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index5/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index6/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index7/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index8/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/bus/cpu/devices/cpu7/cache/index9/shared_cpu_map", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/system/cpu/types", O_RDONLY|O_DIRECTORY) = -1 ENOENT (No such file or directory)
newfstatat(-1, "/sys/kernel/mm/hugepages", {st_mode=S_IFDIR|0755, st_size=0, ...}, 0) = 0
openat(-1, "/proc/meminfo", O_RDONLY)   = 3
read(3, "MemTotal:       31075064 kB\nMemF"..., 4095) = 1388
close(3)                                = 0
openat(-1, "/sys/kernel/mm/hugepages", O_RDONLY|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
fcntl(3, F_GETFL)                       = 0x18000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
getdents64(3, 0x5bef0aeaa340 /* 4 entries */, 32768) = 128
openat(-1, "/sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages", O_RDONLY) = 4
read(4, "0\n", 63)                      = 2
close(4)                                = 0
openat(-1, "/sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages", O_RDONLY) = 4
read(4, "0\n", 63)                      = 2
close(4)                                = 0
getdents64(3, 0x5bef0aeaa340 /* 0 entries */, 32768) = 0
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id", O_RDONLY|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
fcntl(3, F_GETFL)                       = 0x18000 (flags O_RDONLY|O_LARGEFILE|O_DIRECTORY)
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/product_name", O_RDONLY) = 3
read(3, "crosvm\n", 63)                 = 7
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/product_version", O_RDONLY) = 3
read(3, "\n", 63)                       = 1
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/product_serial", O_RDONLY) = -1 EACCES (Permission denied)
openat(-1, "/sys/devices/virtual/dmi/id/product_uuid", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/board_vendor", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/board_name", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/board_version", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/board_serial", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/board_asset_tag", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/chassis_vendor", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/chassis_type", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/chassis_version", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/chassis_serial", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/chassis_asset_tag", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(-1, "/sys/devices/virtual/dmi/id/bios_vendor", O_RDONLY) = 3
read(3, "crosvm\n", 63)                 = 7
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/bios_version", O_RDONLY) = 3
read(3, "0\n", 63)                      = 2
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/bios_date", O_RDONLY) = 3
read(3, "\n", 63)                       = 1
close(3)                                = 0
openat(-1, "/sys/devices/virtual/dmi/id/sys_vendor", O_RDONLY) = 3
read(3, "ChromiumOS\n", 63)             = 11
close(3)                                = 0
openat(AT_FDCWD, "/sys/devices/system/cpu", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents64(3, 0x5bef0aeaa340 /* 24 entries */, 32768) = 688
getdents64(3, 0x5bef0aeaa340 /* 0 entries */, 32768) = 0
close(3)                                = 0
openat(-1, "/sys/devices/system/cpu/possible", O_RDONLY) = 3
read(3, "0-7\n", 4097)                  = 4
close(3)                                = 0
sched_getaffinity(0, 8, [0, 1, 2, 3, 4, 5, 6, 7]) = 8
sched_getaffinity(0, 8, [0, 1, 2, 3, 4, 5, 6, 7]) = 8
sched_setaffinity(0, 8, [0])            = 0
--- SIGFPE {si_signo=SIGFPE, si_code=FPE_INTDIV, si_addr=0x78099b8cc06b} ---
+++ killed by SIGFPE (core dumped) +++
Floating point exception (core dumped)

@avikivity
Copy link
Member

Please share the output of lstopo-no-graphics (may need to install the hwloc package). Scylla is confused by the cpu topology.

@avikivity
Copy link
Member

Ah, you already noticed it's hwloc related. Anyway, run it from both host and container to see what stands out.

@ghost
Copy link
Author

ghost commented Apr 26, 2022

Hi @avikivity,

Running from both the host and the container results in Floating point exception (core dumped)

Dmesg

[363082.614416] traps: scylla[12075] trap divide error ip:7fb6d30406c2 sp:7ffd30b30680 error:0 in libhwloc.so.15[7fb6d3008000+3e000]
[363084.400411] traps: scylla[12169] trap divide error ip:7c47237d86c2 sp:7ffedf6cbed0 error:0 in libhwloc.so.15[7c47237a0000+3e000]
[363086.659801] traps: scylla[12187] trap divide error ip:78b4a2ec06c2 sp:7ffc16f20f90 error:0 in libhwloc.so.15[78b4a2e88000+3e000]
[363090.837847] traps: scylla[12261] trap divide error ip:7ad5007046c2 sp:7ffeea5541e0 error:0 in libhwloc.so.15[7ad5006cc000+3e000]
[363167.979099] traps: lstopo-no-graph[13274] trap divide error ip:7d679ff3b07e sp:7ffc4712ab40 error:0 in libhwloc.so.15.1.0[7d679ff05000+38000]
[363538.435314] traps: lstopo-no-graph[16187] trap divide error ip:7870f09ca06b sp:7ffe8325de60 error:0 in libhwloc.so.15.4.1[7870f098e000+3e000]

My colleague was able to repo with hwloc-ps as well. It looks like the issue might be in sched_setaffinity as the following strace seems to indicate:

(gdb) break sched_setaffinity
Function "sched_setaffinity" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (sched_setaffinity) pending.
(gdb) n
The program is not being run.
(gdb) run
Starting program: /usr/bin/hwloc-ps 
warning: Error disabling address space randomization: Operation not permitted
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Breakpoint 1, __GI___sched_setaffinity_new (pid=0, cpusetsize=8, cpuset=0x58f2ec22ffe0) at ../sysdeps/unix/sysv/linux/x86_64/../sched_setaffinity.c:35
35	../sysdeps/unix/sysv/linux/x86_64/../sched_setaffinity.c: No such file or directory.
(gdb) info sharedlibrary
From                To                  Syms Read   Shared Object Library
0x00007f78ca532090  0x00007f78ca5511a0  Yes         /lib64/ld-linux-x86-64.so.2
0x00007f78ca4d9c20  0x00007f78ca51696a  Yes (*)     /usr/lib/x86_64-linux-gnu/libhwloc.so.15
0x00007f78ca333320  0x00007f78ca47c759  Yes         /lib/x86_64-linux-gnu/libc.so.6
0x00007f78ca1d9200  0x00007f78ca272c98  Yes         /lib/x86_64-linux-gnu/libm.so.6
0x00007f78ca1a6770  0x00007f78ca1be21c  Yes (*)     /usr/lib/x86_64-linux-gnu/libudev.so.1
0x00007f78ca19d130  0x00007f78ca19e045  Yes         /lib/x86_64-linux-gnu/libdl.so.2
0x00007f78ca181580  0x00007f78ca1900a1  Yes         /lib/x86_64-linux-gnu/libpthread.so.0
0x00007f78ca1711d0  0x00007f78ca1716ed  Yes (*)     /usr/lib/x86_64-linux-gnu/hwloc/hwloc_gl.so
0x00007f78ca16a1b0  0x00007f78ca16c365  Yes (*)     /usr/lib/x86_64-linux-gnu/libXNVCtrl.so.0
0x00007f78ca043950  0x00007f78ca0cc66a  Yes (*)     /usr/lib/x86_64-linux-gnu/libX11.so.6
0x00007f78ca0143d0  0x00007f78ca01e4ff  Yes (*)     /usr/lib/x86_64-linux-gnu/libXext.so.6
0x00007f78c9ff1720  0x00007f78ca004205  Yes (*)     /usr/lib/x86_64-linux-gnu/libxcb.so.1
0x00007f78c9fe1200  0x00007f78c9fe1eae  Yes (*)     /usr/lib/x86_64-linux-gnu/libXau.so.6
0x00007f78c9ddb340  0x00007f78c9ddcc48  Yes (*)     /usr/lib/x86_64-linux-gnu/libXdmcp.so.6
0x00007f78c9dc78c0  0x00007f78c9dd2d45  Yes (*)     /usr/lib/x86_64-linux-gnu/libbsd.so.0
0x00007f78c9db8430  0x00007f78c9dbebf5  Yes (*)     /usr/lib/x86_64-linux-gnu/libmd.so.0
0x00007f78c9db21c0  0x00007f78c9db2a7d  Yes (*)     /usr/lib/x86_64-linux-gnu/hwloc/hwloc_opencl.so
0x00007f78c9da5200  0x00007f78c9daa20c  Yes (*)     /usr/lib/x86_64-linux-gnu/libOpenCL.so.1
0x00007f78c9d9b2d0  0x00007f78c9d9bfb4  Yes (*)     /usr/lib/x86_64-linux-gnu/hwloc/hwloc_pci.so
0x00007f78c9d903e0  0x00007f78c9d94851  Yes (*)     /usr/lib/x86_64-linux-gnu/libpciaccess.so.0
0x00007f78c9d74310  0x00007f78c9d84e34  Yes (*)     /lib/x86_64-linux-gnu/libz.so.1
0x00007f78c9d6c270  0x00007f78c9d6d3d1  Yes (*)     /usr/lib/x86_64-linux-gnu/hwloc/hwloc_xml_libxml.so
0x00007f78c9bebcb0  0x00007f78c9d0671e  Yes (*)     /usr/lib/x86_64-linux-gnu/libxml2.so.2
0x00007f78c9a3a490  0x00007f78c9b1f83d  Yes (*)     /usr/lib/x86_64-linux-gnu/libicuuc.so.67
0x00007f78c99af510  0x00007f78c99c66f2  Yes (*)     /lib/x86_64-linux-gnu/liblzma.so.5
0x00007f78c7e94040  0x00007f78c7e940f5  Yes (*)     /usr/lib/x86_64-linux-gnu/libicudata.so.67
0x00007f78c7d600a0  0x00007f78c7e37b8e  Yes (*)     /usr/lib/x86_64-linux-gnu/libstdc++.so.6
0x00007f78c7caf310  0x00007f78c7cbfb5d  Yes (*)     /lib/x86_64-linux-gnu/libgcc_s.so.1
(*): Shared library is missing debugging information.
(gdb) bt
#0  __GI___sched_setaffinity_new (pid=0, cpusetsize=8, cpuset=0x58f2ec22ffe0) at ../sysdeps/unix/sysv/linux/x86_64/../sched_setaffinity.c:35
#1  0x00007f78ca51173b in hwloc_linux_set_tid_cpubind () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15
#2  0x00007f78ca515fc8 in ?? () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15
#3  0x00007f78ca51678b in ?? () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15
#4  0x00007f78ca4db30e in ?? () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15
#5  0x00007f78ca4e3557 in hwloc_topology_load () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15
#6  0x000058f2ea617736 in ?? ()
#7  0x00007f78ca334d0a in __libc_start_main (main=0x58f2ea617440, argc=1, argv=0x7ffdb208a098, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdb208a088)
    at ../csu/libc-start.c:308
#8  0x000058f2ea617eaa in ?? ()
(gdb) c

Program received signal SIGFPE, Arithmetic exception.
0x00007f78ca51506b in ?? () from /usr/lib/x86_64-linux-gnu/libhwloc.so.15

@ghost
Copy link
Author

ghost commented Apr 26, 2022

Ah well here's something interesting. Reading through open-mpi/hwloc#525, I decided to try their debug steps.

HOST
lstopo --version
2.4.1

thomas@penguin:~/repos/platform-infrastructure$ lstopo -
Machine (30GB total)
  Package L#0
    NUMANode L#0 (P#0 30GB)
    L3 L#0 (6144KB)
      L2 L#0 (256KB) + L1d L#0 (32KB) + L1i L#0 (32KB)
        Core L#0 + PU L#0 (P#0)
        Core L#1 + PU L#1 (P#1)
      L2 L#1 (256KB) + L1d L#1 (32KB) + L1i L#1 (32KB)
        Core L#2 + PU L#2 (P#2)
        Core L#3 + PU L#3 (P#3)
      L2 L#2 (256KB) + L1d L#2 (32KB) + L1i L#2 (32KB)
        Core L#4 + PU L#4 (P#4)
        Core L#5 + PU L#5 (P#5)
      L2 L#3 (256KB) + L1d L#3 (32KB) + L1i L#3 (32KB)
        Core L#6 + PU L#6 (P#6)
        Core L#7 + PU L#7 (P#7)
  HostBridge
    PCI 00:02.0 (Display)
    Block "vdb"
    Block "vda"
    Block(NVDIMM) "pmem0"
    ```

From within the container

root@21cbe3bdc341:/# lstopo-no-graphics --version
lstopo-no-graphics 2.1.0
root@21cbe3bdc341:/# lstopo-no-graphics
Machine (30GB total)
Package L#0
NUMANode L#0 (P#0 30GB)
L3 L#0 (6144KB)
L2 L#0 (256KB) + L1d L#0 (32KB) + L1i L#0 (32KB)
Core L#0 + PU L#0 (P#0)
Core L#1 + PU L#1 (P#1)
L2 L#1 (256KB) + L1d L#1 (32KB) + L1i L#1 (32KB)
Core L#2 + PU L#2 (P#2)
Core L#3 + PU L#3 (P#3)
L2 L#2 (256KB) + L1d L#2 (32KB) + L1i L#2 (32KB)
Core L#4 + PU L#4 (P#4)
Core L#5 + PU L#5 (P#5)
L2 L#3 (256KB) + L1d L#3 (32KB) + L1i L#3 (32KB)
Core L#6 + PU L#6 (P#6)
Core L#7 + PU L#7 (P#7)
HostBridge
PCI 00:02.0 (Display)
Block "vdb"
Block "vda"
Block(NVDIMM) "pmem0"```

@ghost
Copy link
Author

ghost commented Apr 26, 2022

I think we've found a potential root cause of the issue:
https://bugs.chromium.org/p/chromium/issues/detail?id=1304418

hwloc has released a workaround as of 2.7.1: open-mpi/hwloc@33b555b

I'm going to test using the newest release of hwloc

@ghost
Copy link
Author

ghost commented Apr 27, 2022

@avikivity,
After replacing the hwloc dynamically linked lib in /opt/scylladb/libreloc/libhwloc.so.15 manually I was able to at least run the scylla command without it crashing:

root@fde31020a16c:/tmp/hwloc-2.7.1# /usr/bin/scylla --log-to-syslog 1 --log-to-stdout 0 --default-log-level info --network-stack posix --developer-mode=1 --overprovisioned --listen-address 172.17.0.2 --rpc-address 172.17.0.2 --seed-provider-parameters seeds=172.17.0.2 --alternator-address 172.17.0.2 --blocked-reactor-notify-ms 999999999
Scylla version 5.0.rc3-0.20220406.f92622e0d with build-id 2b79c4744216b294fdbd2f277940044c899156ea starting ...
command used: "/usr/bin/scylla --log-to-syslog 1 --log-to-stdout 0 --default-log-level info --network-stack posix --developer-mode=1 --overprovisioned --listen-address 172.17.0.2 --rpc-address 172.17.0.2 --seed-provider-parameters seeds=172.17.0.2 --alternator-address 172.17.0.2 --blocked-reactor-notify-ms 999999999"
parsed command line options: [log-to-syslog, (positional) 1, log-to-stdout, (positional) 0, default-log-level, (positional) info, network-stack, (positional) posix, developer-mode: 1, overprovisioned, listen-address: 172.17.0.2, rpc-address: 172.17.0.2, seed-provider-parameters: seeds=172.17.0.2, alternator-address: 172.17.0.2, blocked-reactor-notify-ms, (positional) 999999999]
root@fde31020a16c:/tmp/hwloc-2.7.1# 

I'm not sure if you would consider upgrading the version of hwloc you have, if not I'll plan on creating a custom container for the moment until ChromeOS fixes their bug.

@avikivity avikivity changed the title Scylla terminated by SIGFPE on startup on ChromeOS hwloc-induced crash on ChromeOS [Scylla terminated by SIGFPE on startup on ChromeOS] Apr 27, 2022
@avikivity
Copy link
Member

We source our hwloc from Fedora. So two things need to happen: Fedora upgrades their hwloc (you can help it out by filing a Fedora bug) and we update our baseline Fedora version (currently blocked on compiler problems, but we are working on fixing them). So it's good you have a workaround for the near term.

ghost pushed a commit to grapl-security/grapl that referenced this issue Apr 27, 2022
Currently there's a chrome bug https://bugs.chromium.org/p/chromium/issues/detail?id=1304418
that causes the crostini vm to send invalid hardware information. This
bug causes scylla to crash on startup with a SIGFPE scylladb/scylladb#10439.
Since hwloc has already issues a patch to deal with this, we're
replacing the dynamically linked lib scylladb uses with the patched version
@ghost
Copy link
Author

ghost commented Apr 27, 2022

I've confirmed that the workaround works.
For anyone else that encounters this prior to ChromeOS fixing their bug, the way to workaround this is to download hwloc 2.7.1+, compile it (./configure, make, make install) and then replace /opt/scylladb/libreloc/libhwloc.so.15 with the compiled version (as of 2.7.1 it should be /usr/local/lib/libhwloc.so.15.5.3)

@ghost ghost closed this as completed Apr 27, 2022
@DoronArazii DoronArazii added this to the 5.1 milestone Nov 8, 2022
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants