[New-bugs-announce] [issue16089] _elementtree causes segfault in GC

Christian Heimes report at bugs.python.org
Sun Sep 30 04:07:42 CEST 2012

New submission from Christian Heimes:

The issue was reported by Arfrever on #python-dev. The test suite of simpletal [1] was segfaulting with Python 3.3. It doesn't segfault without the _elementtree C extension.

I'm able to reproduce the issue. It may take a couple of runs with a debug build of Python but eventually Python segfaults. So far segfaults occur inside a GC collection run. Benjamin suspects the issue is related to the new GC code in _elementtree.

    #0  visit_decref (op=<unknown at remote 0x7fea64fc8ca8>, data=0x0) at Modules/gcmodule.c:361
    #1  0x00000000004bccd5 in subtract_refs (containers=<optimized out>) at Modules/gcmodule.c:386
    #2  collect (generation=0, n_collected=0x7fffe3eedb70, n_uncollectable=0x7fffe3eedb78) at Modules/gcmodule.c:891
    #3  0x00000000004bd7e6 in collect_with_callback (generation=0) at Modules/gcmodule.c:1048
    #4  collect_generations () at Modules/gcmodule.c:1071
    #5  _PyObject_GC_Malloc (basicsize=<optimized out>) at Modules/gcmodule.c:1580
    #6  0x00000000004bddcc in _PyObject_GC_Malloc (basicsize=<optimized out>) at Modules/gcmodule.c:1567
    #7  _PyObject_GC_New (tp=0x8322a0) at Modules/gcmodule.c:1590
    #8  0x0000000000548a3a in new_dict (values=0x0, keys=0xd02e60) at Objects/dictobject.c:395
    #9  _PyDict_NewPresized (minused=<optimized out>) at Objects/dictobject.c:1044
    #10 0x000000000047a449 in PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at Python/ceval.c:2245
    #11 0x0000000000480b03 in fast_function (nk=<optimized out>, na=1, n=<optimized out>, pp_stack=0x7fffe3eede40, func=
        <function at remote 0x7fea653ff9e0>) at Python/ceval.c:4150

[1] http://www.owlfish.com/software/simpleTAL/downloads/SimpleTAL-5.1.tar.gz

components: Extension Modules
keywords: 3.3regression
messages: 171603
nosy: christian.heimes
priority: critical
severity: normal
stage: needs patch
status: open
title: _elementtree causes segfault in GC
type: crash
versions: Python 3.3, Python 3.4

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list