Hi, I get a crash in lxml's test suite on 64bit Linux, right with the first test. I couldn't investigate it in depth so far, but at least I found that it crashes in line 606 of obmalloc.c, which reads as follows:
583 block *bp; [...] 604 bp = pool->freeblock; 605 assert(bp != NULL); 606 if ((pool->freeblock = *(block **)bp) != NULL) { The cast looks a bit smelly to me. Could someone who knows that code please take a look to see if it makes any sense? This kind of code tends to hint at potential aliasing problems to me etc. OTOH, "bp" holds the value 0xc here when it crashes, so there's clearly something going wrong. Here is the stack trace I get: #0 PyObject_Malloc (nbytes=16) at .../pypy/translator/c/src/obmalloc.c:606 #1 0x0000000000eeb938 in pypy_g__ll_malloc_varsize_no_length_zero__Signed_Signed (l_length_1494=<value optimized out>, l_v1845914=<value optimized out>, l_itemsize_9=<value optimized out>) at rpython_memory_gctransform_transform.c:249 #2 0x0000000000cad374 in pypy_g_BaseCpyTypedescr_allocate (l_self_67=0x1aafeb8, l_w_type_11=0x1702040, l_itemcount_7=0) at module_cpyext_pyobject.c:3190 #3 0x0000000000cadc92 in pypy_g_create_ref (l_w_obj_2087=0x7f0d25d49ac0, l_itemcount_1=<value optimized out>) at module_cpyext_pyobject.c:1275 #4 0x0000000000cace27 in pypy_g_make_ref (l_w_obj_2086=0x168de00) at module_cpyext_pyobject.c:509 #5 0x0000000001040796 in PyWeakref_NewRef (l_v2078649=<value optimized out>, l_v2078623=0x0) at module_cpyext_api_2.c:38330 #6 0x00007f0d2576df72 in __pyx_f_4lxml_5etree__registerProxy () from .../lxml-3.0/src/lxml/etree.pypy-19.so #7 0x00007f0d257a361f in __pyx_f_4lxml_5etree__elementFactory () from .../lxml-3.0/src/lxml/etree.pypy-19.so #8 0x00007f0d2578f2cf in __pyx_f_4lxml_5etree_9_Document_getroot () from .../lxml-3.0/src/lxml/etree.pypy-19.so #9 0x00007f0d257c2990 in __pyx_pf_4lxml_5etree_22fromstring () from .../lxml-3.0/src/lxml/etree.pypy-19.so #10 0x00007f0d257c2847 in __pyx_pw_4lxml_5etree_23fromstring () from .../lxml-3.0/src/lxml/etree.pypy-19.so Note that this isn't using the latest nightly PyPy from the buildbot (58001) but I quickly tested it with that as well and it seems to crash at the same place. When I skip the first test, the test suite runs without crashes, so if there isn't something obviously wrong in the code above, I'd see when I find the time to figure out why this particular set of doctests (in test_autolink.txt) crashes but the rest doesn't, even though the etree part of the stack trace above should be the same in a pretty large part of the test suite. Stefan _______________________________________________ pypy-dev mailing list pypy-dev@python.org http://mail.python.org/mailman/listinfo/pypy-dev