ladybird icon indicating copy to clipboard operation
ladybird copied to clipboard

copy.sh/v86 crashes Ladybird

Open xdevs23 opened this issue 4 months ago • 14 comments

Summary

When I try to launch SerenityOS in v86 in Ladybird via https://copy.sh/v86/?profile=serenity, Ladybird crashes.

Source code: https://github.com/copy/v86

Operating system

Linux 6.17.8 #1-NixOS SMP PREEMPT_DYNAMIC Thu Nov 13 20:37:49 UTC 2025

ANSI_COLOR="0;38;2;126;186;228"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="25.05.20251124.1c8ba8d"
CPE_NAME="cpe:/o:nixos:nixos:25.05"
DEFAULT_HOSTNAME=nixos
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
ID_LIKE=""
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 25.05 (Warbler)"
SUPPORT_END="2025-12-31"
SUPPORT_URL="https://nixos.org/community.html"
VARIANT=""
VARIANT_ID=""
VENDOR_NAME=NixOS
VENDOR_URL="https://nixos.org/"
VERSION="25.05 (Warbler)"
VERSION_CODENAME=warbler
VERSION_ID="25.05"

Steps to reproduce

  1. Go to https://copy.sh/v86/?profile=serenity
  2. Wait for download to finish
  3. After a few seconds, it crashes with "Ladybird flew off-course!"

Expected behavior

The VM would start and run

Actual behavior

The website crashes before the VM is visible.

URL for a reduced test case

https://copy.sh/v86/?profile=serenity

HTML/SVG/etc. source for a reduced test case

N/A

Log output and (if possible) backtrace

2532.763 Ladybird(73580): WebContent process crashed! Last page loaded: https://copy.sh/v86/?profile=serenity
2532.763 Ladybird(73580): Consider raising an issue at https://github.com/LadybirdBrowser/ladybird/issues/new/choose
2532.767 WebContent(74770): FIXME: Handle null navigation_request in navigation response Content Security Policy check.

Screenshots or screen recordings

No response

Build flags or config settings

Launched using:

nix run github:NixOS/nixpkgs/master#ladybird

rev: a0e85ff7490e554dade846937267d034fda7d49d

Contribute a patch?

  • [ ] I’ll contribute a patch for this myself.

xdevs23 avatar Dec 03 '25 14:12 xdevs23

Wow I got a stacktrace with a depth of 209155.

This is the bottom

#209022 0x00007fef2e89265c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209023 Wasm::InstructionHandler<70ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1948
#209024 0x00007fef2e88e9dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209025 Wasm::InstructionHandler<77ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1997
#209026 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209027 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209028 0x00007fef2e88ea5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209029 Wasm::InstructionHandler<79ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:2011
#209030 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209031 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209032 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209033 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209034 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209035 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209036 0x00007fef2e88e9dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209037 Wasm::InstructionHandler<77ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1997
#209038 0x00007fef2e88eadc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209039 Wasm::InstructionHandler<106ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:433
#209040 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209041 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209042 0x00007fef2e89411c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209043 Wasm::InstructionHandler<88ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:2074
#209044 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209045 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209046 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209047 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#209048 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209049 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#209050 0x00007fef2e88eadc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209051 Wasm::InstructionHandler<106ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:433
#209052 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209053 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209054 0x00007fef2e88eadc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209055 Wasm::InstructionHandler<106ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:433
#209056 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209057 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209058 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209059 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#209060 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209061 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209062 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209063 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209064 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209065 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209066 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209067 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209068 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209069 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209070 0x00007fef2e88eadc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209071 Wasm::InstructionHandler<106ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:433
#209072 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209073 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209074 0x00007fef2e8926dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209075 Wasm::InstructionHandler<71ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1955
#209076 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209077 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209078 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209079 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#209080 0x00007fef2e88e95c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209081 Wasm::InstructionHandler<75ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1983
#209082 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209083 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209084 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209085 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209086 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209087 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209088 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209089 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209090 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209091 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209092 0x00007fef2e8a3413 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209093 Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1418
#209094 0x00007fef2e8a4723 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209095 Wasm::InstructionHandler<45ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1453
#209096 0x00007fef2e8928dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209097 Wasm::InstructionHandler<78ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:2004
#209098 0x00007fef2e88eb5c in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#209099 Wasm::InstructionHandler<107ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:440
#209100 0x00007fef2e8ce895 in Wasm::Configuration::execute () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/Configuration.cpp:60
#209101 0x00007fef2e8cf569 in Wasm::Configuration::call () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/Configuration.cpp:26
#209102 0x00007fef2e851d2e in Wasm::AbstractMachine::invoke () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/AbstractMachine.cpp:561
#209103 0x00007fef2e854b55 in Wasm::AbstractMachine::invoke () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/AbstractMachine.cpp:553
#209104 0x00007fef30af8de7 in operator() () at /home/bobo/projects/myladybird/Libraries/LibWeb/WebAssembly/WebAssembly.cpp:534
#209105 0x00007fef2f55c95f in AK::Function<JS::ThrowCompletionOr<JS::Value>(JS::VM&)>::operator() () at /home/bobo/projects/myladybird/AK/Function.h:148
#209106 JS::NativeFunction::call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/NativeFunction.cpp:219
#209107 0x00007fef2f55dc43 in JS::NativeFunction::internal_call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/NativeFunction.cpp:156
#209108 0x00007fef2f359517 in execute_call<(JS::Bytecode::Op::CallType)0> () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2770
#209109 0x00007fef2f359c80 in JS::Bytecode::Op::Call::execute_impl () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2778
#209110 0x00007fef2f365cbd in JS::Bytecode::Interpreter::run_bytecode () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:498
#209111 0x00007fef2f369d8d in JS::Bytecode::Interpreter::run_executable () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:680
#209112 0x00007fef2f48af6a in JS::ECMAScriptFunctionObject::ordinary_call_evaluate_body ()
    at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:602
