[Bug 1035770] New: Qt5 programs segfault with remote X
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770 Bug ID: 1035770 Summary: Qt5 programs segfault with remote X Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Critical Priority: P5 - None Component: X.Org Assignee: xorg-maintainer-bugs@forge.provo.novell.com Reporter: shundhammer@suse.com QA Contact: xorg-maintainer-bugs@forge.provo.novell.com Found By: --- Blocker: --- When started via remote X, Qt5 programs in the inst-sys segfault with a stack trace like this: Thread 1 "part2" received signal SIGSEGV, Segmentation fault. 0x00007fffeafc3f29 in ?? () from /mounts/mp_0001/usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so (gdb) bt #0 0x00007fffeafc3f29 in ?? () from /mounts/mp_0001/usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so #1 0x00007ffff06c9f26 in QXcbWindow::create() () from /usr/lib64/libQt5XcbQpa.so.5 #2 0x00007ffff06b6270 in QXcbIntegration::createPlatformWindow(QWindow*) const () from /usr/lib64/libQt5XcbQpa.so.5 #3 0x00007ffff613c5e9 in QWindowPrivate::create(bool) () from /usr/lib64/libQt5Gui.so.5 #4 0x00007ffff770d095 in QWidgetPrivate::create_sys(unsigned long long, bool, bool) () from /usr/lib64/libQt5Widgets.so.5 #5 0x00007ffff770c88d in QWidget::create(unsigned long long, bool, bool) () from /usr/lib64/libQt5Widgets.so.5 #6 0x00007ffff7718e39 in QWidget::setVisible(bool) () from /usr/lib64/libQt5Widgets.so.5 #7 0x0000000000400eba in ?? () #8 0x00007ffff6793541 in __libc_start_main () from /lib64/libc.so.6 #9 0x0000000000400f3a in ?? () (gdb) This happened first with YaST Qt (same backtrace), then I tried one of the simplest Qt examples from libqt5-qtbase-examples: /usr/lib64/qt5/examples/widgets/tutorials/gettingStarted/gsQt/part2 This is just a push button and a multi-line input field above. This works when I start an X server on the console, but it reproducibly segfaults when I try to start it remotely. Starting an xterm remotely from the same setup works perfectly. Tested with openSUSE-Tumbleweed-DVD-x86_64-Snapshot20170420-Media.iso 0:g116:~ # cat /etc/os-release NAME="openSUSE Tumbleweed" # VERSION="20170411" ID=opensuse ID_LIKE="suse" VERSION_ID="20170411" PRETTY_NAME="openSUSE Tumbleweed" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:opensuse:tumbleweed:20170411" BUG_REPORT_URL="https://bugs.opensuse.org" HOME_URL="https://www.opensuse.org/" 0:g116:/usr/lib64 # ls -1 libQt5* libQt5Core.so.5 libQt5Core.so.5.7 libQt5Core.so.5.7.1 libQt5DBus.so.5 libQt5DBus.so.5.7 libQt5DBus.so.5.7.1 libQt5EglDeviceIntegration.so.5 libQt5EglDeviceIntegration.so.5.7 libQt5EglDeviceIntegration.so.5.7.1 libQt5EglFsKmsSupport.so.5 libQt5EglFsKmsSupport.so.5.7 libQt5EglFsKmsSupport.so.5.7.1 libQt5Gui.so.5 libQt5Gui.so.5.7 libQt5Gui.so.5.7.1 libQt5Network.so.5 libQt5Network.so.5.7 libQt5Network.so.5.7.1 libQt5Widgets.so.5 libQt5Widgets.so.5.7 libQt5Widgets.so.5.7.1 libQt5X11Extras.so.5 libQt5X11Extras.so.5.7 libQt5X11Extras.so.5.7.1 libQt5XcbQpa.so.5 libQt5XcbQpa.so.5.7 libQt5XcbQpa.so.5.7.1 0:g116:/usr/lib64 # ls -1 libX* libX11.so.6 libX11.so.6.3.0 libX11-xcb.so.1 libX11-xcb.so.1.0.0 libXau.so.6 libXau.so.6.0.0 libXaw7.so.7 libXaw7.so.7.0.0 libXaw.so.7 libXcomposite.so.1 libXcomposite.so.1.0.0 libXcursor.so.1 libXcursor.so.1.0.2 libXdamage.so.1 libXdamage.so.1.1.0 libXdmcp.so.6 libXdmcp.so.6.0.0 libXext.so.6 libXext.so.6.4.0 libXfixes.so.3 libXfixes.so.3.1.0 libXfont2.so.2 libXfont2.so.2.0.0 libXfontcache.so.1 libXfontcache.so.1.0.0 libXfont.so.1 libXfont.so.1.4.1 libXft.so.2 libXft.so.2.3.2 libXinerama.so.1 libXinerama.so.1.0.0 libXi.so.6 libXi.so.6.1.0 libXmu.so.6 libXmu.so.6.2.0 libXmuu.so.1 libXmuu.so.1.0.0 libXpm.so.4 libXpm.so.4.11.0 libXrandr.so.2 libXrandr.so.2.2.0 libXrender.so.1 libXrender.so.1.3.0 libXt.so.6 libXt.so.6.0.0 libXtst.so.6 libXtst.so.6.1.0 libXvnc.so.1 libXvnc.so.1.0.0 libXxf86dga.so.1 libXxf86dga.so.1.0.0 libXxf86misc.so.1 libXxf86misc.so.1.1.0 libXxf86vm.so.1 libXxf86vm.so.1.0.0 0:g116:/usr/lib64 # ldd /tmp/part2 linux-vdso.so.1 (0x00007fff017d0000) libQt5Widgets.so.5 => /usr/lib64/libQt5Widgets.so.5 (0x00007f567f49c000) libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5 (0x00007f567edcc000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f567ea43000) libc.so.6 => /lib64/libc.so.6 (0x00007f567e69e000) libQt5Gui.so.5 => /usr/lib64/libQt5Gui.so.5 (0x00007f567df5d000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f567dd3d000) libm.so.6 => /lib64/libm.so.6 (0x00007f567da2a000) libz.so.1 => /lib64/libz.so.1 (0x00007f567d814000) libicui18n.so.57.1 => /usr/lib64/libicui18n.so.57.1 (0x00007f567d38a000) libicuuc.so.57.1 => /usr/lib64/libicuuc.so.57.1 (0x00007f567cfdb000) libpcre16.so.0 => /usr/lib64/libpcre16.so.0 (0x00007f567cd72000) libdouble-conversion.so.1 => /usr/lib64/libdouble-conversion.so.1 (0x00007f567cb5f000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f567c95b000) libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f567c644000) librt.so.1 => /lib64/librt.so.1 (0x00007f567c43c000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f567c224000) /lib64/ld-linux-x86-64.so.2 (0x00005567aa70f000) libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007f567bf90000) libGL.so.1 => /usr/lib64/libGL.so.1 (0x00007f567bcfc000) libpng16.so.16 => /usr/lib64/libpng16.so.16 (0x00007f567baba000) libicudata.so.57.1 => /usr/lib64/libicudata.so.57.1 (0x00007f567b8b9000) libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007f567b646000) libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007f567b3a6000) libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3 (0x00007f567b17e000) libGLX.so.0 => /usr/lib64/libGLX.so.0 (0x00007f567af4c000) libGLdispatch.so.0 => /usr/lib64/libGLdispatch.so.0 (0x00007f567ac96000) libbz2.so.1 => /usr/lib64/libbz2.so.1 (0x00007f567aa86000) libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007f567a744000) libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007f567a518000) libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007f567a314000) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770#c1
--- Comment #1 from Stefan Hundhammer
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
Stefan Hundhammer
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770#c2
--- Comment #2 from Stefan Hundhammer
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770#c3
Egbert Eich
The problem *might* also be on the Qt5 side.
This might be related to bug #1029699.
This is actually very likely. It is a problem that is not so easy to fix: ssh uses unix sockets, therefore the connection is considered local and thus the shared memory extension is used. Everything seems to work well - until you try to access the shared memory areas (which are on the other machine). In fact, I had plans once to address this in the libxcb backend of Qt5 but never got around to it. The crash happens in Qt5 - I would therefore start looking there ... So, in fact, why do you assign this ticket to 'X.Org'? Because you surmise that you will get some response while assigning it to 'Other' nobody cares? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770#c4
Stefan Hundhammer
So, in fact, why do you assign this ticket to 'X.Org'? Because you surmise that you will get some response while assigning it to 'Other' nobody cares?
I don't know if it's in xcb or in Qt5. Somebody with more insight (preferably into both) needs to make this decision. But these issues seem to come more and more often lately, so it is really hurting us. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770
http://bugzilla.opensuse.org/show_bug.cgi?id=1035770#c5
--- Comment #5 from Egbert Eich
participants (1)
-
bugzilla_noreply@novell.com