Bug 475444 - Crash after re-login after weird multi-screen bug
Summary: Crash after re-login after weird multi-screen bug
Status: RESOLVED WORKSFORME
Alias: None
Product: kwin
Classification: Plasma
Component: multi-screen (other bugs)
Version First Reported In: git master
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: multiscreen, qt6
Depends on:
Blocks:
 
Reported: 2023-10-10 20:38 UTC by ratijas
Modified: 2024-03-06 03:46 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
Note the dark area at the bottom of the left screen (158.57 KB, image/jpeg)
2023-10-10 20:38 UTC, ratijas
Details
Electric border in the middle of a screen (92.21 KB, image/jpeg)
2023-10-10 20:40 UTC, ratijas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ratijas 2023-10-10 20:38:29 UTC
Created attachment 162200 [details]
Note the dark area at the bottom of the left screen

SUMMARY

So, first KWin (X11) got hit by a weird bug where my vertical monitor was painting vertically as it should but only partially as it shouldn't; centering of "Identify Outputs" label implied that it was considered to be horizontal (vertical output's label was positioned as if the output's bounds were flipped but with the same top left corner). Nevertheless XRandR and kscreen-doctor seemed to be in sync with each other. But struts were off, and no amount of messing around KScreen KCM or issuing direct kscreen-doctor commands could fix it.

Anyways, after logging out and logging back in everything seemed back to normal, but I got a crash notification from Dr Konqi.

Stacktrace:

#4  0x00007f8f974f6aa2 in QArrayDataPointer<KWin::X11Window*>::data() const (this=<optimized out>) at /usr/include/qt6/QtCore/qarraydatapointer.h:105
#5  QArrayDataPointer<KWin::X11Window*>::constBegin() const (this=<optimized out>) at /usr/include/qt6/QtCore/qarraydatapointer.h:111
#6  QList<KWin::X11Window*>::cbegin() const (this=<optimized out>) at /usr/include/qt6/QtCore/qlist.h:592
#7  QtPrivate::sequential_erase_if<QList<KWin::X11Window*>, QtPrivate::sequential_erase<QList<KWin::X11Window*>, KWin::X11Window*>(QList<KWin::X11Window*>&, KWin::X11Window* const&)::{lambda(auto:1&)#1}>(QList<KWin::X11Window*>&, QtPrivate::sequential_erase<QList<KWin::X11Window*>, KWin::X11Window*>(QList<KWin::X11Window*>&, KWin::X11Window* const&)::{lambda(auto:1&)#1}&) (pred=<optimized out>, c=<optimized out>) at /usr/include/qt6/QtCore/qcontainertools_impl.h:285
#8  QtPrivate::sequential_erase<QList<KWin::X11Window*>, KWin::X11Window*>(QList<KWin::X11Window*>&, KWin::X11Window* const&) (t=<optimized out>, c=<optimized out>) at /usr/include/qt6/QtCore/qcontainertools_impl.h:319
#9  QtPrivate::sequential_erase_with_copy<QList<KWin::X11Window*>, KWin::X11Window*>(QList<KWin::X11Window*>&, KWin::X11Window* const&) (t=<optimized out>, c=<optimized out>) at /usr/include/qt6/QtCore/qcontainertools_impl.h:327
#10 QList<KWin::X11Window*>::removeAll<KWin::X11Window*>(KWin::X11Window* const&) (t=<optimized out>, this=<optimized out>) at /usr/include/qt6/QtCore/qlist.h:556
#11 KWin::Group::removeMember(KWin::X11Window*) (this=0x0, member_P=0x555d160524f0) at /home/ratijas/kde/src6/kwin/src/group.cpp:79
#12 0x00007f8f97685c54 in KWin::X11Window::cleanGrouping() (this=0x555d160524f0) at /home/ratijas/kde/src6/kwin/src/x11window.cpp:3247
#13 0x00007f8f9768a32c in KWin::X11Window::releaseWindow(bool) (this=0x555d160524f0, on_shutdown=<optimized out>) at /home/ratijas/kde/src6/kwin/src/x11window.cpp:429
#14 0x00007f8f976696d0 in KWin::Workspace::cleanupX11() (this=this@entry=0x555d15aae7e0) at /home/ratijas/kde/src6/kwin/src/workspace.cpp:412
#15 0x00007f8f976700e1 in KWin::Workspace::~Workspace() (this=0x555d15aae7e0, __in_chrg=<optimized out>) at /home/ratijas/kde/src6/kwin/src/workspace.cpp:437
#16 0x00007f8f97670be9 in KWin::Workspace::~Workspace() (this=0x555d15aae7e0, __in_chrg=<optimized out>) at /home/ratijas/kde/src6/kwin/src/workspace.cpp:468
#17 0x0000555d13dd58f3 in KWin::ApplicationX11::~ApplicationX11() (this=0x7ffc9f5b8460, __in_chrg=<optimized out>) at /home/ratijas/kde/src6/kwin/src/main_x11.cpp:186
#18 0x0000555d13da047d in main(int, char**) (argc=<optimized out>, argv=0x7ffc9f5b86a8) at /home/ratijas/kde/src6/kwin/src/main_x11.cpp:453

