Linux ARM64 Debug build broken |
|||
Issue descriptionIt appears that Linux ARM64 Debug builds are broken for Chromium (this config is not covered by any bots). I can repro like this: $ gn gen out/linux-arm64-debug --args='is_debug=true target_cpu="arm64" use_goma=true' Done. Made 5421 targets from 1219 files in 1044ms $ ninja -C out/linux-arm64-debug/ base_unittests ninja: Entering directory `out/linux-arm64-debug/' [6/801] SOLINK ./libtest_shared_library.so FAILED: libtest_shared_library.so libtest_shared_library.so.TOC python "/usr/local/google/home/kjellander/src/chrome/src/build/toolchain/gcc_solink_wrapper.py" --readelf="aarch64-linux-gnu-readelf" --nm="aarch64-linux-gnu-nm" --sofile="./libtest_shared_library.so" --tocfile="./libtest_shared_library.so.TOC" --output="./libtest_shared_library.so" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed --target=aarch64-linux-gnu -pthread -Werror -Wl,--gdb-index --sysroot=../../build/linux/debian_jessie_arm64-sysroot -L/usr/local/google/home/kjellander/src/chrome/src/build/linux/debian_jessie_arm64-sysroot/lib/aarch64-linux-gnu -Wl,-rpath-link=/usr/local/google/home/kjellander/src/chrome/src/build/linux/debian_jessie_arm64-sysroot/lib/aarch64-linux-gnu -L/usr/local/google/home/kjellander/src/chrome/src/build/linux/debian_jessie_arm64-sysroot/usr/lib/aarch64-linux-gnu -Wl,-rpath-link=/usr/local/google/home/kjellander/src/chrome/src/build/linux/debian_jessie_arm64-sysroot/usr/lib/aarch64-linux-gnu -o "./libtest_shared_library.so" -Wl,-soname="libtest_shared_library.so" @"./libtest_shared_library.so.rsp" /usr/bin/aarch64-linux-gnu-ld: unrecognized option '--gdb-index' /usr/bin/aarch64-linux-gnu-ld: use the --help option for usage information clang: error: linker command failed with exit code 1 (use -v to see invocation) [39/801] CXX obj/testing/gtest/gtest/gtest.o ninja: build stopped: subcommand failed. It used to work, but started failing in this interval: https://chromium.googlesource.com/chromium/src/+log/581ff14023..7566ff2a00 (discovered when rolling WebRTC which tries to support this configuration: https://codereview.webrtc.org/2782853003/). I think https://codereview.chromium.org/2786603003 might be the culprit. I would be happy to contribute time to setup compile-only bots for Chromium to protect the Linux ARM64 build - does that make sense or is Chromium intentionally not supporting this build configuration?
,
Apr 4 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1c4b5eb17214fa0aedea5193628c74312f71a2d2 commit 1c4b5eb17214fa0aedea5193628c74312f71a2d2 Author: kjellander <kjellander@chromium.org> Date: Tue Apr 04 18:36:33 2017 Don't use --gdb-index for Gold and LLVM linker It appears --gdb-index is not supported for Gold or the LLVM linker. This was discovered after https://codereview.chromium.org/2786603003 and affected builds configurations like Linux ARM64 Debug. BUG= 708104 Review-Url: https://codereview.chromium.org/2791403004 Cr-Commit-Position: refs/heads/master@{#461781} [modify] https://crrev.com/1c4b5eb17214fa0aedea5193628c74312f71a2d2/build/config/compiler/BUILD.gn
,
Apr 6 2017
The above fix is sufficient for Linux ARM64 Debug. sbc@: I see you're subscribed to build failures for the "Linux ARM" (Release) bot in https://build.chromium.org/p/chromium.fyi/waterfall. Would you consider expanding that to also cover: Linux ARM Debug Linux ARM64 Debug Linux ARM64 Release ? I could help out with setting up the bots, if you're willing to keep an eye on them. WebRTC is interested in supporting all these build configurations, but ideally we'd have some protection against build toolchain breakages like the one in this bug.
,
Apr 6 2017
Yes, sounds good to me. Presumably we could run them all on the same slave?
,
Apr 6 2017
I think one is too little since runs like https://build.chromium.org/p/chromium.fyi/builders/Linux%20ARM/builds/36312 takes 49 minutes. At least two sound better. Do you want me to set it up or do you want to? How about this naming, so we don't need to rename the existing one (and lose its history unless we fiddle around on the master)? Linux ARM Linux ARM (dbg) Linux ARM64 Linux ARM64 (dbg)
,
Apr 6 2017
We currently have very limited ARM swarming capacity so perhaps we could make these bots compile-only (at least initially)? Then they would be a lot faster.
,
Apr 6 2017
Certainly, that's all we need for WebRTC right now anyway, to protect compilation (we don't run any tests yet). You didn't answer me about if you wanted me to do the infra work of if you can do it?
,
Apr 6 2017
I'd be grateful if you could setup the bots. I'm happy to help with any issues that come up during setup and keep and help with failures ongoing.
,
Apr 25 2017
I'll setup the bots (or have someone in my team do it), I just haven't got to it yet (swamped with other tasks).
,
Jun 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4207742e9a9457d5f374b0dfd3ba2caf24df3362 commit 4207742e9a9457d5f374b0dfd3ba2caf24df3362 Author: Henrik Kjellander <kjellander@chromium.org> Date: Fri Jun 09 14:14:46 2017 Add Linux ARM Debug bot and ARM64 Debug+Release Until now, only Linux ARM Release was built (32-bit). With this, there's both Debug+Release coverage on ARM 32-bit and 64-bit for the Linux platform. BUG= 708104 Change-Id: Ibde3673f3af1458ffc0cc5355a7a5418d947ca9d Reviewed-on: https://chromium-review.googlesource.com/528192 Reviewed-by: Jochen Eisinger <jochen@chromium.org> Commit-Queue: Henrik Kjellander <kjellander@chromium.org> Cr-Commit-Position: refs/heads/master@{#478268} [modify] https://crrev.com/4207742e9a9457d5f374b0dfd3ba2caf24df3362/testing/buildbot/chromium.fyi.json [modify] https://crrev.com/4207742e9a9457d5f374b0dfd3ba2caf24df3362/tools/mb/mb_config.pyl
,
Jun 12 2017
Could you link the work to a non-fixed issue? Could you also check with labs for capacity before setting up those bots? Here's what we have for armv7: https://chromium-swarm.appspot.com/botlist?c=id&c=os&c=task&c=status&f=cores%3A2&f=cpu%3Aarmv7l&f=gpu%3Anone&f=os%3AUbuntu-14.04&f=pool%3AChrome&l=100&s=id%3Aasc Those few bots are competing with the V8 bots and I'm eager to keep additional load down. For armv8, are there any bots at all in the chromium pool?
,
Jun 12 2017
Tracking issue: You're right; I filed bug 732274 and updated the pending CLs. Let's continue this work in there. Re additional load: it won't be more than a few builds per day. I can even skip running tests on debug - getting compile coverage is what's important to us. Then the test-load difference will be zero. Re armv8: that's what I found too (and explained in the CL description of https://chromium-review.googlesource.com/c/527444/6), so I don't think we can run any ARM64 tests until that's fixed. |
|||
►
Sign in to add a comment |
|||
Comment 1 by kjellander@chromium.org
, Apr 4 2017