#209113 JS::ECMAScriptFunctionObject::internal_call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:262
#209114 0x00007fef2f359517 in execute_call<(JS::Bytecode::Op::CallType)0> () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2770
#209115 0x00007fef2f359c80 in JS::Bytecode::Op::Call::execute_impl () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2778
#209116 0x00007fef2f365cbd in JS::Bytecode::Interpreter::run_bytecode () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:498
#209117 0x00007fef2f369d8d in JS::Bytecode::Interpreter::run_executable () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:680
#209118 0x00007fef2f48af6a in JS::ECMAScriptFunctionObject::ordinary_call_evaluate_body ()
    at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:602
#209119 JS::ECMAScriptFunctionObject::internal_call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:262
#209120 0x00007fef2f359517 in execute_call<(JS::Bytecode::Op::CallType)0> () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2770
#209121 0x00007fef2f359c80 in JS::Bytecode::Op::Call::execute_impl () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:2778
#209122 0x00007fef2f365cbd in JS::Bytecode::Interpreter::run_bytecode () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:498
#209123 0x00007fef2f369d8d in JS::Bytecode::Interpreter::run_executable () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.cpp:680
#209124 0x00007fef2f4aaf04 in JS::Bytecode::Interpreter::run_executable () at /home/bobo/projects/myladybird/Libraries/LibJS/Bytecode/Interpreter.h:43
#209125 JS::GeneratorObject::execute () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/GeneratorObject.cpp:133
#209126 0x00007fef2f4ac043 in JS::GeneratorObject::resume () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/GeneratorObject.cpp:180
#209127 0x00007fef2f43d170 in JS::AsyncFunctionDriverWrapper::continue_async_execution ()
    at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/AsyncFunctionDriverWrapper.cpp:127
#209128 0x00007fef2f43d452 in JS::AsyncFunctionDriverWrapper::create () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/AsyncFunctionDriverWrapper.cpp:27
#209129 0x00007fef2f48b73d in JS::ECMAScriptFunctionObject::ordinary_call_evaluate_body ()
    at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:617