STEPS TO REPRODUCE
I couldn't reproduce it. It happened once, and doesn't happen anymore.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 5.27.80
KDE Frameworks Version: 5.240.0
Qt Version: 6.5.3
Kernel Version: 6.5.5-arch1-1 (64-bit)
Graphics Platform: X11
Processors: 8 × Intel® Core™ i7-6700HQ CPU @ 2.60GHz
Memory: 15.6 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 970M/PCIe/SSE2
Comment 1 ratijas 2023-10-10 20:40:56 UTC
Created attachment 162201 [details]
Electric border in the middle of a screen

I also shot a video on my phone, I can send in Telegram upload to YouTube if anyone's interested.
Comment 2 ratijas 2023-10-10 20:42:09 UTC
kscreen-doctor and XRandR at the time the bug happened:

Output: 444 DP-0 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable
Output: 445 DP-1 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable
Output: 446 DP-2 enabled connected priority 1 Panel Modes: 447:1920x1080@60*! Geometry: 2160,1380 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable
Output: 448 HDMI-0 disabled disconnected priority 0 HDMI Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable
Output: 449 DP-3 enabled connected priority 2 DisplayPort Modes: 450:3840x2160@60*! 451:2560x1440@120 452:1920x2160@60 453:1920x1080@120 454:1920x1080@60 455:1920x1080@60 456:1920x1080@50 457:1280x1024@75 458:1280x1024@60 459:1280x720@60 460:1280x720@50 461:1024x768@120 462:1024x768@100 463:1024x768@75 464:1024x768@70 465:1024x768@60 466:800x600@120 467:800x600@100 468:800x600@75 469:800x600@72 470:800x600@60 471:800x600@56 472:720x576@50 473:720x480@60 474:640x480@120 475:640x480@100 476:640x480@75 477:640x480@73 478:640x480@60 479:640x480@60 Geometry: 0,0 2160x3840 Scale: 1 Rotation: 2 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable
Output: 480 DP-4 disabled disconnected priority 0 DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown HDR: incapable Wide Color Gamut: incapable

❯ xrandr -q
Screen 0: minimum 8 x 8, current 4080 x 3840, maximum 16384 x 16384
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected primary 1920x1080+2160+1380 (normal left inverted right x axis y axis) 382mm x 215mm
   1920x1080     60.02*+
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-3 connected 2160x3840+0+0 left (normal left inverted right x axis y axis) 621mm x 341mm
   3840x2160     60.00*+
   2560x1440    120.00  
   1920x2160     59.99  
   1920x1080    119.88    60.00    59.94    50.00  
   1280x1024     75.02    60.02  
   1280x720      59.94    50.00  
   1024x768     119.99    99.97    75.03    70.07    60.00  
   800x600      119.97    99.66    75.00    72.19    60.32    56.25  
   720x576       50.00  
   720x480       59.94  
   640x480      119.52    99.77    75.00    72.81    59.94    59.93  
DP-4 disconnected (normal left inverted right x axis y axis)
Comment 3 Nate Graham 2024-02-05 22:16:38 UTC
Have you been able to reproduce this with the latest Plasma 6 code?
Comment 4 Bug Janitor Service 2024-02-20 03:46:11 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 5 Bug Janitor Service 2024-03-06 03:46:58 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!