[New-bugs-announce] [issue24228] Interpreter triggers segmentation fault at the starting

doz report at bugs.python.org
Mon May 18 17:49:39 CEST 2015


New submission from doz:

Hello,

Python 3.4.2 triggers  a segmentation fault  at the starting on my ARM9 platform. 
Crash occurs  also with 3.3.  The version 2.7 don't crash and seems to work correctly
System is built with buildroot-2015.02 and gcc  4.2.1.  
Fault is always reproducible.

Please find the following information about the crash and the conditions. 
Do you know restrictions with old kernel version and python ?

On target :
# uname -a
Linux buildroot 2.6.30.10 #mvl-avb-0.8 Mon May 18 16:02:40 CEST 2015 armv5tejl GNU/Linux  
# python --version
Python 3.4.2
 
# python
Segmentation fault (core dumped)

on host, I analyze core dump 

$ arm-none-linux-gnueabi-gdb -ex 'set sysroot .' -ex 'core-file ./core' usr/bin/python
GNU gdb (CodeSourcery Sourcery G++ Lite 2007q3-51) 6.6.50.20070821-cvs
Copyright (C) 2007 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi".
For bug reporting instructions, please see:
<https://support.codesourcery.com/GNUToolchain/>.
..
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/usr/lib/libpython3.4m.so.1.0...done.
Loaded symbols for ./usr/lib/libpython3.4m.so.1.0
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libpthread.so.0...done.
Loaded symbols for ./lib/libpthread.so.0
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libdl.so.2...done.
Loaded symbols for ./lib/libdl.so.2
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libutil.so.1...done.
Loaded symbols for ./lib/libutil.so.1
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libm.so.6...done.
Loaded symbols for ./lib/libm.so.6
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libc.so.6...done.
Loaded symbols for ./lib/libc.so.6
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/libgcc_s.so.1...done.
Loaded symbols for ./lib/libgcc_s.so.1
Reading symbols from /home/xxx/projects/YYY/buildroot-2015.02/output/target/lib/ld-linux.so.3...done.
Loaded symbols for ./lib/ld-linux.so.3
Core was generated by `python'.
Program terminated with signal 11, Segmentation fault.
#0  insertdict (mp=0x4041e058, key=0x4041f020, hash=1075606564, value=0x4041d540) at Objects/dictobject.c:824
824	        Py_DECREF(old_value); /* which **CAN** re-enter (see issue #22653) */
(gdb) bt
#0  insertdict (mp=0x4041e058, key=0x4041f020, hash=1075606564, value=0x4041d540) at Objects/dictobject.c:824
#1  0x400a3be0 in add_subclass (base=<value optimized out>, type=0x401c7424) at Objects/typeobject.c:4789
#2  0x400abb18 in PyType_Ready (type=0x401c7424) at Objects/typeobject.c:4745
#3  0x40094534 in _Py_ReadyTypes () at Objects/object.c:1546
#4  0x40116aec in _Py_InitializeEx_Private (install_sigs=1, install_importlib=1) at Python/pythonrun.c:382
#5  0x401263a8 in Py_Main (argc=1076832428, argv=0x11008) at Modules/main.c:654
#6  0x000088f4 in main (argc=1, argv=0x402fb844) at ./Modules/python.c:69

(gdb) info locals
old_value = (PyObject *) 0x1
value_addr = (PyObject **) 0x400a3be0
ep = (PyDictKeyEntry *) 0x11390

(gdb) list
819	    MAINTAIN_TRACKING(mp, key, value);
820	    old_value = *value_addr;
821	    if (old_value != NULL) {
822	        assert(ep->me_key != NULL && ep->me_key != dummy);
823	        *value_addr = value;
824	        Py_DECREF(old_value); /* which **CAN** re-enter (see issue #22653) */
825	    }
826	    else {
827	        if (ep->me_key == NULL) {
828	            Py_INCREF(key);

./arm-none-linux-gnueabi-gcc --version
arm-none-linux-gnueabi-gcc (CodeSourcery Sourcery G++ Lite 2007q3-51) 4.2.1
Copyright (C) 2007 Free Software Foundation, Inc.

Thank your for your help

----------
components: Interpreter Core
messages: 243490
nosy: mdootb
priority: normal
severity: normal
status: open
title: Interpreter triggers  segmentation fault  at the starting
type: crash
versions: Python 3.3, Python 3.4

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue24228>
_______________________________________


More information about the New-bugs-announce mailing list