#209130 JS::ECMAScriptFunctionObject::internal_call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/ECMAScriptFunctionObject.cpp:262
#209131 0x00007fef2f402548 in JS::call_impl () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/AbstractOperations.cpp:96
#209132 0x00007fef30b98c38 in JS::call () at /home/bobo/projects/myladybird/Libraries/LibJS/Runtime/AbstractOperations.h:118
#209133 invoke_callback_impl<Web::WebIDL::invoke_callback(CallbackType&, AK::Optional<JS::Value>, ExceptionBehavior, AK::ReadonlySpan<JS::Value>)::<lambda(JS::Realm&, JS::Completion)> > () at /home/bobo/projects/myladybird/Libraries/LibWeb/WebIDL/AbstractOperations.cpp:291
#209134 Web::WebIDL::invoke_callback () at /home/bobo/projects/myladybird/Libraries/LibWeb/WebIDL/AbstractOperations.cpp:319
#209135 0x00007fef307d091b in operator() () at /home/bobo/projects/myladybird/Libraries/LibWeb/HTML/WindowOrWorkerGlobalScope.cpp:580
#209136 visit<const AK::Variant<GC::Ref<Web::WebIDL::CallbackType>, AK::String>, AK::Variant<GC::Ref<Web::WebIDL::CallbackType>, AK::String>::Visitor<Web::HTML::WindowOrWorkerGlobalScopeMixin::run_timer_initialization_steps(Web::HTML::TimerHandler, i32, GC::RootVector<JS::Value>, Repeat, AK::Optional<int>)::<lambda()>::<lambda(const GC::Root<Web::WebIDL::CallbackType>&)>, Web::HTML::WindowOrWorkerGlobalScopeMixin::run_timer_initialization_steps(Web::HTML::TimerHandler, i32, GC::RootVector<JS::Value>, Repeat, AK::Optional<int>)::<lambda()>::<lambda(const AK::String&)> > > () at /home/bobo/projects/myladybird/AK/Variant.h:113
#209137 visit<Web::HTML::WindowOrWorkerGlobalScopeMixin::run_timer_initialization_steps(Web::HTML::TimerHandler, i32, GC::RootVector<JS::Value>, Repeat, AK::Optional<int>)::<lambda()>::<lambda(const GC::Root<Web::WebIDL::CallbackType>&)>, Web::HTML::WindowOrWorkerGlobalScopeMixin::run_timer_initialization_steps(Web::HTML::TimerHandler, i32, GC::RootVector<JS::Value>, Repeat, AK::Optional<int>)::<lambda()>::<lambda(const AK::String&)> > ()
    at /home/bobo/projects/myladybird/AK/Variant.h:426
#209138 operator() () at /home/bobo/projects/myladybird/Libraries/LibWeb/HTML/WindowOrWorkerGlobalScope.cpp:577
#209139 0x00007fef307cb399 in AK::Function<void()>::operator() () at /home/bobo/projects/myladybird/AK/Function.h:148
#209140 operator() () at /home/bobo/projects/myladybird/Libraries/LibWeb/HTML/WindowOrWorkerGlobalScope.cpp:669
#209141 call () at /home/bobo/projects/myladybird/AK/Function.h:225
#209142 0x00007fef3057f629 in AK::Function<void()>::operator() () at /home/bobo/projects/myladybird/AK/Function.h:148
#209143 Web::HTML::Task::execute () at /home/bobo/projects/myladybird/Libraries/LibWeb/HTML/EventLoop/Task.cpp:47
#209144 0x00007fef3057df8d in Web::HTML::EventLoop::process () at /home/bobo/projects/myladybird/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp:190
#209145 0x00007fef30994ffa in AK::Function<void()>::operator() () at /home/bobo/projects/myladybird/AK/Function.h:148
#209146 operator() () at /home/bobo/projects/myladybird/Libraries/LibWeb/Platform/TimerSerenity.cpp:24
#209147 call () at /home/bobo/projects/myladybird/AK/Function.h:225
#209148 0x00007fef2f9a56e4 in AK::Function<void()>::operator() () at /home/bobo/projects/myladybird/AK/Function.h:148
#209149 Core::Timer::timer_event () at /home/bobo/projects/myladybird/Libraries/LibCore/Timer.cpp:94
#209150 0x00007fef2f9a4abe in Core::ThreadEventQueue::process () at /home/bobo/projects/myladybird/Libraries/LibCore/ThreadEventQueue.cpp:127
#209151 0x00007fef2f9ae47c in Core::EventLoopImplementationUnix::pump () at /home/bobo/projects/myladybird/Libraries/LibCore/EventLoopImplementationUnix.cpp:308
#209152 Core::EventLoopImplementationUnix::exec () at /home/bobo/projects/myladybird/Libraries/LibCore/EventLoopImplementationUnix.cpp:300
#209153 0x00007fef2f995ee5 in Core::EventLoop::exec () at /home/bobo/projects/myladybird/Libraries/LibCore/EventLoop.cpp:90
#209154 0x0000654fa4f0f2bf in ladybird_main () at /home/bobo/projects/myladybird/Services/WebContent/main.cpp:212
#209155 0x0000654fa4f0d040 in main () at /home/bobo/projects/myladybird/Libraries/LibMain/Main.cpp:50

rcorsi avatar Dec 03 '25 20:12 rcorsi

