Open squid-f opened 5 months ago
This looks like a segfault, but I cannot reproduce it here with your test case. (Note that I had to remove two cfi ignore lists, since they were not in the zipfile.) Is the crash repeatable, and did you notice any out-of-memory errors on the host where you got this crash?
Thanks @DimitryAndric for your prompt answer.
What are the missing files? I will try to find them. I attached only the requested ones. Indeed the crash does not happen always at the same place. It is the second time it crashes and it was the same type of error. As I changed some build flags, I thought it was the effect of that but maybe it is more random. The host has 64GB of memory and I have not noticed any out-of-memory complaints.
If the crash is not repeatable it is usually caused by OOM situations, but there can also be some other issue, like non-determinism.
The text_decoration_painter-c56a94.sh
file refers to two CFI ignore lists, namely:
-fsanitize-ignorelist=../../tools/cfi/ignores.txt \
-fsanitize-system-ignorelist=/usr/lib64/llvm17/lib/clang/17/share/cfi_ignorelist.txt \
These aren't automatically attached to clang's crash report, unfortunately. I don't think these will matter, but it might be good to attach them anyway, just to make sure that they aren't the cause for the crash.
The /usr/lib64/llvm17/lib/clang/17/share/cfi_ignorelist.txt
file is from the distro-provided llvm17 installation, so it's very unlikely that causes problems, but ../../tools/cfi/ignores.txt
is something from the Chromium tree, which might contain something exotic.
FWIW, with clang llvmorg-18-init-00000-g4706251a318
(which is right after 17.x was branched), on my test machine it uses ~50s to compile, and ~644MiB of resident memory:
49.23 real 43.40 user 1.08 sys
660056 maximum resident set size
75025 average shared memory size
854 average unshared data size
701 average unshared stack size
151120 page reclaims
676 page faults
0 swaps
0 block input operations
1 block output operations
0 messages sent
0 messages received
0 signals received
8 voluntary context switches
21185 involuntary context switches
I have tried various clang versions, from roughly the 16.x branch point to the most recent main, and it never crashes.
Thanks for your great support. Here are the ignore lists. I will relaunch the build without cfi / thin_lto, to check the impact. ignores.txt cfi_ignorelist.txt
@llvm/issue-subscribers-clang-codegen
Author: squid-f (squid-f)
I could add both ignore lists, but I see no difference in behavior: it compiles fine with any version of llvm (from roughly after 16.x through 19.x) I have here. I'm unsure what is going on in your environment.
Hi again. By deactivating thin_lto and cfi flags of Chromium, I have been able to build it twice without any crash. I am sure I am not facing an out of memory issue. But, then, what is the issue? Weird.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
text_decoration_painter-c56a94.zip