-
-
Notifications
You must be signed in to change notification settings - Fork 100
Open
Description
Describe the bug
llnode crashes when I run v8 i -s <addr>
.
To reproduce
- Having this file
crash.js
'use strict';
throw new Error('this is uncaught');
- Running
node --abort-on-uncaught-exception crash.js
- Loaded core with llnode node/location -c core/location
- Ran command
v8 bt
:
(llnode) v8 bt
* thread #1: tid = 0x0000, 0x0000000101756ca5 node`v8::base::OS::Abort() (.cold.1) + 5
* frame #0: 0x0000000101756ca5 node`v8::base::OS::Abort() (.cold.1) + 5
frame #1: 0x000000010147fa77 node`v8::base::OS::Abort() + 23
frame #2: 0x00000001006e10bb node`v8::internal::Isolate::CreateMessageOrAbort(v8::internal::Handle<v8::internal::Object>, v8::internal::MessageLocation*) + 171
frame #3: 0x00000001006e0aae node`v8::internal::Isolate::ThrowInternal(v8::internal::Object, v8::internal::MessageLocation*) + 958
frame #4: 0x0000000100ae0ecf node`v8::internal::Runtime_Throw(int, unsigned long*, v8::internal::Isolate*) + 47
frame #5: 0x0000000100e8b319 <exit>
frame #6: 0x0000000100f20d5a <stub>
frame #7: 0x0000000100e1ddea (this=0x2f03a76913e9:<Object: Object>, 0x2f03a76913e9:<Object: Object>, 0x2f03a7693201:<function: require at node:internal/modules/cjs/helpers:1:10>, 0x2f03a76911e1:<Object: Module>, 0x2f03a768f159:<String: "/Users/jamiamer/...">, 0x2f03a7693131:<String: "/Users/jamiamer/...">) at /Users/jamiamer/projects/llnode-tuto/simple-crash.js:1:0 fn=0x00002f03a7692e11
...
- Ran command
v8 i -s 0x2f03a7693201
: - Crash.
Expected behavior
Having the source of the function printed in the console.
Console output
(llnode) v8 i -s 0x2f03a7693201
libc++abi: terminating with uncaught exception of type std::out_of_range: basic_string
PLEASE submit a bug report to https://developer.apple.com/bug-reporting/ and include the crash backtrace.
Stack dump:
0. Program arguments: /Library/Developer/CommandLineTools/usr/bin/lldb --one-line "plugin load '/usr/local/Cellar/llnode/4.0.0/lib/node_modules/llnode/llnode.dylib'" --one-line "settings set prompt '(llnode) '" node -c /cores/core.1403
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0 lldb 0x0000000100695357 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 39
1 lldb 0x0000000100694a85 llvm::sys::RunSignalHandlers() + 85
2 lldb 0x0000000100695a00 SignalHandler(int) + 288
3 libsystem_platform.dylib 0x00007ff8174e6dfd _sigtramp + 29
4 libsystem_platform.dylib 0x00007f7e00000400 _sigtramp + 18446743549332526624
5 libsystem_c.dylib 0x00007ff81741cd24 abort + 123
6 libc++abi.dylib 0x00007ff81748d082 abort_message + 241
7 libc++abi.dylib 0x00007ff81747e1a5 demangling_terminate_handler() + 242
8 libobjc.A.dylib 0x00007ff81737ae19 _objc_terminate() + 104
9 libc++abi.dylib 0x00007ff81748c4a7 std::__terminate(void (*)()) + 8
10 libc++abi.dylib 0x00007ff81748ed05 __cxa_get_exception_ptr + 0
11 libc++abi.dylib 0x00007ff81748eccc __cxxabiv1::exception_cleanup_func(_Unwind_Reason_Code, _Unwind_Exception*) + 0
12 libc++.1.dylib 0x00007ff817432a34 std::__1::__throw_out_of_range(char const*) + 56
13 libc++.1.dylib 0x00007ff8174329fc std::__1::__throw_out_of_range(char const*) + 0
14 libc++.1.dylib 0x00007ff817432c1d std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__throw_out_of_range() const + 9
15 libc++.1.dylib 0x00007ff817433ae8 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, unsigned long, unsigned long, std::__1::allocator<char> const&) + 174
16 llnode.dylib 0x00000001085614a7 llnode::v8::JSFunction::GetSource(llnode::Error&) + 975
17 llnode.dylib 0x000000010857bcb2 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > llnode::Printer::Stringify<llnode::v8::JSFunction, llnode::v8::JSFunction>(llnode::v8::JSFunction, llnode::Error&) + 1970
18 llnode.dylib 0x0000000108579140 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > llnode::Printer::Stringify<llnode::v8::HeapObject, llnode::v8::HeapObject>(llnode::v8::HeapObject, llnode::Error&) + 2464
19 llnode.dylib 0x00000001085785a9 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > llnode::Printer::Stringify<llnode::v8::Value, llnode::v8::Value>(llnode::v8::Value, llnode::Error&) + 375
20 llnode.dylib 0x00000001085561c6 llnode::PrintCmd::DoExecute(lldb::SBDebugger, char**, lldb::SBCommandReturnObject&) + 566
21 LLDB 0x0000000117ae28fa CommandPluginInterfaceImplementation::DoExecute(lldb_private::Args&, lldb_private::CommandReturnObject&) + 282
22 LLDB 0x0000000117cd57aa lldb_private::CommandObjectParsed::Execute(char const*, lldb_private::CommandReturnObject&) + 410
23 LLDB 0x0000000117cca866 lldb_private::CommandInterpreter::HandleCommand(char const*, lldb_private::LazyBool, lldb_private::CommandReturnObject&) + 2278
24 LLDB 0x0000000117ccf458 lldb_private::CommandInterpreter::IOHandlerInputComplete(lldb_private::IOHandler&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 920
25 LLDB 0x0000000117bf6d3a lldb_private::IOHandlerEditline::Run() + 346
26 LLDB 0x0000000117bd9fdf lldb_private::Debugger::RunIOHandlers() + 143
27 LLDB 0x0000000117cd08ae lldb_private::CommandInterpreter::RunCommandInterpreter(lldb_private::CommandInterpreterRunOptions&) + 158
28 LLDB 0x0000000117afa61c lldb::SBDebugger::RunCommandInterpreter(bool, bool) + 140
29 lldb 0x0000000100685668 Driver::MainLoop() + 2600
30 lldb 0x000000010068656b main + 2523
31 dyld 0x000000010867c52e start + 462
Local environment (please complete the following information):
- Version of llnode:
4.0.0
- OS Info: Macbook pro (2015) - MacOs Monterey 12.5.1 (intel)
- lldb Version:
lldb-1400.0.30.3
- Version of node.js:
16.17.0
Server where the core was dumped (please complete the following information):
Same as above.
Additional context
Metadata
Metadata
Assignees
Labels
No labels