<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - dri2_wl_swrast crashes on 64 bit, but not on 32 bit"
href="https://bugs.freedesktop.org/show_bug.cgi?id=96953">96953</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>dri2_wl_swrast crashes on 64 bit, but not on 32 bit
</td>
</tr>
<tr>
<th>Product</th>
<td>Mesa
</td>
</tr>
<tr>
<th>Version</th>
<td>git
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>EGL/Wayland
</td>
</tr>
<tr>
<th>Assignee</th>
<td>wayland-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>bluescreen_avenger@verizon.net
</td>
</tr>
<tr>
<th>QA Contact</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr></table>
<p>
<div>
<pre>I am not sure if this is because of qtwayland or because of mesa, but it seems
I am getting a crash with git master
I have a stack trace, let me know if running it with any variables exported
I am building mesa with
./autogen.sh --prefix=$INSTALLDIR --enable-driglx-direct --enable-dri
--with-dri-drivers=r200,radeon,nouveau,i915,i965,swrast --enable-osmesa
--enable-xa --enable-glx-tls --enable-shared-dricore --enable-gles1
--enable-gles2
--with-gallium-drivers=nouveau,svga,r300,r600,swrast,radeonsi,virgl
--with-egl-platforms=x11,wayland,drm --enable-gbm --enable-shared-glapi
--enable-gallium-egl --with-llvm-prefix=/usr/lib/llvm-3.6/
--with-llvm-shared-libs --libdir=$INSTALLDIR/lib/$(dpkg-architecture
-qDEB_HOST_MULTIARCH)
0 dri2_wl_swrast_put_image2 (draw=0x300c240, op=<optimized out>,
x=<optimized out>, y=0, w=<optimized out>, h=0, stride=64,
data=0x3012b40 "", loaderPrivate=0x3012240)
at drivers/dri2/platform_wayland.c:1642
dri2_surf = 0x3012240
copy_width = -4
src = 0x36d4000 <error: Cannot access memory at address 0x36d4000>
dst = 0x7fffcd4f4ffc <error: Cannot access memory at address
0x7fffcd4f4ffc>
__PRETTY_FUNCTION__ = "dri2_wl_swrast_put_image2"
#1 0x00007fffed28ed26 in dri2_wl_swrast_put_image (
draw=<optimized out>, op=<optimized out>, x=<optimized out>,
y=<optimized out>, w=<optimized out>, h=<optimized out>,
data=0x3012b40 "", loaderPrivate=0x3012240)
at drivers/dri2/platform_wayland.c:1658
dri2_surf = 0x3012240
#2 0x00007fffea1bbd38 in put_image (height=<optimized out>,
width=<optimized out>, data=<optimized out>,
dPriv=<optimized out>) at drisw.c:71
sPriv = <optimized out>
loader = <optimized out>
#3 drisw_put_image (drawable=<optimized out>, data=<optimized out>,
width=<optimized out>, height=<optimized out>) at drisw.c:141
dPriv = <optimized out>
#4 0x00007fffea1bc1dd in drisw_copy_to_front (ptex=0x300c0d0,
dPriv=0x300c240) at drisw.c:181
No locals.
#5 drisw_swap_buffers (dPriv=0x300c240) at drisw.c:208
ctx = 0x2e2ac20
ptex = 0x300c0d0
#6 0x00007fffed28d0b9 in dri2_wl_swrast_swap_buffers (
drv=<optimized out>, disp=<optimized out>, draw=<optimized out>)
at drivers/dri2/platform_wayland.c:1729
No locals.
#7 0x00007fffed2839e2 in eglSwapBuffers (dpy=0x710400,
surface=surface@entry=0x3012240) at main/eglapi.c:1008
ctx = 0x2e7ef00
disp = 0x710400
surf = 0x3012240
drv = <optimized out>
ret = <optimized out>
__func__ = "eglSwapBuffers"
#8 0x00007ffff7e57b7a in QtWaylandClient::QWaylandGLContext::swapBuffers
(this=0x2e7eb90, surface=0x2dd1a00)
at
../../../hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp:553
window = 0x2dd19f0
eglSurface = 0x3012240
sub = 0x0
#9 0x00007ffff6854238 in QOpenGLContext::swapBuffers (
this=this@entry=0x2d91790, surface=surface@entry=0x2dd0650)
at /srcbuild/qtbase/src/gui/kernel/qopenglcontext.cpp:1063
__PRETTY_FUNCTION__ = "void QOpenGLContext::swapBuffers(QSurface*)"
surfaceHandle = 0x2dd1a00
#10 0x00007ffff69a4c8a in QPlatformBackingStore::composeAndFlush (
this=this@entry=0x2dd1550, window=window@entry=0x2dd0640,
region=..., offset=..., textures=<optimized out>,
context=<optimized out>, translucentBackground=false)
at /srcbuild/qtbase/src/gui/painting/qplatformbackingstore.cpp:414
funcs = 0x3012080
deviceWindowRect = {x1 = 0, y1 = 0, x2 = 1009, y2 = 575}
textureId = <optimized out>
origin = <optimized out>
#11 0x00007ffff69a4d8b in QPlatformBackingStore::composeAndFlush (
this=this@entry=0x2dd1550, window=0x2dd0640, region=...,
offset=...,
textures=textures@entry=0x7ffff745cf40 <(anonymous
namespace)::Q_QGS_qt_dummy_platformTextureList::innerFunction()::holder>,
context=context@entry=0x2d91790, translucentBackground=false)
at /srcbuild/qtbase/src/gui/painting/qplatformbackingstore.cpp:317
No locals.
#12 0x00007ffff7049590 in QWidgetBackingStore::qt_flush (
widget=widget@entry=0x83d880, region=...,
backingStore=<optimized out>, tlw=0x83d880, tlwOffset=...,
widgetTextures=0x7ffff745cf40 <(anonymous
namespace)::Q_QGS_qt_dummy_platformTextureList::innerFunction()::holder>,
widgetBackingStore=0x2dd1b30)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetbackingstore.cpp:138
translucentBackground = false
flushUpdate = 0
fpsDebug = false
__PRETTY_FUNCTION__ = "static void
QWidgetBackingStore::qt_flush(QWidget*, const QRegion&, QBackingStore*,
QWidget*, const QPoint&, QPlatformTextureList*, QWidgetBackingStore*)"
offset = {xp = 0, yp = 0}
compositionWasActive = <optimized out>
#13 0x00007ffff7049ed3 in QWidgetBackingStore::flush (
this=this@entry=0x2dd1b30, widget=widget@entry=0x0)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetbackingstore.cpp:1415
target = 0x83d880
hasDirtyOnScreenWidgets = false
flushed = false
#14 0x00007ffff704a076 in QWidgetBackingStore::endPaint (
this=this@entry=0x2dd1b30, cleaned=...,
backingStore=<optimized out>,
beginPaintInfo=beginPaintInfo@entry=0x7fffffffd514)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetbackingstore.cpp:359
No locals.
#15 0x00007ffff704b329 in QWidgetBackingStore::doSync (
this=this@entry=0x2dd1b30)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetbackingstore.cpp:1399
updatesDisabled = <optimized out>
repaintAllWidgets = <optimized out>
inTopLevelResize = <optimized out>
tlwRect = {x1 = 7, y1 = 96, x2 = 1016, y2 = 671}
surfaceGeometry = {x1 = 7, y1 = 96, x2 = 5, y2 = 94}
toClean = {d = 0x989580, static shared_empty = {ref = {
atomic = {_q_value = {<std::__atomic_base<int>> = {
static _S_alignment = 4,
_M_i = -1}, <No data fields>}}},
qt_rgn = 0x7ffff6b0d0c0 <qrp>}}
opaqueNonOverlappedWidgets = {a = 32, s = 0,
ptr = 0x7fffffffd600, {
array =
"\000\000\000\000\000\000\000\000@\206\344\002\000\000\000\000\220\210\344\002",
'\000' <repeats 12 times>, "\240\247\344\002\000\000\000\000P\246\344\002",
'\000' <repeats 12 times>, "\200\000\000\000\000\000P\225\342\002", '\000'
<repeats 12 times>,
"`\327\377\377\377\177\000\000_\356\336\367\377\177\000\000\000\000\000\000\000\000\360?",
'\000' <repeats 24 times>, "\021\352-\201\231\227q=", '\000' <repeats 16
times>, "@0\222\000\000\000\000\000\000\000\000@\000\000\000\000
\332\377\377\377\177\000\000\070\033\335\002\000\000\000\000q\344\201\366\377\177\000\000\070\033\335\002\000\000\000\000\035"...,
q_for_alignment_1 = 0, q_for_alignment_2 = 0}}
beginPaintInfo = {wasFlushed = 0, nothingToPaint = 0,
backingStoreRecreated = 0}
dirtyCopy = {d = 0x989580, static shared_empty = {ref = {
atomic = {_q_value = {<std::__atomic_base<int>> = {
static _S_alignment = 4,
_M_i = -1}, <No data fields>}}},
qt_rgn = 0x7ffff6b0d0c0 <qrp>}}
#16 0x00007ffff704b509 in QWidgetBackingStore::sync (this=0x2dd1b30,
exposedWidget=0x83d880, exposedRegion=...)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetbackingstore.cpp:1148
No locals.
#17 0x00007ffff70846c4 in QWidgetWindow::event (this=0x2dd0640,
event=0x7fffffffda08)
at /srcbuild/qtbase/src/widgets/kernel/qwidgetwindow.cpp:284
No locals.
#18 0x00007ffff703fa4e in QApplicationPrivate::notify_helper (
this=<optimized out>, receiver=0x2dd0640, e=0x7fffffffda08)
at /srcbuild/qtbase/src/widgets/kernel/qapplication.cpp:3799
consumed = <optimized out>
this = <optimized out>
e = 0x7fffffffda08
receiver = 0x2dd0640
#19 0x00007ffff7045c65 in QApplication::notify (this=0x7fffffffdea0,
receiver=0x2dd0640, e=0x7fffffffda08)
at /srcbuild/qtbase/src/widgets/kernel/qapplication.cpp:3641
widget = <optimized out>
__PRETTY_FUNCTION__ = "virtual bool QApplication::notify(QObject*,
QEvent*)"
res = false
#20 0x00007ffff6141299 in QCoreApplication::notifyInternal2 (
receiver=0x2dd0640, event=0x7fffffffda08)
at /srcbuild/qtbase/src/corelib/kernel/qcoreapplication.cpp:988
selfRequired = true
result = false
cbdata = {0x2dd0640, 0x7fffffffda08, 0x7fffffffd997}
d = <optimized out>
threadData = 0x6ee5c0
#21 0x00007ffff6834862 in QCoreApplication::sendSpontaneousEvent (
receiver=receiver@entry=0x2dd0640,
event=event@entry=0x7fffffffda08)
at ../../include/QtCore/../../../src/corelib/kernel/qcoreapplication.h:234
No locals.
#22 0x00007ffff6833806 in QGuiApplicationPrivate::processExposeEvent
(e=0x2e2bd30)
at /srcbuild/qtbase/src/gui/kernel/qguiapplication.cpp:2797
p = 0x2dd16e0
exposeEvent = {<QEvent> = {
_vptr.QEvent = 0x7ffff6af6558 <vtable for QExposeEvent+16>, static
staticMetaObject = {d = {superdata = 0x0,
stringdata = 0x7ffff62c9320 <qt_meta_stringdata_QEvent>, data =
0x7ffff62c8d60 <qt_meta_data_QEvent>,
static_metacall = 0x0, relatedMetaObjects = 0x0,
extradata = 0x0}}, d = 0x0, t = 206, posted = 0,
spont = 1, m_accept = 1, reserved = 7888}, rgn = {
d = 0x2e2bcd0, static shared_empty = {ref = {atomic = {
_q_value = {<std::__atomic_base<int>> = {
static _S_alignment = 4,
_M_i = -1}, <No data fields>}}},
qt_rgn = 0x7ffff6b0d0c0 <qrp>}}}
#23 0x00007ffff6833fe4 in QGuiApplicationPrivate::processWindowSystemEvent
(e=e@entry=0x2e2bd30)
at /srcbuild/qtbase/src/gui/kernel/qguiapplication.cpp:1755
__PRETTY_FUNCTION__ = "static void
QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*)"
#24 0x00007ffff68210f3 in QWindowSystemInterface::sendWindowSystemEvents
(flags=...)
at /srcbuild/qtbase/src/gui/kernel/qwindowsysteminterface.cpp:654
event = 0x2e2bd30
nevents = 2
#25 0x00007fffee01cf91 in userEventSourceDispatch (
source=<optimized out>)
at
/srcbuild/qtbase/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:76
userEventSource = <optimized out>
dispatcher = <optimized out>
#26 0x00007ffff13a130e in g_main_dispatch (context=0x7bd9e0)
at gmain.c:3165
dispatch = 0x7fffee01cf84 <userEventSourceDispatch(GSource*,
GSourceFunc, gpointer)>
prev_source = 0x0
was_in_call = 0
user_data = 0x0
callback = 0x0
cb_funcs = 0x0
cb_data = 0x0
need_destroy = <optimized out>
source = 0x7a8690
current = 0x705060
i = 1
#27 g_main_context_dispatch (context=context@entry=0x7bd9e0)
at gmain.c:3780
No locals.
#28 0x00007ffff13a1543 in g_main_context_iterate (
context=context@entry=0x7bd9e0, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3851
max_priority = 0
timeout = 0
some_ready = 1
nfds = <optimized out>
allocated_nfds = <optimized out>
fds = 0x7f93a0
#29 0x00007ffff13a15dc in g_main_context_iteration (
context=0x7bd9e0, may_block=may_block@entry=1) at gmain.c:3912
retval = <optimized out>
#30 0x00007ffff617208c in QEventDispatcherGlib::processEvents (
this=0x7a3800, flags=...)
at /srcbuild/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:423
d = 0x711000
canWait = true
savedFlags = {i = 0}
result = <optimized out>
#31 0x00007ffff613da04 in QEventLoop::exec (
this=this@entry=0x7fffffffdcc0, flags=..., flags@entry=...)
at /srcbuild/qtbase/src/corelib/kernel/qeventloop.cpp:212
d = 0x7fa860
locker = {val = 7275968}
__PRETTY_FUNCTION__ = "int
QEventLoop::exec(QEventLoop::ProcessEventsFlags)"
ref = {d = 0x7fa860, locker = @0x7fffffffdc58,
exceptionCaught = true}
#32 0x00007ffff6141abf in QCoreApplication::exec ()
at /srcbuild/qtbase/src/corelib/kernel/qcoreapplication.cpp:1261
threadData = 0x6ee5c0
__PRETTY_FUNCTION__ = "static int QCoreApplication::exec()"
eventLoop = {<QObject> = {
_vptr.QObject = 0x7ffff6360958 <vtable for QEventLoop+16>, static
staticMetaObject = {d = {superdata = 0x0,
stringdata = 0x7ffff62690e0 <qt_meta_stringdata_QObject>, data
= 0x7ffff6268fc0 <qt_meta_data_QObject>,
static_metacall = 0x7ffff615cf9e
<QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>,
relatedMetaObjects = 0x0, extradata = 0x0}},
d_ptr = {d = 0x7fa860}, static staticQtMetaObject = {
d = {superdata = 0x0,
stringdata = 0x7ffff62b15c0 <qt_meta_stringdata_Qt>,
data = 0x7ffff62aeb00 <qt_meta_data_Qt>,
static_metacall = 0x0, relatedMetaObjects = 0x0,
extradata = 0x0}}}, static staticMetaObject = {d = {
superdata = 0x7ffff6362840 <QObject::staticMetaObject>,
stringdata = 0x7ffff62c8960 <qt_meta_stringdata_QEventLoop>,
data = 0x7ffff62c8900 <qt_meta_data_QEventLoop>,
static_metacall = 0x7ffff61a49f6
<QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>,
relatedMetaObjects = 0x0, extradata = 0x0}}}
returnCode = <optimized out>
#33 0x0000000000412d0e in main ()
No symbol table info available.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>