Summary: | Conflict between PyQt4 and libuuid | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Kovid Goyal <kovid> |
Component: | Current packages | Assignee: | Python Gentoo Team <python> |
Status: | RESOLVED FIXED | ||
Severity: | critical | CC: | blackrabbit, davech, eugene.shalygin, harley, howard_b_golden, Ivan.Miljenovic, justin.t.riley, leonidp.lists, nbkolchin, ninuje, vapier, write2David, yamadharma |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 353224 | ||
Bug Blocks: | 315345 | ||
Attachments: | Backtrace |
Description
Kovid Goyal
2010-04-28 01:02:31 UTC
util-linux - 2.17.2 PyQt4 - 4.7.3 qt - 4.6.2 And I have tried re-emerging Qt/PyQt4/util-linux This is resolved by downgrading util-linux to 2.17-r1 The problem was discussed here: http://bugs.gentoo.org/show_bug.cgi?id=300307. Try: emerge util-linux linux-headers. That does not work. I tried it twice in case build order made a difference. emerge -pv util-linux linux-headers [ebuild R ] sys-kernel/linux-headers-2.6.33 0 kB [ebuild R ] sys-apps/util-linux-2.17.2 USE="crypt nls perl unicode -loop-aes -old-linux (-selinux) -slang (-uclibc)" 0 kB *** Bug 318473 has been marked as a duplicate of this bug. *** Same here, with a slightly different scenario, see bug 318473 Turns out I had to downgrade all the way to util-linux-2.17-r1. I'm not sure why it started now, since I had a higher util-linux than that for calibre-0.6.50; however, the only other suspect, qt-gui-4.6.2-r1 turns out not to be the problem. I found that I had to downgrade util-linux to 2.17-r1 to get calibre-0.6.54 (just copied the ebuild for 0.6.53). I wonder if this discussion is relevant: http://www.mobileread.mobi/forums/showthread.php?t=48761 Created attachment 248653 [details]
Backtrace
It looks like TLS in libuuid is not initialized correctly, as jrand_seed pointer is invalid, causing segmentation fault on access.
Added vapier to cc list as I saw his name in the util-linux-ng 2.17.2 release notes and if util-linux is the problem then we need to get some base-system guys in here. I just tried util-linux 2.19 and still have this problem. There is v. 2.19-r3 also but I do not see anything UUID relevant in the changelog. In the 2.17.2 changelog there is this mention of UUID: libblkid: - remove "0x" prefix from DRBD UUID [Karel Zak] Hopefully it won't be hard to bisect this regression. Thanks for taking a look if you can Mike. -Matt python-2.7 and python-3.1 with util-linux-2.19 works fine for me This also segfaults on my x86 (stable) system: python2.6 -c "from PyQt4.Qt import *; import uuid; print uuid.uuid4() util-linux 2.18-r1 PyQt4 4.8.1 No problems with PyQt4 4.8.4 and util-linux 2.19.1 [ebuild R ] dev-python/PyQt4-4.8.4 [ebuild R ] sys-apps/util-linux-2.19.1 $ python -c "from PyQt4.Qt import *; import uuid; print uuid.uuid1()" Segmentation fault It's still happening, even with davech's suggestions. So that's frustrating. My backtrace is different from the attachment, so it does appear to be a bit of a schroedingbug inside UUID. The suggestion that it's a bad thread management issue is gaining traction. (gdb) bt #0 0xb617722d in uuid_generate_time () from /lib/libuuid.so.1 #1 0xb32306ef in ffi_call_SYSV () from /usr/lib/libffi.so.5 #2 0xb323052e in ffi_call () from /usr/lib/libffi.so.5 #3 0xb3242b75 in _ctypes_callproc () from /usr/lib/python2.7/lib-dynload/_ctypes.so #4 0xb323cc9e in ?? () from /usr/lib/python2.7/lib-dynload/_ctypes.so #5 0xb7e74d4c in PyObject_Call () from /usr/lib/libpython2.7.so.1.0 #6 0xb7f12116 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #7 0xb7f14313 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #8 0xb7f124b8 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #9 0xb7f14313 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #10 0xb7f14463 in PyEval_EvalCode () from /usr/lib/libpython2.7.so.1.0 #11 0xb7f2e11b in ?? () from /usr/lib/libpython2.7.so.1.0 #12 0xb7f2e373 in PyRun_StringFlags () from /usr/lib/libpython2.7.so.1.0 #13 0xb7f2f6f3 in PyRun_SimpleStringFlags () from /usr/lib/libpython2.7.so.1.0 #14 0xb7f40e9c in Py_Main () from /usr/lib/libpython2.7.so.1.0 #15 0x08048833 in main () Just went through the qt upgrade from 4.6.3 to 4.7.2 and glibc from 2.11.3 to 2.12.2 and the test case works now, using the same util-linux-2.19.1, PyQt4-4.8.3 and Python-2.7 that failed for me before. According to this thread: http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=d26dfc60edc8 this is a bug in glibc that's been fixed but not released: http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=d26dfc60edc8 Perhaps glibc 2.12.2 ebuild should include this patch? it's already been released in the glibc-2.13 ebuilds Okay, so this should be fixed now. |