https://bugs.kde.org/show_bug.cgi?id=384884

            Bug ID: 384884
           Summary: Crash on screen resize
           Product: kwin
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

>From the trace I'd say I'm running glDeleteProgram() without a context?

I'm not fully sure why it's not reliably reproducible. I've spent a big chunk
of the day switching screen scales (and so geometry) constantly, and hit this
twice.
Do we sometimes "leak" the doneCurrentContext() and it depends on what it
happened to have rendered last?

I made the obvious patch, and not seen this since.

#6  0x00007fffee16c298 in __run_exit_handlers () at /usr/lib/libc.so.6
#7  0x00007fffee16c2ea in  () at /usr/lib/libc.so.6
#8  0x00007fffee220695 in  () at /usr/lib/libc.so.6
#9  0x00007fffee2207d4 in  () at /usr/lib/libc.so.6
#10 0x00007fffeee175fc in  () at /usr/lib/libepoxy.so.0
#11 0x00007fffeedfa69d in  () at /usr/lib/libepoxy.so.0
#12 0x00007ffff0b22636 in KWin::GLShader::~GLShader() (this=0x1e786f0,
__in_chrg=<optimized out>)
    at
/home/david/projects/kde5/src/kde/workspace/kwin/libkwineffects/kwinglutils.cpp:172
#13 0x00007ffff796b5f7 in
QScopedPointerDeleter<KWin::GLShader>::cleanup(KWin::GLShader*)
(pointer=0x1e786f0)
    at /opt/qt5/include/QtCore/qscopedpointer.h:60
#14 0x00007ffff796b2cd in QScopedPointer<KWin::GLShader,
QScopedPointerDeleter<KWin::GLShader> >::~QScopedPointer() (this=0x1ee47a8,
__in_chrg=<optimized out>) at /opt/qt5/include/QtCore/qscopedpointer.h:107
#15 0x00007ffff7968a91 in KWin::LanczosFilter::~LanczosFilter()
(this=0x1ee4780, __in_chrg=<optimized out>)
    at /home/david/projects/kde5/src/kde/workspace/kwin/lanczosfilter.cpp:55
#16 0x00007ffff7968ace in KWin::LanczosFilter::~LanczosFilter()
(this=0x1ee4780, __in_chrg=<optimized out>)
    at /home/david/projects/kde5/src/kde/workspace/kwin/lanczosfilter.cpp:59
#17 0x00007ffff7950c6e in KWin::SceneOpenGL2::resetLanczosFilter()
(this=0xaabf40)
    at /home/david/projects/kde5/src/kde/workspace/kwin/scene_opengl.cpp:1194
#18 0x00007ffff7a6f77f in KWin::SceneOpenGL2::qt_static_metacall(QObject*,
QMetaObject::Call, int, void**) (_o=0xaabf40, _c=QMetaObject::InvokeMetaMethod,
_id=0, _a=0x7fffffffcbf8) at kwin_autogen/EWIEGA46WW/moc_scene_opengl.cpp:178
#19 0x00007fffef531a22 in QMetaObject::activate(QObject*, int, int, void**)
(sender=sender@entry=0x7ca700, signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0)
    at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3766
#20 0x00007fffef531d0b in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (sender=0x7ca700, m=<optimized out---Type <return> to continue, or
q <return> to quit---
>, local_signal_index=1, argv=0x0) at 
>/home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3628            
>                                                                               
>                                                                           
#21 0x00007ffff7a70bbb in KWin::Screens::changed() (this=0x7ca700) at
kwin_autogen/EWIEGA46WW/moc_screens.cpp:262                                     
#22 0x00007fffde44e19a in
KWin::DrmBackend::configurationChangeRequested(KWayland::Server::OutputConfigurationInterface*)
(this=0x6a9910, config=0x1edd2f0) at
/home/david/projects/kde5/src/kde/workspace/kwin/plugins/platforms/drm/drm_backend.cpp:537
 