And this is the top

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007fef2e87d5e3 in Wasm::BytecodeInterpreter::store_to_memory ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:4168
4168	    auto memory = configuration.store().get(address);
[Current thread is 1 (Thread 0x7fef2970af40 (LWP 158519))]
Function(s) ^std::(move|forward|as_const|(__)?addressof) will be skipped when stepping.
Function(s) ^std::(shared|unique)_ptr<.*>::(get|operator) will be skipped when stepping.
Function(s) ^std::(basic_string|vector|array|deque|(forward_)?list|(unordered_|flat_)?(multi)?(map|set)|span)<.*>::(c?r?(begin|end)|front|back|data|size|empty) will be skipped when stepping.
Function(s) ^std::(basic_string|vector|array|deque|span)<.*>::operator.] will be skipped when stepping.
(gdb) bt
#0  0x00007fef2e87d5e3 in Wasm::BytecodeInterpreter::store_to_memory ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:4168
#1  0x00007fef2e89c2e6 in Wasm::BytecodeInterpreter::store_value<long> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:4151
#2  Wasm::BytecodeInterpreter::pop_and_store<long, long> () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:4142
#3  Wasm::InstructionHandler<55ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1521
#4  0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#5  Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#6  0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#7  Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#8  0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#9  Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#10 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#11 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#12 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#13 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#14 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#15 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#16 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#17 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#18 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#19 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#20 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#21 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#22 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#23 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#24 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#25 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#26 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#27 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#28 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#29 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#30 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#31 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#32 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#33 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#34 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#35 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#36 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#37 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#38 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#39 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#40 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#41 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#42 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#43 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#44 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#45 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#46 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#47 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#48 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#49 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#50 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#51 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#52 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#53 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#54 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#55 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#56 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#57 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#58 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#59 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#60 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#61 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#62 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#63 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#64 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#65 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#66 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#67 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#68 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#69 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#70 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#71 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#72 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#73 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#74 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#75 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#76 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#77 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#78 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#79 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#80 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#81 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#82 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#83 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#84 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#85 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#86 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#87 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#88 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#89 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#90 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#91 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#92 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#93 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#94 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#95 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#96 0x00007fef2e88e8dc in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#97 Wasm::InstructionHandler<73ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1969
#98 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#99 Wasm::InstructionHandler<41ul>::operator()<false, Wasm::Continue> ()
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1425
#100 0x00007fef2e8a37e3 in Wasm::Continue::operator() () at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143

rcorsi avatar Dec 03 '25 20:12 rcorsi

Release core dump back trace release_core_dump.zip

Debug core dump back trace debug_core_dump.zip

rcorsi avatar Dec 03 '25 20:12 rcorsi

Top of debug backtrace

