Skip to content

在一个EXE应用程序中调用多个由.NET9 AOT发布的动态库so文件会引发异常 #114193

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

Closed
527395632 opened this issue Apr 3, 2025 · 25 comments

Comments

@527395632
Copy link

Description

在一个EXE应用程序中调用多个由.NET9 AOT发布的动态库so文件会引发异常

Reproduction Steps

Image

Image

Image

AOT编译命令:

Image

C语言调用代码:

Image

Image

调用结果:

Image

Expected behavior

在一个EXE中应该是允许调用多个由.NET AOT编译的动态库的

Actual behavior

在一个EXE中应该是允许调用多个由.NET AOT编译的动态库时会报错, 导致程序闪退

Regression?

No response

Known Workarounds

No response

Configuration

No response

Other information

No response

@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Apr 3, 2025
@527395632
Copy link
Author

Image

@agocke
Copy link
Member

agocke commented Apr 3, 2025

Can you post a repro project or more complete steps? Screenshots will not be sufficient to reproduce and diagnose the problem.

@agocke agocke added the needs-author-action An issue or pull request that requires more info or actions from the author. label Apr 3, 2025
@527395632
Copy link
Author

我做了一个示例程序, 并且写了复现步骤, 请参阅:
https://github.com/527395632/AotExample.git

@dotnet-policy-service dotnet-policy-service bot removed the needs-author-action An issue or pull request that requires more info or actions from the author. label Apr 7, 2025
@agocke
Copy link
Member

agocke commented Apr 7, 2025

Thanks! @MichalStrehovsky can you take a look and see if this is a known issue?

@527395632
Copy link
Author

我目前在网上没收到相关的问题, 也没找到相关的解决方案。我不能确定是否是已知的问题。我能确定的是我网络上针对该问题没有搜到, 然后使用AI搜索得到可能是NativeAOT-coreclr相关的问题, 所以我才来此请教的。

@agocke agocke added this to the 10.0.0 milestone Apr 7, 2025
@agocke agocke removed the untriaged New issue has not been triaged by the area owner label Apr 7, 2025
@agocke
Copy link
Member

agocke commented Apr 8, 2025

I tried to repro this on linux-x64 and linux-arm64 but couldn't with .NET 9. Does this happen for you just with .NET 8, or .NET 9 as well?

@527395632
Copy link
Author

我在.NET8 和 .NET9 中都存在这个问题

@MichalStrehovsky
Copy link
Member

