-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Open
Labels
Description
Q: After adopting my pending PRs, why would we still see an excess of syscalls for basic ls
invocations (~45)?
For context, see my pending PRs:
A: It seems as if perhaps uutils locales support causing excess of statx and readlink syscalls.
First, compare GNU to uutils:
strace -c ~/program/coreutils/target/release/ls .
...
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ------------------
31.06 0.000837 837 1 execve
12.65 0.000341 26 13 mmap
9.61 0.000259 13 19 14 readlink
8.16 0.000220 31 7 2 openat
6.60 0.000178 13 13 7 statx
4.71 0.000127 25 5 read
4.34 0.000117 23 5 mprotect
3.30 0.000089 22 4 brk
2.63 0.000071 35 2 getdents64
2.41 0.000065 32 2 munmap
2.26 0.000061 8 7 rt_sigaction
2.00 0.000054 10 5 close
1.97 0.000053 10 5 fstat
1.30 0.000035 35 1 write
1.00 0.000027 13 2 pread64
0.89 0.000024 8 3 sigaltstack
0.74 0.000020 20 1 1 access
0.71 0.000019 9 2 prlimit64
0.67 0.000018 18 1 poll
0.52 0.000014 2 6 ioctl
0.45 0.000012 6 2 getrandom
0.41 0.000011 11 1 sched_getaffinity
0.37 0.000010 10 1 newfstatat
0.33 0.000009 9 1 arch_prctl
0.30 0.000008 8 1 set_tid_address
0.30 0.000008 8 1 set_robust_list
0.30 0.000008 8 1 rseq
------ ----------- ----------- --------- --------- ------------------
100.00 0.002695 24 112 24 total
strace -c ls .
...
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
37.63 0.000818 818 1 execve
21.44 0.000466 25 18 mmap
7.73 0.000168 24 7 openat
7.31 0.000159 19 8 fstat
4.69 0.000102 20 5 read
4.37 0.000095 31 3 write
4.37 0.000095 47 2 getdents64
4.32 0.000094 10 9 close
2.12 0.000046 9 5 mprotect
1.56 0.000034 17 2 2 access
1.15 0.000025 12 2 pread64
0.83 0.000018 9 2 ioctl
0.64 0.000014 14 1 statx
0.41 0.000009 3 3 brk
0.41 0.000009 9 1 arch_prctl
0.37 0.000008 8 1 set_tid_address
0.32 0.000007 7 1 set_robust_list
0.32 0.000007 7 1 rseq
0.00 0.000000 0 1 munmap
0.00 0.000000 0 2 2 statfs
0.00 0.000000 0 1 prlimit64
0.00 0.000000 0 1 getrandom
------ ----------- ----------- --------- --------- ----------------
100.00 0.002174 28 77 4 total
Next I'd ask: Who is causing the excess of statx and readlink calls?
strace -k -e statx,readlink ~/program/coreutils/target/release/ls .
readlink("/proc/self/exe", "/srv/program/coreutils/target/re"..., 256) = 40
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::readlink+0x5b) [0x19061b]
> /srv/program/coreutils/target/release/ls(std::env::current_exe+0xc9) [0x190389]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x24) [0x1fb904]
statx(AT_FDCWD, "/srv/program/coreutils/target/release/locales/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe06221660) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x215) [0x1fbaf5]
statx(0, NULL, AT_STATX_SYNC_AS_STAT, STATX_ALL, NULL) = -1 EFAULT (Bad address)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0x285) [0x18f1f5]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x215) [0x1fbaf5]
statx(AT_FDCWD, "/srv/program/coreutils/target/share/locales/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe06221660) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x453) [0x1fbd33]
statx(AT_FDCWD, "/srv/program/coreutils/target/release/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0775, stx_size=2593792, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x50a) [0x1fbdea]
readlink("/srv", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target/release", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target/release/ls", 0x7ffe06221310, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
statx(AT_FDCWD, "/srv/program/coreutils/uucore/locales", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe062215b0) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x4b1) [0x1fc5b1]
readlink("/proc/self/exe", "/srv/program/coreutils/target/re"..., 256) = 40
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::readlink+0x5b) [0x19061b]
> /srv/program/coreutils/target/release/ls(std::env::current_exe+0xc9) [0x190389]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x24) [0x1fb904]
statx(AT_FDCWD, "/srv/program/coreutils/target/release/locales/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe06221400) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x215) [0x1fbaf5]
statx(AT_FDCWD, "/srv/program/coreutils/target/share/locales/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe06221400) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x453) [0x1fbd33]
statx(AT_FDCWD, "/srv/program/coreutils/target/release/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0775, stx_size=2593792, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x50a) [0x1fbdea]
readlink("/proc/self/exe", "/srv/program/coreutils/target/re"..., 256) = 40
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::readlink+0x5b) [0x19061b]
> /srv/program/coreutils/target/release/ls(std::env::current_exe+0xc9) [0x190389]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x24) [0x1fb904]
statx(AT_FDCWD, "/home/rswinford/program/coreutils/target/release/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0775, stx_size=2593792, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x215) [0x1fbaf5]
readlink("/home", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/home/rswinford", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/home/rswinford/program", "/srv/program", 1023) = 12
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target/release", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
readlink("/srv/program/coreutils/target/release/ls", 0x7ffe0621fc30, 1023) = -1 EINVAL (Invalid argument)
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /usr/lib/x86_64-linux-gnu/libc.so.6(realpath+0x3b0) [0x46ae0]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::canonicalize+0x19) [0x1722a9]
> /srv/program/coreutils/target/release/ls(std::sys::fs::canonicalize+0x137) [0x19a507]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x231) [0x1fc331]
statx(AT_FDCWD, "/srv/program/coreutils/uucore/locales", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffe0621fed0) = -1 ENOENT (No such file or directory)
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::create_bundle+0x4b1) [0x1fc5b1]
readlink("/proc/self/exe", "/srv/program/coreutils/target/re"..., 256) = 40
> /usr/lib/x86_64-linux-gnu/libc.so.6(readlink+0xb) [0x11bb2b]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::readlink+0x5b) [0x19061b]
> /srv/program/coreutils/target/release/ls(std::env::current_exe+0xc9) [0x190389]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x24) [0x1fb904]
statx(AT_FDCWD, "/home/rswinford/program/coreutils/target/release/ls", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0775, stx_size=2593792, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uucore::mods::locale::get_locales_dir+0x215) [0x1fbaf5]
statx(AT_FDCWD, ".", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFDIR|0775, stx_size=42, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(uu_ls::PathData::new+0x97) [0x1b2bc7]
> unexpected_backtracing_error [0x61ce8b6d44a0]
statx(AT_FDCWD, ".", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFDIR|0775, stx_size=42, ...}) = 0
> /usr/lib/x86_64-linux-gnu/libc.so.6(statx+0xe) [0x11bf4e]
> /srv/program/coreutils/target/release/ls(std::sys::fs::unix::try_statx+0xb5) [0x18f025]
> /srv/program/coreutils/target/release/ls(std::sys::fs::metadata+0x159) [0x18ee89]
> /srv/program/coreutils/target/release/ls(core::cell::once::OnceCell<T>::try_init+0x32) [0x1e7d02]
It would seem only two(?) out of 25 of these calls readlink and statx calls are related to the actual invocation of ls
whereas the rest are about locales support (which AFAIK doesn't currently work?).