Core was generated by `/home/bobo/projects/myladybird/Build/debug/libexec/WebContent --command-line /h'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007ed4c91500ac in Wasm::BytecodeInterpreter::load_and_push<int, int> (this=<error reading variable: Cannot access memory at address 0x7ffc6677aee8>, 
    configuration=<error reading variable: Cannot access memory at address 0x7ffc6677aee0>, instruction=<error reading variable: Cannot access memory at address 0x7ffc6677aed8>, 
    addresses=<error reading variable: Cannot access memory at address 0x7ffc6677aed0>) at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:3875
3875	bool BytecodeInterpreter::load_and_push(Configuration& configuration, Instruction const& instruction, SourcesAndDestination const& addresses)
[Current thread is 1 (Thread 0x7ed4c5588e00 (LWP 163279))]
Function(s) ^std::(move|forward|as_const|(__)?addressof) will be skipped when stepping.
Function(s) ^std::(shared|unique)_ptr<.*>::(get|operator) will be skipped when stepping.
Function(s) ^std::(basic_string|vector|array|deque|(forward_)?list|(unordered_|flat_)?(multi)?(map|set)|span)<.*>::(c?r?(begin|end)|front|back|data|size|empty) will be skipped when stepping.
Function(s) ^std::(basic_string|vector|array|deque|span)<.*>::operator.] will be skipped when stepping.
(gdb) bt
#0  0x00007ed4c91500ac in Wasm::BytecodeInterpreter::load_and_push<int, int> (this=<error reading variable: Cannot access memory at address 0x7ffc6677aee8>, 
    configuration=<error reading variable: Cannot access memory at address 0x7ffc6677aee0>, instruction=<error reading variable: Cannot access memory at address 0x7ffc6677aed8>, 
    addresses=<error reading variable: Cannot access memory at address 0x7ffc6677aed0>) at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:3875
#1  0x00007ed4c90ebbdb in Wasm::InstructionHandler<40ul>::operator()<false, Wasm::Continue> (interpreter=..., configuration=..., instruction=0x623462e2b920, addresses=..., current_ip_value=2829, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1416
#2  0x00007ed4c9099b9d in Wasm::Continue::operator() (interpreter=..., configuration=..., addresses=..., current_ip_value=2829, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#3  0x00007ed4c90e8dd3 in Wasm::InstructionHandler<32ul>::operator()<false, Wasm::Continue> (interpreter=..., configuration=..., instruction=0x623462e2b8c8, addresses=..., current_ip_value=2828, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1027
#4  0x00007ed4c9099b9d in Wasm::Continue::operator() (interpreter=..., configuration=..., addresses=..., current_ip_value=2828, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#5  0x00007ed4c90e8dd3 in Wasm::InstructionHandler<32ul>::operator()<false, Wasm::Continue> (interpreter=..., configuration=..., instruction=0x623462e2b870, addresses=..., current_ip_value=2827, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1027
#6  0x00007ed4c9099b9d in Wasm::Continue::operator() (interpreter=..., configuration=..., addresses=..., current_ip_value=2827, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#7  0x00007ed4c90e8f9b in Wasm::InstructionHandler<33ul>::operator()<false, Wasm::Continue> (interpreter=..., configuration=..., instruction=0x623462e2b818, addresses=..., current_ip_value=2826, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1185
#8  0x00007ed4c9099b9d in Wasm::Continue::operator() (interpreter=..., configuration=..., addresses=..., current_ip_value=2826, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143
#9  0x00007ed4c90e2785 in Wasm::InstructionHandler<11ul>::operator()<false, Wasm::Continue> (interpreter=..., configuration=..., instruction=0x623462e2b7c0, addresses=..., current_ip_value=2825, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:1279
#10 0x00007ed4c9099b9d in Wasm::Continue::operator() (interpreter=..., configuration=..., addresses=..., current_ip_value=2825, cc=0x623466f66140)
    at /home/bobo/projects/myladybird/Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:143

rcorsi avatar Dec 03 '25 20:12 rcorsi

Thanks @rcorsi for the backtrace. I remember Ladybird being able to run V86, albeit very slowly. However, I don't remember the version. It must have been a few months ago.

xdevs23 avatar Dec 03 '25 21:12 xdevs23

I can't seem to get any OS to work. Most of them give this error message.

14644.379 WebContent(165292): Unhandled JavaScript exception: [InternalError] Call stack size limit exceeded
14644.379 WebContent(165292):     at main_loop
    at $JSCompiler_StaticMethods_do_tick$$ (https://copy.sh/v86/build/v86_all.js?ccb5e1ce:5244:76)
    at https://copy.sh/v86/build/v86_all.js?ccb5e1ce:5301:82
    at <unknown>
    at <unknown>
    at <unknown>

some of them core dump, as SerenityOS does.

rcorsi avatar Dec 03 '25 22:12 rcorsi

I checked them all, none of them work. Either they crash or have the "Call stack size limit exceeded"

Maybe there is a pattern in the ones that crash, here is the list:

Arch Linux
FreeBSD
OpenBSD
Redox
SerenityOS
Haiku
9front
ReactOS
Windows 98
Windows ME
Windows 2000

rcorsi avatar Dec 04 '25 00:12 rcorsi

@xdevs23 are you using GNU C++? Wondering as there is a tailcall involved in the WASM code and that works better in clang.

rcorsi avatar Dec 04 '25 00:12 rcorsi

Yes, just built ladybird with clang and SerenityOS starts up!

rcorsi avatar Dec 04 '25 01:12 rcorsi

So SerenityOS starts up, but is really hard to interact with it. It is slowwwwww!

I get the message repeatedly if I click in the terminal...

24108.938 WebContent(267530): Unhandled JavaScript exception (in promise): [TypeError] undefined is not a function (evaluated from '$elem$jscomp$3$$.requestPointerLock')
24108.938 WebContent(267530):     at $JSCompiler_StaticMethods_lock_mouse$$ (https://copy.sh/v86/build/v86_all.js?ccb5e1ce:5191:3)
    at $JSCompiler_StaticMethods_lock_mouse$$ (https://copy.sh/v86/build/v86_all.js?ccb5e1ce:5191:3)
    at https://copy.sh/v86/build/v86_all.js?ccb5e1ce:11673:86
    at <unknown>
    at <unknown>

rcorsi avatar Dec 04 '25 01:12 rcorsi

Image

rcorsi avatar Dec 04 '25 01:12 rcorsi

I was able to type uname and eventually the printout can.

rcorsi avatar Dec 04 '25 01:12 rcorsi

Don't know if you have a clang 19 or 20 available, but I just did this in Ubuntu 25.04

CC=clang CXX=clang++ ./Meta/ladybird.py build

and then it works.

rcorsi avatar Dec 04 '25 01:12 rcorsi

@rcorsi Thanks for all the detail. Is Ladybird supposed to be built with clang or is it up to the packager/user? Glad to hear there is a way around it. I'll try building with clang. On NixOS it should be fairly straightforward.

xdevs23 avatar Dec 04 '25 09:12 xdevs23

Based on the installation instructions in the repo, a C++23 capable compiler is needed, with clang as the preferred choice and GNU as the alternative. The instructions suggest that the near latest version of the compilers would be best because they would have all the latest features of C++23 implemented and debugged, but might have bleeding edge issues. (I am starting to sound like AI :-) )

For the Ladybird project these two (clang/Apple clang and GNU) are the ones used by the developers, but others might work too, just not tested by the project. The CI jobs are checking with clang, Apple clang, and GNU.

https://en.cppreference.com/w/cpp/compiler_support/23.html

I tend to not install the latest (I'm lazy), I try to use what is included in the distribution and the usual case is that the compilers will not be the latest version, might even not be supported by Ladybird. For example the tailcall feature that would be very useful to the wasm code is in GNU 15, which I tried to use as it is include in Ubuntu 25.10, and it seemed to work pretty well, until I tried to use different presets see #6745 for details.

Clang has better support for tailcall and it has been there longer. Even though if I just do some searches on tailcall optimization seems the general idea of the feature has been around for some time.

https://en.wikipedia.org/wiki/Tail_call

I mean this really old post from 1993 has the text GCC 1.42 ... tail recursion elimination...

https://www.gnu.org/bulletins/bull15.html

rcorsi avatar Dec 04 '25 17:12 rcorsi

I can confirm with clang it works

Image

Command:

nix run --impure --expr 'with builtins.getFlake "github:NixOS/nixpkgs/master"; with legacyPackages.x86_64-linux; pkgs.ladybird.override { stdenv = pkgs.clangStdenv; }'

I do get these a lot, maybe it's worth fixing:

9891.972 WebContent(269136): FIXME: Implement AudioParam::set_value_at_time

xdevs23 avatar Dec 04 '25 17:12 xdevs23

🤔 that stack trace implies GCC just didn't generate any tailcalls at all, feels like compiler bug as musttail should either make tailcalls or error at compile time.

Hmm, it doesn't seem to crash with a gcc-built Ladybird for me (gcc 15.2.1), but it is indeed super slow (not sure how much of that is LibWasm being slow vs gcc being worse than clang at optimising it).

alimpfard avatar Dec 05 '25 09:12 alimpfard

For me @alimpfard it works on GNU 15.2.0 (Ubuntu 25.10) in Release, but not in some other profiles as reported in #6745

For Clang seems to work fine.

I think the original poster was on GNU 14.x.x and when I try it on GNU 14.2.0 (Ubuntu 25.04), I have the same issue with the lack of tailcall optimization.

Based on Libraries/LibWasm/AbstractMachine/BytecodeInterpreter.cpp:28 define for TAILCALL (to use musttail attribute) is in place for Clang of any version currently supported and for GNU if version is > 14.

#ifdef AK_COMPILER_CLANG
#    define TAILCALL [[clang::musttail]]
#    define HAS_TAILCALL
#elif defined(AK_COMPILER_GCC) && (__GNUC__ > 14)
#    define TAILCALL [[gnu::musttail]]
#    define HAS_TAILCALL
#else
#    define TAILCALL
#endif 

From the doc https://gcc.gnu.org/gcc-15/changes.html musttail is introduced in GNU 15, but I guess tailcall optimization might be present in earlier versions, but may or may not be applied.

So I guess the bottom line is WASM is best supported on any Ladybird supported version of Clang, or GNU with a version > 14. It might work on other versions, but might not be the best experience.

rcorsi avatar Dec 05 '25 18:12 rcorsi

oh I see! yeah we should not be trying to run the direct-threaded code if TAILCALL is not available.

alimpfard avatar Dec 05 '25 21:12 alimpfard