@527395632 could you please

  • Try running your a.out under strace and paste the output? (It might have more information about why this is failing.)
  • Try running export DOTNET_GCHeapHardLimit=400000000 to set a limit on memory use before executing a.out (It might fix the problem if it's a class of problems we saw before on some Linux devices)

@527395632
Copy link
Author

Try running your a.out under and paste the output? (It might have more information about why this is failing.)strace
我尝试过了多次测试, 发现这个ExceptionStrace无法打印出, 因为这个异常无法捕获出来, 程序是直接闪退的。因此无法获得更多的异常消息。
Try running to set a limit on memory use before executing (It might fix the problem if it's a class of problems we saw before on some Linux devices)export DOTNET_GCHeapHardLimit=400000000a.out
此处我尝试过增加DOTNET_GCHeapHardLimit的环境变量, 结果是一样的, 仍然闪退

@MichalStrehovsky
Copy link
Member

MichalStrehovsky commented Apr 22, 2025

我尝试过了多次测试, 发现这个ExceptionStrace无法打印出, 因为这个异常无法捕获出来, 程序是直接闪退的。因此无法获得更多的异常消息。

I meant running strace ./a.out instead of ./a.out. This will print what the program is doing until it crashes. Paste the output of that.

@527395632
Copy link
Author

下面是我使用strace输出的日志信息:

execve("./a.out", ["./a.out"], 0x7fcb88b3c0 /* 52 vars /) = 0
brk(NULL) = 0x5576ef5000
faccessat(AT_FDCWD, "/etc/ld.so.preload", R_OK) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/tls/aarch64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/tls/aarch64", 0x7fe6bae800, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/tls/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/tls", 0x7fe6bae800, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/aarch64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/aarch64", 0x7fe6bae800, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/build-libtest-unknown-Debug", 0x7fe6bae800, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/aarch64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f95197000
close(3) = 0
openat(AT_FDCWD, "/lib/aarch64-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\267\0\1\0\0\0P\17\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14528, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f951e0000
mmap(NULL, 78080, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f95183000
mprotect(0x7f95186000, 61440, PROT_NONE) = 0
mmap(0x7f95195000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f95195000
close(3) = 0
openat(AT_FDCWD, "tls/aarch64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-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\267\0\1\0\0\0\350\16\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1450736, ...}) = 0
mmap(NULL, 1519496, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f95010000
mprotect(0x7f9516a000, 65536, PROT_NONE) = 0
mmap(0x7f9517a000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15a000) = 0x7f9517a000
mmap(0x7f95180000, 12168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f95180000
close(3) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f951de000
mprotect(0x7f9517a000, 16384, PROT_READ) = 0
mprotect(0x7f95195000, 4096, PROT_READ) = 0
mprotect(0x556f6c5000, 4096, PROT_READ) = 0
mprotect(0x7f951e4000, 4096, PROT_READ) = 0
munmap(0x7f95197000, 110965) = 0
brk(NULL) = 0x5576ef5000
brk(0x5576f16000) = 0x5576f16000
openat(AT_FDCWD, "./DynamicLibrary1.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=3611144, ...}) = 0
getcwd("/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin", 128) = 41
mmap(NULL, 4069816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f94c2e000
mprotect(0x7f94f99000, 65536, PROT_NONE) = 0
mmap(0x7f94fa9000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x36b000) = 0x7f94fa9000
mmap(0x7f94faf000, 395704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f94faf000
close(3) = 0
openat(AT_FDCWD, "tls/aarch64/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./tls/aarch64/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./tls/aarch64", 0x7fe6bae920, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./tls/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./tls", 0x7fe6bae920, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./aarch64/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./aarch64", 0x7fe6bae920, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/.", {st_mode=S_IFDIR|0775, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f95197000
close(3) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\220\36\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31544, ...}) = 0
mmap(NULL, 95016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f94c16000
mprotect(0x7f94c1d000, 61440, PROT_NONE) = 0
mmap(0x7f94c2c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f94c2c000
close(3) = 0
openat(AT_FDCWD, "tls/aarch64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\360\272\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=633800, ...}) = 0
mmap(NULL, 696440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f94b6b000
mprotect(0x7f94c04000, 65536, PROT_NONE) = 0
mmap(0x7f94c14000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x99000) = 0x7f94c14000
close(3) = 0
openat(AT_FDCWD, "tls/aarch64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-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\267\0\1\0\0\0\300`\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=158008, ...}) = 0
mmap(NULL, 193512, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f94b3b000
mprotect(0x7f94b55000, 65536, PROT_NONE) = 0
mmap(0x7f94b65000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7f94b65000
mmap(0x7f94b67000, 13288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f94b67000
close(3) = 0
mprotect(0x7f94b65000, 4096, PROT_READ) = 0
mprotect(0x7f94c14000, 4096, PROT_READ) = 0
mprotect(0x7f94c2c000, 4096, PROT_READ) = 0
mprotect(0x7f94fa9000, 8192, PROT_READ) = 0
set_tid_address(0x7f951de0e0) = 34948
set_robust_list(0x7f951de0f0, 24) = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7f94b40b48, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7f94b40c08, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 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
munmap(0x7f95197000, 110965) = 0
openat(AT_FDCWD, "./DynamicLibrary2.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=3611144, ...}) = 0
getcwd("/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin", 128) = 41
mmap(NULL, 4069816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f94759000
mprotect(0x7f94ac4000, 65536, PROT_NONE) = 0
mmap(0x7f94ad4000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x36b000) = 0x7f94ad4000
mmap(0x7f94ada000, 395704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f94ada000
close(3) = 0
mprotect(0x7f94ad4000, 8192, PROT_READ) = 0
fstat(1, {st_mode=S_IFREG|0664, st_size=10858, ...}) = 0
rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSEGV, {sa_handler=0x7f94c86d18, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGFPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGFPE, {sa_handler=0x7f94c86e3c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTART}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 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, /* 24 entries /, 32768) = 688
getdents64(3, /
0 entries /, 32768) = 0
close(3) = 0
membarrier(MEMBARRIER_CMD_QUERY, 0) = 0x7f (MEMBARRIER_CMD_GLOBAL|MEMBARRIER_CMD_GLOBAL_EXPEDITED|MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED|MEMBARRIER_CMD_PRIVATE_EXPEDITED|MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED|MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE|MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE)
membarrier(MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED, 0) = 0
statfs("/sys/fs/cgroup", {f_type=TMPFS_MAGIC, f_bsize=4096, f_blocks=1009917, f_bfree=1009917, f_bavail=1009917, f_files=1009917, f_ffree=1009902, f_fsid={val=[0, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_NOSUID|ST_NODEV|ST_NOEXEC}) = 0
openat(AT_FDCWD, "/proc/self/mountinfo", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "23 29 0:22 / /sys rw,nosuid,node"..., 1024) = 1024
read(3, "pfs rw\n32 27 0:27 / /run/lock rw"..., 1024) = 1024
read(3, ",cpuacct\n46 37 0:37 / /sys/fs/cg"..., 1024) = 1024
read(3, " /proc/fs/nfsd rw,relatime share"..., 1024) = 755
read(3, "", 1024) = 0
close(3) = 0
openat(AT_FDCWD, "/proc/self/cgroup", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "9:pids:/user.slice/user-1001.sli"..., 1024) = 306
close(3) = 0
getpid() = 34948
sched_getaffinity(34948, 128, [0, 1, 2, 3, 4, 5, 6, 7]) = 32
get_mempolicy(NULL, NULL, 0, NULL, 0) = 0
openat(AT_FDCWD, "/sys/devices/system/node", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents64(3, /
10 entries /, 32768) = 312
getdents64(3, /
0 entries /, 32768) = 0
close(3) = 0
statfs("/sys/fs/cgroup", {f_type=TMPFS_MAGIC, f_bsize=4096, f_blocks=1009917, f_bfree=1009917, f_bavail=1009917, f_files=1009917, f_ffree=1009902, f_fsid={val=[0, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_NOSUID|ST_NODEV|ST_NOEXEC}) = 0
openat(AT_FDCWD, "/proc/self/mountinfo", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "23 29 0:22 / /sys rw,nosuid,node"..., 1024) = 1024
read(3, "pfs rw\n32 27 0:27 / /run/lock rw"..., 1024) = 1024
read(3, ",cpuacct\n46 37 0:37 / /sys/fs/cg"..., 1024) = 1024
read(3, " /proc/fs/nfsd rw,relatime share"..., 1024) = 755
read(3, "", 1024) = 0
close(3) = 0
openat(AT_FDCWD, "/proc/self/cgroup", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "9:pids:/user.slice/user-1001.sli"..., 1024) = 306
close(3) = 0
getpid() = 34948
sched_getaffinity(34948, 128, [0, 1, 2, 3, 4, 5, 6, 7]) = 32
openat(AT_FDCWD, "/sys/fs/cgroup/cpu,cpuacct//cpu.cfs_quota_us", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(3, "-1\n", 4096) = 3
close(3) = 0
rt_sigaction(SIGRT_2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_2, {sa_handler=0x7f94c82a8c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
openat(AT_FDCWD, "/sys/fs/cgroup/memory/user.slice/user-1001.slice/session-c1.scope/memory.limit_in_bytes", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(3, "9223372036854771712\n", 4096) = 20
close(3) = 0
sysinfo({uptime=8612, loads=[71616, 79904, 76704], totalram=8273240064, freeram=2338627584, sharedram=60420096, bufferram=192274432, totalswap=9971953664, freeswap=9971953664, procs=1369, totalhigh=0, freehigh=0, mem_unit=1}) = 0
mmap(NULL, 274877911040, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x156f6b3000
munmap(0x156f6b3000, 4096) = 0
madvise(0x156f6b4000, 274877906944, MADV_DONTDUMP) = 0
mmap(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f94718000
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index0/size", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "32K\n", 4096) = 4
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index0/level", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "1\n", 4096) = 2
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index1/size", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "32K\n", 4096) = 4
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index1/level", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "1\n", 4096) = 2
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index2/size", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "2048K\n", 4096) = 6
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index2/level", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "2\n", 4096) = 2
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index3/size", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "4096K\n", 4096) = 6
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index3/level", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(3, "3\n", 4096) = 2
close(3) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cache/index4/size", O_RDONLY) = -1 ENOENT (没有那个文件或目录)
mmap(NULL, 2494722048, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7effbf1000
madvise(0x7effbf1000, 2494722048, MADV_DONTDUMP) = 0
mprotect(0x7effbf1000, 40960, PROT_READ|PROT_WRITE) = 0
madvise(0x7effbf1000, 40960, MADV_DODUMP) = 0
mprotect(0x7f07bf0000, 45056, PROT_READ|PROT_WRITE) = 0
madvise(0x7f07bf0000, 45056, MADV_DODUMP) = 0
mprotect(0x7f0fbf0000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x7f0fbf0000, 4096, MADV_DODUMP) = 0
mprotect(0x7f0fc10000, 20480, PROT_READ|PROT_WRITE) = 0
madvise(0x7f0fc10000, 20480, MADV_DODUMP) = 0
mprotect(0x7f13c0f000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x7f13c0f000, 4096, MADV_DODUMP) = 0
mprotect(0x7f13c1f000, 8192, PROT_READ|PROT_WRITE) = 0
madvise(0x7f13c1f000, 8192, MADV_DODUMP) = 0
mmap(NULL, 823296, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7effb28000
openat(AT_FDCWD, "/proc/meminfo", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "MemTotal: 8079336 kB\nMemF"..., 1024) = 1024
close(3) = 0
openat(AT_FDCWD, "/sys/fs/cgroup/memory/user.slice/user-1001.slice/session-c1.scope/memory.limit_in_bytes", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(3, "9223372036854771712\n", 4096) = 20
close(3) = 0
sysinfo({uptime=8612, loads=[71616, 79904, 76704], totalram=8273240064, freeram=2338627584, sharedram=60420096, bufferram=192274432, totalswap=9971953664, freeswap=9971953664, procs=1369, totalhigh=0, freehigh=0, mem_unit=1}) = 0
mprotect(0x1571800000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x1571800000, 4096, MADV_DODUMP) = 0
mprotect(0x1571c00000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x1571c00000, 4096, MADV_DODUMP) = 0
mprotect(0x1572000000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x1572000000, 4096, MADV_DODUMP) = 0
mprotect(0x1572400000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x1572400000, 4096, MADV_DODUMP) = 0
mprotect(0x156f800000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x156f800000, 4096, MADV_DODUMP) = 0
mmap(NULL, 151552, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7effb03000
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7eff302000
mprotect(0x7eff303000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7effb01ae0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7effb022b0, tls=0x7effb028e0, child_tidptr=0x7effb022b0) = 34949
mmap(NULL, 126976, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7eff2e3000
munmap(0x7eff2e3000, 53248) = 0
munmap(0x7eff300000, 8192) = 0
madvise(0x7eff2f0000, 65536, MADV_DONTDUMP) = 0
mprotect(0x7eff2f0000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x7eff2f0000, 4096, MADV_DODUMP) = 0
mprotect(0x7f94eee000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x7f94eee000, 4096, PROT_READ) = 0
gettid() = 34948
openat(AT_FDCWD, "/proc/self/maps", O_RDONLY|O_CLOEXEC) = 3
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192
1024, rlim_max=RLIM64_INFINITY}) = 0
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(3, "156f6b4000-156f800000 ---p 00000"..., 1024) = 1024
read(3, "\n7eff2f0000-7eff2f1000 rw-p 0000"..., 1024) = 1024
read(3, "03:04 1707632 "..., 1024) = 1024
read(3, "4c14000-7f94c15000 r--p 00099000"..., 1024) = 1024
read(3, "afcsc/\346\241\214\351\235\242/AotExample-master/b"..., 1024) = 1024
read(3, "000000 103:02 2754531 "..., 1024) = 1024
read(3, " [stack]\n", 1024) = 22
close(3) = 0
sched_getaffinity(34948, 32, [0, 1, 2, 3, 4, 5, 6, 7]) = 32
mprotect(0x156f801000, 65536, PROT_READ|PROT_WRITE) = 0
madvise(0x156f801000, 65536, MADV_DODUMP) = 0
mprotect(0x7eff2f1000, 4096, PROT_READ|PROT_WRITE) = 0
madvise(0x7eff2f1000, 4096, MADV_DODUMP) = 0
mprotect(0x1572001000, 65536, PROT_READ|PROT_WRITE) = 0
madvise(0x1572001000, 65536, MADV_DODUMP) = 0
fcntl(1, F_DUPFD_CLOEXEC, 0) = 3
mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f951a3000
munmap(0x7f951a3000, 53248) = 0
munmap(0x7f951b1000, 8192) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/tls/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/aarch64-linux-gnu/tls/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/tls/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/aarch64-linux-gnu/tls", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/aarch64-linux-gnu/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/aarch64-linux-gnu", {st_mode=S_IFDIR|0755, st_size=114688, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/tls/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/tls/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/tls/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/tls", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu", {st_mode=S_IFDIR|0755, st_size=114688, ...}, 0) = 0
openat(AT_FDCWD, "/lib/tls/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/tls/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/tls/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/tls", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/lib", {st_mode=S_IFDIR|0755, st_size=12288, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib/tls/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/tls/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/tls/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/tls", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib/aarch64", 0x7fe6bae600, 0) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.85", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
newfstatat(AT_FDCWD, "/usr/lib", {st_mode=S_IFDIR|0755, st_size=12288, ...}, 0) = 0
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.84", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.83", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.82", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.81", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.80", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.79", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.78", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.77", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.76", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.75", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.74", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.73", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.72", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.71", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.70", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.69", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.68", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/aarch64-linux-gnu/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/usr/lib/libicuuc.so.67", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicuuc.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicuuc.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicuuc.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicuuc.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicuuc.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicuuc.so.66", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\220^\6\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1951904, ...}) = 0
mmap(NULL, 2023736, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7eff0e5000
mprotect(0x7eff2af000, 65536, PROT_NONE) = 0
mmap(0x7eff2bf000, 77824, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1ca000) = 0x7eff2bf000
mmap(0x7eff2d2000, 4408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7eff2d2000
close(4) = 0
openat(AT_FDCWD, "tls/aarch64/libicudata.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicudata.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicudata.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicudata.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicudata.so.66", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\200\4\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=28042880, ...}) = 0
mmap(NULL, 28106768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7efd616000
mprotect(0x7eff0d3000, 65536, PROT_NONE) = 0
mmap(0x7eff0e3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1abd000) = 0x7eff0e3000
close(4) = 0
openat(AT_FDCWD, "tls/aarch64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libstdc++.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-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\267\0\1\0\0\0\340\247\t\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=1907992, ...}) = 0
mmap(NULL, 1984176, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7efd431000
mprotect(0x7efd5f6000, 61440, PROT_NONE) = 0
mmap(0x7efd605000, 57344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1c4000) = 0x7efd605000
mmap(0x7efd613000, 9904, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7efd613000
close(4) = 0
openat(AT_FDCWD, "tls/aarch64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/lib/aarch64-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\267\0\1\0\0\0\320)\0\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=80200, ...}) = 0
mmap(NULL, 144472, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7efd40d000
mprotect(0x7efd420000, 61440, PROT_NONE) = 0
mmap(0x7efd42f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x12000) = 0x7efd42f000
close(4) = 0
mprotect(0x7efd42f000, 4096, PROT_READ) = 0
mprotect(0x7efd605000, 45056, PROT_READ) = 0
mprotect(0x7eff0e3000, 4096, PROT_READ) = 0
mprotect(0x7eff2bf000, 73728, PROT_READ) = 0
brk(0x5576f37000) = 0x5576f37000
munmap(0x7eff2d4000, 110965) = 0
openat(AT_FDCWD, "tls/aarch64/libicui18n.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "tls/libicui18n.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "aarch64/libicui18n.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "libicui18n.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/home/afcsc/\346\241\214\351\235\242/AotExample-master/bin/./libicui18n.so.66", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/dev/cur_gl", O_RDONLY|O_CLOEXEC) = -1 ENOENT (没有那个文件或目录)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=110965, ...}) = 0
mmap(NULL, 110965, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7eff2d4000
close(4) = 0
openat(AT_FDCWD, "/lib/aarch64-linux-gnu/libicui18n.so.66", O_RDONLY|O_CLOEXEC) = 4
read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\200\342\16\0\0\0\0\0"..., 832) = 832
fstat(4, {st_mode=S_IFREG|0644, st_size=3000736, ...}) = 0
mmap(NULL, 3068464, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7efd11f000
mprotect(0x7efd3ea000, 65536, PROT_NONE) = 0
mmap(0x7efd3fa000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2cb000) = 0x7efd3fa000
mmap(0x7efd40c000, 560, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7efd40c000
close(4) = 0
mprotect(0x7efd3fa000, 69632, PROT_READ) = 0
munmap(0x7eff2d4000, 110965) = 0
futex(0x7eff2d2110, FUTEX_WAKE_PRIVATE, 2147483647) = 0
openat(AT_FDCWD, "/dev/urandom", O_RDONLY|O_CLOEXEC) = 4
read(4, "\344<\376\320\270\255\311\367", 8) = 8
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
getpid() = 34948
pipe2([5, 6], O_CLOEXEC) = 0
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7efc91e000
mprotect(0x7efc91f000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7efd11dae0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7efd11e2b0, tls=0x7efd11e8e0, child_tidptr=0x7efd11e2b0) = 34950
rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, {sa_handler=0x7f94c9614c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGQUIT, {sa_handler=0x7f94c9614c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCONT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCONT, {sa_handler=0x7f94c9614c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
ioctl(1, TCGETS, 0x7fe6baefe0) = -1 ENOTTY (对设备不适当的 ioctl 操作)
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCHLD, {sa_handler=0x7f94c9614c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGWINCH, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGWINCH, {sa_handler=0x7f94c9614c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
write(3, "-----------------------\n", 24-----------------------
) = 24
rt_sigaction(SIGSEGV, NULL, {sa_handler=0x7f94c86d18, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
rt_sigaction(SIGSEGV, {sa_handler=0x7f947b1d18, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=0x7f94c86d18, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
rt_sigaction(SIGFPE, NULL, {sa_handler=0x7f94c86e3c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
rt_sigaction(SIGFPE, {sa_handler=0x7f947b1e3c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=0x7f94c86e3c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTART}, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTART}, 8) = 0
openat(AT_FDCWD, "/sys/devices/system/cpu", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 7
fstat(7, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents64(7, /* 24 entries /, 32768) = 688
getdents64(7, /
0 entries /, 32768) = 0
close(7) = 0
membarrier(MEMBARRIER_CMD_QUERY, 0) = 0x7f (MEMBARRIER_CMD_GLOBAL|MEMBARRIER_CMD_GLOBAL_EXPEDITED|MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED|MEMBARRIER_CMD_PRIVATE_EXPEDITED|MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED|MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE|MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE)
membarrier(MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED, 0) = 0
statfs("/sys/fs/cgroup", {f_type=TMPFS_MAGIC, f_bsize=4096, f_blocks=1009917, f_bfree=1009917, f_bavail=1009917, f_files=1009917, f_ffree=1009902, f_fsid={val=[0, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_NOSUID|ST_NODEV|ST_NOEXEC}) = 0
openat(AT_FDCWD, "/proc/self/mountinfo", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(7, "23 29 0:22 / /sys rw,nosuid,node"..., 1024) = 1024
read(7, "pfs rw\n32 27 0:27 / /run/lock rw"..., 1024) = 1024
read(7, ",cpuacct\n46 37 0:37 / /sys/fs/cg"..., 1024) = 1024
read(7, " /proc/fs/nfsd rw,relatime share"..., 1024) = 755
read(7, "", 1024) = 0
close(7) = 0
openat(AT_FDCWD, "/proc/self/cgroup", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(7, "9:pids:/user.slice/user-1001.sli"..., 1024) = 306
close(7) = 0
getpid() = 34948
sched_getaffinity(34948, 128, [0, 1, 2, 3, 4, 5, 6, 7]) = 32
get_mempolicy(NULL, NULL, 0, NULL, 0) = 0
openat(AT_FDCWD, "/sys/devices/system/node", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 7
fstat(7, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents64(7, /
10 entries /, 32768) = 312
getdents64(7, /
0 entries */, 32768) = 0
close(7) = 0
statfs("/sys/fs/cgroup", {f_type=TMPFS_MAGIC, f_bsize=4096, f_blocks=1009917, f_bfree=1009917, f_bavail=1009917, f_files=1009917, f_ffree=1009902, f_fsid={val=[0, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_NOSUID|ST_NODEV|ST_NOEXEC}) = 0
openat(AT_FDCWD, "/proc/self/mountinfo", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(7, "23 29 0:22 / /sys rw,nosuid,node"..., 1024) = 1024
read(7, "pfs rw\n32 27 0:27 / /run/lock rw"..., 1024) = 1024
read(7, ",cpuacct\n46 37 0:37 / /sys/fs/cg"..., 1024) = 1024
read(7, " /proc/fs/nfsd rw,relatime share"..., 1024) = 755
read(7, "", 1024) = 0
close(7) = 0
openat(AT_FDCWD, "/proc/self/cgroup", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(7, "9:pids:/user.slice/user-1001.sli"..., 1024) = 306
close(7) = 0
getpid() = 34948
sched_getaffinity(34948, 128, [0, 1, 2, 3, 4, 5, 6, 7]) = 32
openat(AT_FDCWD, "/sys/fs/cgroup/cpu,cpuacct//cpu.cfs_quota_us", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(7, "-1\n", 4096) = 3
close(7) = 0
rt_sigaction(SIGRT_2, NULL, {sa_handler=0x7f94c82a8c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
rt_sigaction(SIGRT_2, {sa_handler=0x7f947ada8c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, {sa_handler=0x7f94c82a8c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, 8) = 0
openat(AT_FDCWD, "/sys/fs/cgroup/memory/user.slice/user-1001.slice/session-c1.scope/memory.limit_in_bytes", O_RDONLY) = 7
fstat(7, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(7, "9223372036854771712\n", 4096) = 20
close(7) = 0
sysinfo({uptime=8612, loads=[71616, 79904, 76704], totalram=8273240064, freeram=2338611200, sharedram=60420096, bufferram=192274432, totalswap=9971953664, freeswap=9971953664, procs=1371, totalhigh=0, freehigh=0, mem_unit=1}) = 0
mmap(NULL, 274877911040, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (无法分配内存)
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
getpid() = 34948
gettid() = 34948
tgkill(34948, 34948, SIGABRT) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=34948, si_uid=1001} ---
+++ killed by SIGABRT (core dumped) +++

@MichalStrehovsky
Copy link
Member

The relevant line in the log is:

mmap(NULL, 274877911040, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (无法分配内存)

This is the same issue as #96592. The system doesn't allow the GC reserving 256 GB of address space twice. The DOTNET_GCHeapHardLimit=400000000 environment variable should fix this. How are you setting the environment variable?

Copy link
Contributor

Tagging subscribers to this area: @dotnet/gc
See info in area-owners.md if you want to be subscribed.

@527395632
Copy link
Author

非常抱歉, 是我之前环境变量设置错了, 经过我重新测试及参考 #96592 的问题, 已经成功解决问题了。

在此, 非常感谢 @MichalStrehovsky @agocke @jkotas @frankbolero 的支持, 谢谢你们!

Image

@mangod9
Copy link
Member

mangod9 commented Apr 22, 2025

can you try setting DOTNET_GCRegionRange to something like 8GB and check if that works better?

@527395632
Copy link
Author

我对DOTNET_GCRegionRange 不是很了解。我尝试咨询了AI, 得到以下回复:
Image
Image
我对DOTNET_GCRegionRange 变量也不了解, 尝试使用AI让它给我写一个配置DOTNET_GCRegionRange 的示例, 然而得到的是无法提供示例。我目前也不知道这个变量如何设置, 我不知道它的值应该写什么...
Image
Image
Image

@am11
Copy link
Member

am11 commented Apr 22, 2025

DOTNET_GCRegionRange=0x200000000 8GB
DOTNET_GCHeapHardLimit=0x400000000 16GB

(configuration system considers 0x optional, but 0x makes it clear that these settings require hexadecimal values)

@527395632
Copy link
Author

export DOTNET_GCRegionRange=0x200000000
export DOTNET_GCHeapHardLimit=0x400000000

经过测试我得出以下结论:
1:采用0x的16进制写法会导致程序异常崩溃, 不写就可以正常运行
2:在添加DOTNET_GCRegionRange之后感觉和没加差不多, 没发现由什么区别。可能是我不了解内部的工作机制亦或者是我没关注到重点。但是得出的结论是配置了DOTNET_GCHeapHardLimit环境变量, 且不能使用0x开头的就可以解决问题。对于是否配置DOTNET_GCRegionRange环境变量未得出差异在哪里

Image

@am11
Copy link
Member

am11 commented Apr 22, 2025

1:采用0x的16进制写法会导致程序异常崩溃, 不写就可以正常运行

I'm not sure about this.

using System;
using System.Runtime;
using System.Runtime.InteropServices;

GCMemoryInfo memoryInfo = GC.GetGCMemoryInfo();

Console.WriteLine($"HighMemoryLoadThresholdBytes: {memoryInfo.HighMemoryLoadThresholdBytes}");
Console.WriteLine($"MemoryLoadBytes: {memoryInfo.MemoryLoadBytes}");
Console.WriteLine($"TotalAvailableMemoryBytes: {memoryInfo.TotalAvailableMemoryBytes}");

Console.WriteLine($"GC Heap Hard Limit (approx): {memoryInfo.TotalAvailableMemoryBytes / (1024 * 1024)} MB");

DOTNET_GCHeapHardLimit=0x400000000 ./gcfiddle
DOTNET_GCHeapHardLimit=400000000 ./gcfiddle

does produce the same result for me (which is different than without setting the env var).

@527395632
Copy link
Author

哈哈哈哈, 那看来可以结案拉! 非常感谢大家的帮助!!

@Maoni0
Copy link
Member

Maoni0 commented Apr 22, 2025

using "0x" or not should produce the same result as @am11 observed. if this is not the case you are seeing, something is wrong. this is documented in our config page https://learn.microsoft.com/en-us/dotnet/core/runtime-config/garbage-collector -

For number values, use decimal notation for settings in the runtimeconfig.json or runtimeconfig.template.json file and hexadecimal notation for environment variable settings. For hexadecimal values, you can specify them with or without the "0x" prefix.

GCRegionRange is the space GC reserves for the GC heap, which means it will replace the 256GB value you saw in the mmap call. so it doesn't make sense to assign a smaller value than what you specify for GCHeapHardLimit. you are not seeing any errors because the heap isn't large enough. you should specify GCRegionRange as @mangod9 suggested without specifying GCHeapHardLimit.

@Maoni0
Copy link
Member

Maoni0 commented Apr 23, 2025

#114944 will make this easy to diagnose.

@MichalStrehovsky
Copy link
Member

#114944 will make this easy to diagnose.

It might help for others, but probably not for this case. This case is for a shared library built with native AOT and the user trying to load two such shared libraries into the process (each initializing their own GC).

As far as the consumer of the shared library built with native AOT is concerned, these are just native libraries like any other (they just expose a couple C-ABI exports). There's no "host" involved. We don't have a way to communicate this to the user, so it will stay a fail fast.

See the repro above for details. The "host" is the C code that just dlopens a library and calls a symbol in it.

Is there really no way for GC to figure out the reservation is going to fail and adjust accordingly? These are pretty expensive for us to root cause.

@527395632
Copy link
Author

@MichalStrehovsky 说的非常正确。 应用场景确实如此。
如果只是单纯的App那么 @Maoni0 的解决方案是对大家有帮助的。然而如果在开发AOT动态库的时候, 且多个被开发出来的动态库被加载到同一个App中执行调用, 这个解决方案可能不是特别友好, 他们不应该涉及Host

谷歌翻译: (https://translate.google.com/?hl=zh-cn&sl=zh-CN&tl=en&op=translate)
@MichalStrehovsky is right. This is indeed the case.
If it is just an App, then @Maoni0's solution is helpful. However, if you are developing an AOT dynamic library and multiple developed dynamic libraries are loaded into the same App for execution, this solution may not be very friendly. They should not involve the Host.

@agocke
Copy link
Member

agocke commented Apr 28, 2025

Closing this one as resolved for now -- but we can open up a new issue for diagnostic improvements

@agocke agocke closed this as completed Apr 28, 2025
@github-actions github-actions bot locked and limited conversation to collaborators May 29, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
Archived in project
Development

No branches or pull requests

7 participants