Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jul 2016 17:45:18 -0500
From:      Jeremy <jeremy.m.cox@gmail.com>
To:        freebsd-x11@freebsd.org
Subject:   opengl issue with Haswell graphics plus xserver 1.18.4 with FreeBSD 11
Message-ID:  <CAPH9q1pObG6O6u1MHgsVcmxiEJe87s5YwVyGk7grFP7MU1zAQQ@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
I'm having a rather odd issue trying to get my haswell graphics to work
with FreeBSD 11, using the xserver-next branch version 1.18.4... compiled
with clang 3.8.0. All attempts to get anything to work with opengl
(glxgears, glxinfo, kinfo center looking at OPENGL information, etc)
results in a segmentation fault. They all have exactly the same error...
some kind of memory access error leading to libc/sscanf.c

heres a bt from glxinfo:


root@riotskates:~ # gdb /usr/local/bin/glxinfo glxinfo.core
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 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 "amd64-marcel-freebsd"...(no debugging symbols
found)...
Core was generated by `glxinfo'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/local/lib/libGLEW.so.1...(no debugging symbols
found)...done.
Loaded symbols for /usr/local/lib/libGLEW.so.1
Reading symbols from /usr/local/lib/libGLU.so.1...(no debugging symbols
found)...done.
Loaded symbols for /usr/local/lib/libGLU.so.1
Reading symbols from /usr/local/lib/libGL.so.1...(no debugging symbols
found)...done.
Loaded symbols for /usr/local/lib/libGL.so.1
Reading symbols from /lib/libm.so.5...Reading symbols from
/usr/lib/debug//lib/libm.so.5.debug...done.
done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /usr/local/lib/libX11.so.6...done.
Loaded symbols for /usr/local/lib/libX11.so.6
Reading symbols from /usr/local/lib/libXext.so.6...done.
Loaded symbols for /usr/local/lib/libXext.so.6
Reading symbols from /lib/libc.so.7...Reading symbols from
/usr/lib/debug//lib/libc.so.7.debug...done.
done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /usr/lib/libc++.so.1...Reading symbols from
/usr/lib/debug//usr/lib/libc++.so.1.debug...done.
done.
Loaded symbols for /usr/lib/libc++.so.1
Reading symbols from /lib/libcxxrt.so.1...Reading symbols from
/usr/lib/debug//lib/libcxxrt.so.1.debug...done.
done.
Loaded symbols for /lib/libcxxrt.so.1
Reading symbols from /lib/libgcc_s.so.1...Reading symbols from
/usr/lib/debug//lib/libgcc_s.so.1.debug...done.
done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /usr/local/lib/libexpat.so.1...done.
Loaded symbols for /usr/local/lib/libexpat.so.1
Reading symbols from /usr/local/lib/libglapi.so.0...done.
Loaded symbols for /usr/local/lib/libglapi.so.0
Reading symbols from /usr/local/lib/libXdamage.so.1...done.
Loaded symbols for /usr/local/lib/libXdamage.so.1
Reading symbols from /usr/local/lib/libXfixes.so.3...done.
Loaded symbols for /usr/local/lib/libXfixes.so.3
Reading symbols from /usr/local/lib/libX11-xcb.so.1...done.
Loaded symbols for /usr/local/lib/libX11-xcb.so.1
Reading symbols from /usr/local/lib/libxcb-glx.so.0...done.
Loaded symbols for /usr/local/lib/libxcb-glx.so.0
Reading symbols from /usr/local/lib/libxcb-dri2.so.0...done.
Loaded symbols for /usr/local/lib/libxcb-dri2.so.0
Reading symbols from /usr/local/lib/libxcb.so.1...done.
Loaded symbols for /usr/local/lib/libxcb.so.1
Reading symbols from /usr/local/lib/libXxf86vm.so.1...done.
Loaded symbols for /usr/local/lib/libXxf86vm.so.1
Reading symbols from /usr/local/lib/libdrm.so.2...done.
Loaded symbols for /usr/local/lib/libdrm.so.2
Reading symbols from /lib/libthr.so.3...Reading symbols from
/usr/lib/debug//lib/libthr.so.3.debug...done.
done.
Loaded symbols for /lib/libthr.so.3
Reading symbols from /usr/lib/librpcsvc.so.5...Reading symbols from
/usr/lib/debug//usr/lib/librpcsvc.so.5.debug...done.
done.
Loaded symbols for /usr/lib/librpcsvc.so.5
Reading symbols from /usr/local/lib/libXau.so.6...done.
Loaded symbols for /usr/local/lib/libXau.so.6
Reading symbols from /usr/local/lib/libpthread-stubs.so.0...done.
Loaded symbols for /usr/local/lib/libpthread-stubs.so.0
Reading symbols from /usr/local/lib/libXdmcp.so.6...done.
Loaded symbols for /usr/local/lib/libXdmcp.so.6
Reading symbols from /usr/local/lib/libdevq.so.0...done.
Loaded symbols for /usr/local/lib/libdevq.so.0
Reading symbols from /usr/lib/libprocstat.so.1...Reading symbols from
/usr/lib/debug//usr/lib/libprocstat.so.1.debug...done.
done.
Loaded symbols for /usr/lib/libprocstat.so.1
Reading symbols from /lib/libelf.so.2...Reading symbols from
/usr/lib/debug//lib/libelf.so.2.debug...done.
done.
Loaded symbols for /lib/libelf.so.2
Reading symbols from /lib/libkvm.so.7...Reading symbols from
/usr/lib/debug//lib/libkvm.so.7.debug...done.
done.
Loaded symbols for /lib/libkvm.so.7
Reading symbols from /lib/libutil.so.9...Reading symbols from
/usr/lib/debug//lib/libutil.so.9.debug...done.
done.
Loaded symbols for /lib/libutil.so.9
Reading symbols from /libexec/ld-elf.so.1...Reading symbols from
/usr/lib/debug//libexec/ld-elf.so.1.debug...done.
done.
Loaded symbols for /libexec/ld-elf.so.1
#0  __svfscanf (fp=<value optimized out>, locale=<value optimized out>,
fmt0=<value optimized out>, ap=<value optimized out>) at
/usr/src/lib/libc/stdio/vfscanf.c:770
770                                             *va_arg(ap, int *) = res;
[New Thread 804e16000 (LWP 100671/<unknown>)]
(gdb) bt 50
#0  __svfscanf (fp=<value optimized out>, locale=<value optimized out>,
fmt0=<value optimized out>, ap=<value optimized out>) at
/usr/src/lib/libc/stdio/vfscanf.c:770
#1  0x000000080187d7eb in vsscanf (str=0x7fffffffdf20 "vendor=0x8086
device=0x0412 subvendor=0x103c subdevice=0x2af3 class=0x030000",
    fmt=0x804142aa5 "vendor=0x%04x device=0x%04x subvendor=0x%04x
subdevice=0x%04x", ap=0x7fffffffde80) at
/usr/src/lib/libc/stdio/vsscanf.c:71
#2  0x000000080187c4d5 in sscanf (str=0x1 <Address 0x1 out of bounds>,
fmt=0x7fffffffde80 "(") at /usr/src/lib/libc/stdio/sscanf.c:57
#3  0x0000000804141e68 in devq_device_get_pciid_full_from_fd () from
/usr/local/lib/libdevq.so.0
#4  0x0000000800dc426e in glXGetDriverConfig () from
/usr/local/lib/libGL.so.1
#5  0x0000000800dc445c in glXGetDriverConfig () from
/usr/local/lib/libGL.so.1
#6  0x0000000800dc0549 in glAreTexturesResidentEXT () from
/usr/local/lib/libGL.so.1
#7  0x0000000800d9caf1 in glXMakeCurrentReadSGI () from
/usr/local/lib/libGL.so.1
#8  0x0000000800d998a2 in glXChooseVisual () from /usr/local/lib/libGL.so.1
#9  0x0000000000401bd0 in ?? ()
#10 0x0000000000401830 in ?? ()
#11 0x000000080062c000 in ?? ()
#12 0x0000000000000000 in ?? ()
Current language:  auto; currently minimal
(gdb)


and a bt from kinfocenter trying to get opengl information:

Application: KDE Info Center (kinfocenter), signal: Segmentation fault
[Switching to Thread 80ba16000 (LWP 100641/kinfocenter)]
[KCrash Handler]
#8  __svfscanf (fp=<value optimized out>, locale=<value optimized out>,
fmt0=<value optimized out>, ap=<value optimized out>) at
/usr/src/lib/libc/stdio/vfscanf.c:770
#9  0x0000000804dd87eb in vsscanf (str=0x7fffffffbda0 "vendor=0x8086
device=0x0412 subvendor=0x103c subdevice=0x2af3 class=0x030000",
    fmt=0x8171baaa5 "vendor=0x%04x device=0x%04x subvendor=0x%04x
subdevice=0x%04x", ap=0x7fffffffbd00) at
/usr/src/lib/libc/stdio/vsscanf.c:71
#10 0x0000000804dd74d5 in sscanf (str=0x1 <Error reading address 0x1: Bad
address>, fmt=0x7fffffffbd00 "(") at /usr/src/lib/libc/stdio/sscanf.c:57
#11 0x00000008171b9e68 in devq_device_get_pciid_full_from_fd () from
/usr/local/lib/libdevq.so.0
#12 0x0000000815e5826e in glXGetDriverConfig () from
/usr/local/lib/libGL.so.1
#13 0x0000000815e5845c in glXGetDriverConfig () from
/usr/local/lib/libGL.so.1
#14 0x0000000815e54549 in glAreTexturesResidentEXT () from
/usr/local/lib/libGL.so.1
#15 0x0000000815e30af1 in glXMakeCurrentReadSGI () from
/usr/local/lib/libGL.so.1
#16 0x0000000815e2d8a2 in glXChooseVisual () from /usr/local/lib/libGL.so.1
#17 0x0000000815c064ce in qt_plugin_instance () from
/usr/local/lib/kde4/kcm_opengl.so
#18 0x0000000815c05900 in qt_plugin_instance () from
/usr/local/lib/kde4/kcm_opengl.so
#19 0x0000000815c0d354 in qt_plugin_instance () from
/usr/local/lib/kde4/kcm_opengl.so
#20 0x000000080266f91e in KPluginFactory::create () from
/usr/local/lib/libkdecore.so.5
#21 0x0000000800b3e6fc in KCModuleLoader::showLastLoaderError () from
/usr/local/lib/libkcmutils.so.4
#22 0x0000000800b3d16f in KCModuleLoader::loadModule () from
/usr/local/lib/libkcmutils.so.4
#23 0x0000000800b43d95 in KCModuleProxy::realModule () from
/usr/local/lib/libkcmutils.so.4
#24 0x0000000800b43b62 in KCModuleProxy::realModule () from
/usr/local/lib/libkcmutils.so.4
#25 0x0000000800b451b9 in KCModuleProxy::quickHelp () from
/usr/local/lib/libkcmutils.so.4
#26 0x00000000004149e6 in ?? ()
#27 0x00000000004121ac in ?? ()
#28 0x0000000802fa9b32 in QMetaObject::activate () from
/usr/local/lib/qt4/libQtCore.so.4
#29 0x000000000040fedc in ?? ()
#30 0x000000000041417e in ?? ()
#31 0x0000000802fa9b32 in QMetaObject::activate () from
/usr/local/lib/qt4/libQtCore.so.4
#32 0x0000000803b43070 in QAbstractItemView::mouseReleaseEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#33 0x0000000803660a68 in QWidget::event () from
/usr/local/lib/qt4/libQtGui.so.4
#34 0x0000000803a3086e in QFrame::event () from
/usr/local/lib/qt4/libQtGui.so.4
#35 0x0000000803aafe58 in QAbstractScrollArea::viewportEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#36 0x0000000803b41c5d in QAbstractItemView::viewportEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#37 0x0000000803b80a41 in QTreeView::viewportEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#38 0x0000000803ab06d4 in QAbstractScrollArea::qt_metacall () from
/usr/local/lib/qt4/libQtGui.so.4
#39 0x0000000802f91b8c in
QCoreApplicationPrivate::sendThroughObjectEventFilters () from
/usr/local/lib/qt4/libQtCore.so.4
#40 0x000000080361111c in QApplicationPrivate::notify_helper () from
/usr/local/lib/qt4/libQtGui.so.4
#41 0x0000000803612aac in QApplication::notify () from
/usr/local/lib/qt4/libQtGui.so.4
#42 0x0000000801c73cf7 in KApplication::notify () from
/usr/local/lib/libkdeui.so.5
#43 0x0000000802f91886 in QCoreApplication::notifyInternal () from
/usr/local/lib/qt4/libQtCore.so.4
#44 0x0000000803611b77 in QApplicationPrivate::sendMouseEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#45 0x00000008036897d6 in qt_try_modal () from
/usr/local/lib/qt4/libQtGui.so.4
#46 0x0000000803687f10 in QApplication::x11ProcessEvent () from
/usr/local/lib/qt4/libQtGui.so.4
#47 0x00000008036b433c in QX11Info::isCompositingManagerRunning () from
/usr/local/lib/qt4/libQtGui.so.4
#48 0x00000008092123f5 in g_main_context_dispatch () from
/usr/local/lib/libglib-2.0.so.0
#49 0x0000000809212724 in g_main_context_pending () from
/usr/local/lib/libglib-2.0.so.0
#50 0x00000008092127b4 in g_main_context_iteration () from
/usr/local/lib/libglib-2.0.so.0
#51 0x0000000802fbe65e in QEventDispatcherGlib::processEvents () from
/usr/local/lib/qt4/libQtCore.so.4
#52 0x00000008036b3f7d in QX11Info::isCompositingManagerRunning () from
/usr/local/lib/qt4/libQtGui.so.4
#53 0x0000000802f8ee82 in QEventLoop::exec () from
/usr/local/lib/qt4/libQtCore.so.4
#54 0x0000000802f91e2d in QCoreApplication::exec () from
/usr/local/lib/qt4/libQtCore.so.4
#55 0x000000000041372c in ?? ()
#56 0x000000000040fb60 in ?? ()
#57 0x0000000800643000 in ?? ()
#58 0x0000000000000000 in ?? ()


I am able to run graphics programs, I'm currently using kde4. However there
is an issue with opengl. Even www/firefox-esr dumps a little core file
every time I open it. I just don't know what the problem could be. This is
a fresh FreeBSD 11 install as well. My uname -a is

FreeBSD riotskates 11.0-BETA2 FreeBSD 11.0-BETA2 #0 r303278: Sun Jul 24
19:44:44 CDT 2016     root@riotskates:/usr/obj/usr/src/sys/ANDROMEDA  amd64

xorg-server-1.18.4
libGL-11,2,2
libdrm-2.4.69,1
dri-11,2,2,2
xf86-video-intel-2.99.917.20160614
libdevq-0.0.3_1

Is there some kind of access error getting information from

devq_device_get_pciid_full_from_fd () from /usr/local/lib/libdevq.so.0

or something? I'm completely lost. I've never seen an error like this
before.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPH9q1pObG6O6u1MHgsVcmxiEJe87s5YwVyGk7grFP7MU1zAQQ>