Summary: | =www-client/chromium-113.0.5672.63:0/stable::gentoo emerging fails due to ld.lld gets killed by kernel oom | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Steffen Hau <steffen> |
Component: | Current packages | Assignee: | Chromium Project <chromium> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | llvm, steffen |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | excerpt from systemd journald |
Description
Steffen Hau
2023-05-16 14:14:10 UTC
Created attachment 861806 [details]
excerpt from systemd journald
Due to space constraints, I had to delete the build folder. I will upload the complete build.log once I start a new merge. wohnzimmernuc ~ # free -m total used free shared buff/cache available Mem: 31836 3794 16969 1882 11071 25601 Swap: 16383 3875 12508 Chromium build is very memory hungry, especially the linking. 32 gigabytes + 16 swap should be enough if other memory-hungry applications (such as a browsers) are not running. Personally, i build Chromium in a tty with the graphic session turned off to be 100% sure that there is enough memory. One of three systems (the one is 32GB memory) was successful, while the other two (with 8GB memory and 16GB swap) failed with ld.lld getting killed by OOM. I made sure, that plasma desktop was stopped and only base services like sshd are running. The ebuild checks for 9GB of memory. I have created an additional 16 GB swapfile and hope this is sufficient. Is there a specific need to link with ld.lld when lto is enabled? Shouldn't ld.bfd not beeing able to deal with LTO with the LLVMgold.so plugin? The situation gets even worse with every new chromium release. The amount of memory ld.lld consumes when getting killed by oom increases. I can't use chromium anymore. The last version which I was able to compile 112.0.5615.165 is not usable as it segfaults immediately after start and any newer version cannot be compiled because of not enough memory. No one here who has the same issues? I will try to temporarily switch off the lto use flag. I'd expect lld to always be more efficient memory-wise than bfd for lto. J Maybe because thin-lto uses all CPU threads: https://chromium.googlesource.com/chromium/src.git/+/refs/heads/main/build/config/compiler/BUILD.gn#734 I successfully merged www-client/chromium-122.0.6261.18 with use lto enabled. I have set -flto=auto in my CFLAGS/CXXFLAGS in make.conf, this lead to compiler invocations like "clang++ ... -flto=thin .... -flo=auto". I checked what the final options are by using -### and it came out that the last -flto wins. -flto=auto in clang will be set to -flto=full and that lead to several issues like this and bug923840. |