Bug 397745 - Meta Key doesn't work after gaming.
Summary: Meta Key doesn't work after gaming.
Status: RESOLVED WORKSFORME
Alias: None
Product: kwin
Classification: Plasma
Component: input (show other bugs)
Version: 5.13.4
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-08-22 14:23 UTC by Tony
Modified: 2021-11-07 21:11 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:
mgraesslin: Wayland-
mgraesslin: X11+


Attachments
kwin stacktrace. (6.43 KB, text/plain)
2018-11-18 17:20 UTC, Tony
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tony 2018-08-22 14:23:17 UTC
Hello everybody,
i use to play a simple game: UrbanTerror, a multiplatform fps. 
After the game, played in fullscreen mode, when i come back to Plasma the Meta key doesn't work anymore, while Alt+F1 works perfectly. 
The same problem doesn't appear with Steam, also played in fullscreen mode. 
However, all returns normal after restarting the session.

Date: 2012-08-22
Platform: KDE Neon 5.13.4.
Graphic card: Nvidia Gtx 1050 with proprietary drivers, version 396.51.

Let me know if other informations are needed, this is my first bug report :-)
Thank you.
Comment 1 Tony 2018-11-18 17:20:27 UTC
Created attachment 116388 [details]
kwin stacktrace.
Comment 2 Tony 2018-11-18 17:21:06 UTC
Good evening to everyone,
after some digging about this bug, i think the responsible for it is kwin.
As reported by this redditor: 
https://www.reddit.com/r/kde/comments/5ovjqu/super_key_meta_not_working_anymore/dcp8d95
kwin sees when Meta is released and sends a message to the plasma panel.
In fact, using dbus-monitor, i can see this message before gaming and i don't see it anymore after. 
Furthemore, it's not necessary logging out to solve the problem but a simple: kwin --replace in krunner is sufficient.
So, i've looked around and seen how to do a debug of kwin with gdb, and i've done the followind stacktrace (kwin.dbg). 
PS. I don't know if i've done it correctly: i've started a virtual console (vt2), attached gdb to kwin, given continue, started and stopped the game in kde, back to vt2, given bt + enter and detach + quit.
Let me know if did it wrong.
Thanks.

tony@desktop:~$ cat kwin.gdb 
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
Attaching to process 1531
[New LWP 1534]
[New LWP 1535]
[New LWP 1540]
[New LWP 1547]
[New LWP 1811]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f50723c4cf6 in __GI_ppoll (fds=0x7f505400c858, nfds=5, 
    timeout=<optimized out>, sigmask=0x0)
    at ../sysdeps/unix/sysv/linux/ppoll.c:39
39      ../sysdeps/unix/sysv/linux/ppoll.c: File o directory non esistente.
(gdb) continue
Continuing.
[New Thread 0x7f5051bd3700 (LWP 3242)]
[New Thread 0x7f50513d2700 (LWP 3243)]

Thread 1 "kwin_x11" received signal SIGSEGV, Segmentation fault.
0x00007f506ecbefae in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
(gdb) bt
#0  0x00007f506ecbefae in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
#1  0x00007f506ecbf084 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
#2  0x00007f506ecc05e5 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
#3  0x00007f506ecc0fdb in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
#4  0x00007f5071f2f10e in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#5  0x00007f506ec2ec85 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libkwin4_effect_builtins.so.1
#6  0x00007f5071f2f10e in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#7  0x00007f5071f1c0b0 in KWin::Scene::finalPaintWindow(KWin::EffectWindowImpl*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#8  0x00007f5071f2ef9d in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#9  0x00007f506ef1fe80 in KWin::Effect::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwineffects.so.11
#10 0x00007f5071f2ef3e in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#11 0x00007f506ef1fe80 in KWin::Effect::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwineffects.so.11
#12 0x00007f5071f2ef3e in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#13 0x00007f5071f22182 in KWin::Scene::paintWindow(KWin::Scene::Window*, int, QRegion, KWin::WindowQuadList) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#14 0x00007f5071f20efc in KWin::Scene::paintSimpleScreen(int, QRegion) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#15 0x00007f503a39ac82 in ?? ()
   from /usr/lib/x86_64-linux-gnu/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#16 0x00007f5071f21717 in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#17 0x00007f5071f2ecf5 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#18 0x00007f506ef1fdd1 in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwineffects.so.11
#19 0x00007f5071f2ec9d in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#20 0x00007f506ef1fdd1 in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwineffects.so.11
#21 0x00007f5071f2ec9d in KWin::EffectsHandlerImpl::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#22 0x00007f5071f2140e in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*, QMatrix4x4 const&, QRect const&) ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#23 0x00007f503a3a0df1 in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) ()
   from /usr/lib/x86_64-linux-gnu/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#24 0x00007f5071f13b02 in KWin::Compositor::performCompositing() ()
   from /usr/lib/x86_64-linux-gnu/libkwin.so.5
#25 0x00007f506f9a0b9b in QObject::event(QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007f50706fde1c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007f50707053ef in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007f506f970fe8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007f506f9ca4be in QTimerInfoList::activateTimers() ()
   from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007f506f9c86c2 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007f505add19fd in ?? ()
   from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#32 0x00007f506f96f30a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#33 0x00007f506f9784d0 in QCoreApplication::exec() ()
   from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#34 0x00007f50726a9dab in kdemain ()
   from /usr/lib/x86_64-linux-gnu/libkdeinit5_kwin_x11.so
#35 0x00007f50722d1b97 in __libc_start_main (main=0x55d9e4412720, argc=3, 
    argv=0x7fffdd47df38, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffdd47df28)
    at ../csu/libc-start.c:310
#36 0x000055d9e441275a in _start ()
(gdb) detach
Detaching from program: /usr/bin/kwin_x11, process 1531
(gdb) quit
Comment 3 Martin Flöser 2018-11-18 17:39:26 UTC
A backtrace is useful in the case of a crash, for debugging anything else it's pretty useless. You describe a problem which does not sound like a crash. If you have an unrelated crash please report a new bug.
Comment 4 Tony 2018-11-18 18:02:52 UTC
I'm sorry for the backtrace, I thought it could be useful. 
It is not a crash, but a "malfunction".
Gdb is the first result come out on Google, I was looking for a log file in kwin.
Where else could I find information to solve the problem?
Thank you.
Comment 5 Martin Flöser 2018-11-18 19:25:18 UTC
Well, it's pretty obvious isn't it? UrbanTerror does soemthing strange which breaks this feature.
Comment 6 kde.org 2021-11-07 00:35:36 UTC
This issue report is quite old. Can you please confirm, that it still persists with Plasma 5.23?
Comment 7 Tony 2021-11-07 21:09:17 UTC
(In reply to kde.org from comment #6)
> This issue report is quite old. Can you please confirm, that it still
> persists with Plasma 5.23?

I'm sorry, i can't no longer check for this bug on that machine.
Comment 8 kde.org 2021-11-07 21:11:11 UTC
User cannot reproduce issue due to hw change. Setting to resolved