Code Monkey home page Code Monkey logo

Comments (6)

bryteise avatar bryteise commented on July 24, 2024 2

Python issue should be fixed in the next release.

from distribution.

bryteise avatar bryteise commented on July 24, 2024 2

Will this also apply to gdb? I had a similar problem at #3055, the OP also seems to have problems with gdb, or should this be treated in another issue?

Given gdb links to python, I'd expect it to be the same problem.

from distribution.

ljmccarthy avatar ljmccarthy commented on July 24, 2024

I also tried lldb and it crashes when trying to initialize a Python interpreter (I had no idea it had Python embedded in to it)

lldb
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: lldb
 #0 0x0000558944f297d8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/bin/../lib64/libLLVM-17.so+0xa757d8)
 #1 0x0000558944f27b80 llvm::sys::RunSignalHandlers() (/usr/bin/../lib64/libLLVM-17.so+0xa73b80)
 #2 0x0000558944f29d28 (/usr/bin/../lib64/libLLVM-17.so+0xa75d28)
 #3 0x0000558943e43670 __restore_rt libc_sigaction.c:0:0
 #4 0x00005589437039aa PyImport_AppendInittab /builddir/build/BUILD/Python-3.12.2/Python/import.c:1496:21
 #5 0x000055894bd87138 (anonymous namespace)::InitializePythonRAII::InitializePythonRAII() /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:114:5
 #6 0x000055894bd87138 lldb_private::ScriptInterpreterPythonImpl::Initialize() /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:3085:24
 #7 0x0000558943e9c137 __pthread_once_slow /builddir/build/BUILD/glibc-2.39/nptl/pthread_once.c:118:7
 #8 0x000055894bd7694c void std::call_once<lldb_private::ScriptInterpreterPython::Initialize()::$_0>(std::once_flag&, lldb_private::ScriptInterpreterPython::Initialize()::$_0&&) /usr/lib64/gcc/x86_64-generic-linux/14/../../../../include/c++/14/mutex:916:15
 #9 0x000055894bd7694c void llvm::call_once<lldb_private::ScriptInterpreterPython::Initialize()::$_0>(std::once_flag&, lldb_private::ScriptInterpreterPython::Initialize()::$_0&&) /builddir/build/BUILD/llvm-project-17.0.6.src/llvm/include/llvm/Support/Threading.h:89:5
#10 0x000055894bd7694c lldb_private::ScriptInterpreterPython::Initialize() /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:333:3
#11 0x000055894bd7694c lldb_private::lldb_initialize_ScriptInterpreterPython() /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp:62:1
#12 0x000055894b7d5ed7 lldb_private::SystemInitializerFull::Initialize() /builddir/build/BUILD/llvm-project-17.0.6.src/llvm/clr-build/tools/lldb/source/Plugins/Plugins.def:102:1
#13 0x000055894b99a4f1 llvm::Error::operator bool() /builddir/build/BUILD/llvm-project-17.0.6.src/llvm/include/llvm/Support/Error.h:234:21
#14 0x000055894b99a4f1 lldb_private::SystemLifetimeManager::Initialize(std::unique_ptr<lldb_private::SystemInitializer, std::default_delete<lldb_private::SystemInitializer>>, llvm::sys::DynamicLibrary (*)(std::shared_ptr<lldb_private::Debugger> const&, lldb_private::FileSpec const&, lldb_private::Status&)) /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/Initialization/SystemLifetimeManager.cpp:36:14
#15 0x000055894b6ffae6 std::unique_ptr<lldb_private::SystemInitializer, std::default_delete<lldb_private::SystemInitializer>>::~unique_ptr() /usr/lib64/gcc/x86_64-generic-linux/14/../../../../include/c++/14/bits/unique_ptr.h:397:6
#16 0x000055894b6ffae6 lldb::SBDebugger::InitializeWithErrorHandling() /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/source/API/SBDebugger.cpp:218:16
#17 0x000055894c420118 main /builddir/build/BUILD/llvm-project-17.0.6.src/lldb/tools/driver/Driver.cpp:789:13
#18 0x0000558943e29b47 __libc_start_call_main /builddir/build/BUILD/glibc-2.39/csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#19 0x0000558943e29bfb call_init /builddir/build/BUILD/glibc-2.39/csu/../csu/libc-start.c:128:20
#20 0x0000558943e29bfb __libc_start_main@GLIBC_2.2.5 /builddir/build/BUILD/glibc-2.39/csu/../csu/libc-start.c:347:5
#21 0x000055894c41c8e1 _start /builddir/build/BUILD/glibc-2.39/csu/../sysdeps/x86_64/start.S:117:0
fish: Job 1, 'lldb' terminated by signal SIGILL (Illegal instruction)

