Enable debug for v8's heap.cc - #7388
dbezhetskov wants to merge 1 commit into
Conversation
|
@jasnell PTAL |
|
@fhanau you had opinions on this in the past |
|
This won't do what you want it to do: |
|
I think building workerd without perfetto ought to still be supported – but if I understand what you're saying correctly the issue only happens if we compile workerd with perfetto and V8 without it? In that case we're probably fine, the perfetto config in .bazelrc should ensure that perfetto is enabled on V8 iff enabled elsewhere too. |
Yes, I know, it doesn't enable debug build for V8, but still we don't need special case for heap.cc. I find it useful because it enables debug checks in V8.
Yes, the issue happens only for configuration = no inlining (debug) x WD_USES_PERFETTO x V8_USE_PERFETTO = false |
|
Sounds good, Dan or James should be able to merge then |
|
since https://chromium-review.googlesource.com/c/v8/v8/+/8418430 already landed and there is no objections, could you please land this @jasnell ? |
The root cause of this bug was that V8 was built without Perfetto support, while Workerd used its own Perfetto SDK.
This is a V8 issue; see https://chromium-review.googlesource.com/c/v8/v8/+/8418430.
When V8 is built with Perfetto disabled, it still exports symbols in the perfetto namespace. In debug builds, the linker may resolve references to the wrong symbols, causing the build to fail.
Workerd now configures V8 correctly:
5967ef7.
In addition, https://chromium-review.googlesource.com/c/v8/v8/+/8418430 should fix the underlying issue in V8 itself soon.