#23 0x00007ffff7a046fa in
KWin::WaylandServer::<lambda(KWayland::Server::OutputConfigurationInterface*)>::operator()(KWayland::Server::OutputConfigurationInterface
*) const (__closure=0x6a9560, config=0x1edd2f0)                                 
    at /home/david/projects/kde5/src/kde/workspace/kwin/wayland_server.cpp:298  
#24 0x00007ffff7a0971f in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,
QtPrivate::List<KWayland::Server::OutputConfigurationInterface*>, void,
KWin::WaylandServer::init(const QByteArray&,
KWin::WaylandServer::InitalizationFlags)::<lambda(KWayland::Server::OutputConfigurationInterface*)>
>::call(KWin::WaylandServer::<lambda(KWayland::Server::OutputConfigurationInterface*)>
&, void **) (f=..., arg=0x7fffffffcee0) at
/opt/qt5/include/QtCore/qobjectdefs_impl.h:130                                  
#25 0x00007ffff7a092fe in QtPrivate::Functor<KWin::WaylandServer::init(const
QByteArray&,
KWin::WaylandServer::InitalizationFlags)::<lambda(KWayland::Server::OutputConfigurationInterface*)>,
1>::call<QtPrivate::List<KWayland::Server::OutputConfigurationInterface*>,
void>(KWin::WaylandServer::<lambda(KWayland::Server::OutputConfigurationInterface*)>
&, void *, void **) (f=..., arg=0x7fffffffcee0) at
/opt/qt5/include/QtCore/qobjectdefs_impl.h:240                                  
#26 0x00007ffff7a0829a in
QtPrivate::QFunctorSlotObject<KWin::WaylandServer::init(const QByteArray&,
KWin::WaylandServer::InitalizationFlags)::<lambda(KWayland::Server::OutputConfigurationInterface*)>,
1, QtPrivate::List<KWayland::Server::OutputConfigurationInterface*>,
void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
(which=1, this_=0x6a9550, r=0x69f0f0, a=0x7fffffffcee0, ret=0x0) at
/opt/qt5/include/QtCore/qobject_impl.h:168                                      
#27 0x00007fffef531879 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=<optimized out>, r=0x69f0f0, this=0x6a9550) at
../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qobject_impl.h:101
 
#28 0x00007fffef531879 in QMetaObject::activate(QObject*, int, int, void**)
(sender=sender@entry=0x6a93f0, signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffcee0)  
    at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3749      
#29 0x00007fffef531d0b in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (sender=0x6a93f0, m=<optimized out>, local_signal_index=0,
argv=0x7fffffffcee0) at
/home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3628             
#30 0x00007ffff14b4e65 in
KWayland::Server::OutputManagementInterface::configurationChangeRequested(KWayland::Server::OutputConfigurationInterface*)
(this=0x6a93f0, _t1=0x1edd2f0) at
src/server/KF5WaylandServer_autogen/EWIEGA46WW/moc_outputmanagement_interface.cpp:132
 
#31 0x00007ffff143fc4f in
KWayland::Server::OutputConfigurationInterface::Private::emitConfigurationChangeRequested()
const (this=0x1f00a10) at
/home/david/projects/kde5/src/frameworks/kwayland/src/server/outputconfiguration_interface.cpp:199
 
#32 0x00007ffff143fc1c in
KWayland::Server::OutputConfigurationInterface::Private::applyCallback(wl_client*,
wl_resource*) (client=0x1e746f0, resource=0x1ede140) at
/home/david/projects/kde5/src/frameworks/kwayland/src/server/outputconfiguration_interface.cpp:193
 
#33 0x00007fffe44d91c8 in ffi_call_unix64 () at /usr/lib/libffi.so.6            
#34 0x00007fffe44d8c2a in ffi_call () at /usr/lib/libffi.so.6                   
#35 0x00007fffeb593ffe in  () at /usr/lib/libwayland-server.so.0                
#36 0x00007fffeb5908d7 in  () at /usr/lib/libwayland-server.so.0

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to