• Emanuel Ziegler's avatar
    [wasm] Do not log code of functions whose module is not fully loaded · 8ee54c92
    Emanuel Ziegler authored
    This is a reland of change Idb1061cafcba7a2a654a207402dca520f79a3bbe.
    The access to wire_bytes has been protected by using atomic operations.
    
    Under some circumstances, Wasm is trying to log code for which the
    wire bytes are not fully loaded yet. This can happen during streaming
    compilation when a few functions are already fully compiled but the
    engine is still streaming the remaining functions.
    
    If the profiler now kicks in, it will attempt to log these freshly
    compiled functions. As these functions will not be executed before
    the module is fully compiled, we can simply defer the logging in this
    case.
    
    R=clemensb@chromium.org
    
    Bug: chromium:1085852
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel
    Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng
    Change-Id: Iccb6607e8adb9fdaf6138d4ccd30de58d6a6cdff
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2230536
    Commit-Queue: Emanuel Ziegler <ecmziegler@chromium.org>
    Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#68336}
    8ee54c92
test-streaming-compilation.cc 47.9 KB