Bug 492273 - Assertion fail on X11 after connecting external monitor in "switch to external" mode
Summary: Assertion fail on X11 after connecting external monitor in "switch to externa...
Status: RESOLVED DUPLICATE of bug 484687
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 6.1.4
Platform: Neon Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-08-27 14:53 UTC by Helga
Modified: 2024-08-27 18:46 UTC (History)
1 user (show)

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


Attachments
Full backtrace (114.57 KB, text/plain)
2024-08-27 14:57 UTC, Helga
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Helga 2024-08-27 14:53:39 UTC
Qt Version: 6.7.2
Frameworks Version: 6.5.0
Operating System: Linux 6.8.0-40-generic x86_64
Windowing System: X11
Distribution: KDE neon 6.1
DrKonqi: 6.1.4 [CoredumpBackend]

Plasmashell SIGABRTs after connecting an external monitor. This might be an issue specific to the monitor mode where desktop switches to external monitor while turning the internal one off. Might be related to: https://bugs.kde.org/show_bug.cgi?id=484687

Relevant journalctl assert tidbit:

plasmashell[53747]: ASSERT failure in void ScreenPool::handleScreenRemoved(QScreen*): "ScreenPool ( 0x579eb108ada0 ) Internal state:
                                              Screen Order:         QList(QScreen(0x711ce8082dd0, name="eDP-1")) 
                                              "Fake" screens:         QSet() 
                                              Redundant screens covered by other ones:         QHash() 
                                              All screens, ordered by size:         QList(QScreen(0x711ce8082dd0, name="eDP-1")) 
                                              All screen that QGuiApplication knows:         QList(QScreen(0x711ce8082dd0, name="eDP-1")) 
                                              Current screen: QScreen(0x711ce800b000, name=":0.0") ", file ./shell/screenpool.cpp, line 261

Relevant bit from the crash backtrace: 
Thread 1 (Thread 0x711cf7cd4ac0 (LWP 53747)):
[KCrash Handler]
#6  __pthread_kill_implementation (no_tid=0, signo=6, threadid=124369230449344) at ./nptl/pthread_kill.c:44
#7  __pthread_kill_internal (signo=6, threadid=124369230449344) at ./nptl/pthread_kill.c:78
#8  __GI___pthread_kill (threadid=124369230449344, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#9  0x0000711cfd042476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#10 0x0000711cfd0287f3 in __GI_abort () at ./stdlib/abort.c:79
#11 0x0000711cfdcfdbca in qAbort () at ./src/corelib/global/qglobal.cpp:161
#12 0x0000711cfdcf875a in qt_message_fatal<QString&> (message=..., context=...) at ./src/corelib/global/qlogging.cpp:2025
#13 qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=<optimized out>, ap=ap@entry=0x7ffe03169510) at ./src/corelib/global/qlogging.cpp:374
#14 0x0000711cfdcfe56d in QMessageLogger::fatal (this=<optimized out>, msg=<optimized out>) at ./src/corelib/global/qlogging.cpp:889
#15 0x0000711cfdcc2ce2 in qt_assert_x (where=where@entry=0x579eafb66570 "void ScreenPool::handleScreenRemoved(QScreen*)", what=<optimized out>, file=file@entry=0x579eafb6670f "./shell/screenpool.cpp", line=line@entry=261) at ./src/corelib/global/qassert.cpp:77
#16 0x0000579eafaad54b in ScreenPool::handleScreenRemoved (this=<optimized out>, screen=<optimized out>) at ./shell/screenpool.cpp:261
Comment 1 Helga 2024-08-27 14:57:26 UTC
Created attachment 173004 [details]
Full backtrace

I can't paste the backtrace into a comment, so it's attached instead
Comment 2 duha.bugs 2024-08-27 18:46:07 UTC

*** This bug has been marked as a duplicate of bug 484687 ***