from distribution.

ljmccarthy avatar ljmccarthy commented on July 24, 2024

I found a static build of an old version of GDB (7.10.1) to find where it was crashing in Python.

Program received signal SIGILL, Illegal instruction.
0x00005555550c27ab in get_allocator_unlocked () from /usr/lib64/libpython3.12.so.1.0
(gdb) bt
#0  0x00005555550c27ab in get_allocator_unlocked () from /usr/lib64/libpython3.12.so.1.0
#1  0x00005555550c1921 in set_default_allocator_unlocked () from /usr/lib64/libpython3.12.so.1.0
#2  0x00005555550c235a in _PyRuntimeState_Init.localalias () from /usr/lib64/libpython3.12.so.1.0
#3  0x00005555550c182b in _PyRuntime_Initialize.localalias () from /usr/lib64/libpython3.12.so.1.0
#4  0x00005555550c26f3 in pymain_init () from /usr/lib64/libpython3.12.so.1.0
#5  0x00005555550c18d7 in pymain_main () from /usr/lib64/libpython3.12.so.1.0
#6  0x00005555550c16a8 in Py_BytesMain () from /usr/lib64/libpython3.12.so.1.0
#7  0x0000555554a29b47 in __libc_start_call_main () from /usr/lib64/libc.so.6
#8  0x0000555554a29bfb in __libc_start_main_impl () from /usr/lib64/libc.so.6
#9  0x0000555555555081 in _start ()
(gdb) disassemble
Dump of assembler code for function get_allocator_unlocked:
   0x00005555550c27a0 <+0>:	test   %edi,%edi
   0x00005555550c27a2 <+2>:	jne    0x5555550c27c3 <get_allocator_unlocked+35>
   0x00005555550c27a4 <+4>:	mov    0x27257d(%rip),%rax        # 0x555555334d28
=> 0x00005555550c27ab <+11>:	vmovdqu 0x60(%rax),%ymm1
   0x00005555550c27b0 <+16>:	vmovdqu %ymm1,(%rsi)
   0x00005555550c27b4 <+20>:	mov    0x80(%rax),%rax
   0x00005555550c27bb <+27>:	mov    %rax,0x20(%rsi)
   0x00005555550c27bf <+31>:	vzeroupper
   0x00005555550c27c2 <+34>:	retq
   0x00005555550c27c3 <+35>:	cmp    $0x1,%edi
   0x00005555550c27c6 <+38>:	je     0x5555550c27ed <get_allocator_unlocked+77>
   0x00005555550c27c8 <+40>:	cmp    $0x2,%edi
   0x00005555550c27cb <+43>:	jne    0x5555550c280d <get_allocator_unlocked+109>
   0x00005555550c27cd <+45>:	mov    0x272554(%rip),%rax        # 0x555555334d28
   0x00005555550c27d4 <+52>:	vmovdqu 0xb0(%rax),%ymm2
   0x00005555550c27dc <+60>:	vmovdqu %ymm2,(%rsi)
   0x00005555550c27e0 <+64>:	mov    0xd0(%rax),%rax
   0x00005555550c27e7 <+71>:	mov    %rax,0x20(%rsi)
   0x00005555550c27eb <+75>:	jmp    0x5555550c27bf <get_allocator_unlocked+31>
   0x00005555550c27ed <+77>:	mov    0x272534(%rip),%rax        # 0x555555334d28
   0x00005555550c27f4 <+84>:	vmovdqu 0x88(%rax),%ymm3
   0x00005555550c27fc <+92>:	vmovdqu %ymm3,(%rsi)
   0x00005555550c2800 <+96>:	mov    0xa8(%rax),%rax
   0x00005555550c2807 <+103>:	mov    %rax,0x20(%rsi)
   0x00005555550c280b <+107>:	jmp    0x5555550c27bf <get_allocator_unlocked+31>
   0x00005555550c280d <+109>:	jmpq   0x555554f04719 <get_allocator_unlocked.cold>
End of assembler dump.

The offending instruction is vmovdqu which is an AVX instruction. As far as I know my CPU does not have AVX support.

from distribution.

Cueropedo avatar Cueropedo commented on July 24, 2024

I think I'm having a similar issue with gdb, and it's giving me trouble with my C++ development in VSCode. Every time I run gdb I have the illegal instruction error message... I don't know if I should open a new issue?

Also I'm running an Intel Celeron N2808 CPU, this wasn't an issue in the past...

from distribution.

Cueropedo avatar Cueropedo commented on July 24, 2024

Python issue should be fixed in the next release.

Will this also apply to gdb? I had a similar problem at #3055, the OP also seems to have problems with gdb, or should this be treated in another issue?

from distribution.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.