[kwin] [Bug 479581] New: Disconnecting external displays leave window out of the laptop screen
https://bugs.kde.org/show_bug.cgi?id=479581 Bug ID: 479581 Summary: Disconnecting external displays leave window out of the laptop screen Classification: Plasma Product: kwin Version: unspecified Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: multi-screen Assignee: kwin-bugs-n...@kde.org Reporter: henry.hu...@gmail.com Target Milestone: --- SUMMARY My laptop connects to 2 monitors. When I unplug both, the windows on the right monitor stays out of the screen. STEPS TO REPRODUCE 1. Open windows on both external monitors, maximized. 2. Disconnect both external monitors OBSERVED RESULT The windows on the right monitor are now out of the screen EXPECTED RESULT The windows on the right monitor get moved into the laptop screen SOFTWARE/OS VERSIONS Linux/KDE Plasma: (available in About System) KDE Plasma Version: 5.27.9 KDE Frameworks Version: 5.107.0 Qt Version: 5.15.10 ADDITIONAL INFORMATION Laptop: ThinkPad X1 Carbon Gen 9 Graphics processor: Mesa Intel Xe Graphics Processor: i7-1185G7 My external monitors are 4K at left and 1440p at right. Left one is the main monitor. When plugged in, I set the laptop screen to be disabled. My laptop screen is also 4K. After unplugging, the windows on the right monitor still show up in Alt-Tab, but when you switch to them, they don't show up. I can manually move them back using window menu's 'Move' action, but that's cumbersome. I'm running Plasma with Wayland. In the past I did the same thing with X11, and this was not an issue. -- You are receiving this mail because: You are watching all bug changes.
[kwin] [Bug 479581] Disconnecting external displays leave window out of the laptop screen
https://bugs.kde.org/show_bug.cgi?id=479581 Henry Hu changed: What|Removed |Added Version|unspecified |5.27.9 -- You are receiving this mail because: You are watching all bug changes.
[frameworks-kglobalaccel] [Bug 375858] New: kglobalaccel incorrectly grabs keys
https://bugs.kde.org/show_bug.cgi?id=375858 Bug ID: 375858 Summary: kglobalaccel incorrectly grabs keys Product: frameworks-kglobalaccel Version: unspecified Platform: Archlinux Packages OS: Linux Status: UNCONFIRMED Severity: normal Priority: NOR Component: general Assignee: mgraess...@kde.org Reporter: henry.hu...@gmail.com CC: kdelibs-b...@kde.org Target Milestone: --- To use Win+Left/Right to adjust volume, I have this in .Xmodmap: keysym Left = Left Left Left XF86AudioLowerVolume keysym Right = Right Right Right XF86AudioRaiseVolume However, with this setting, kglobalaccel grabs all the combinations of modifiers with the left key. This prevents using the left/right key for normal text input. I understand that you want volume keys to work with any modifier, but kglobalaccel should only grab combinations of modifiers which includes the original modifier, i.e., you should only grab meta + left + (other modifiers). A workaround is just specifying Meta+Left/Right in Shortcuts setting, but this does not work across desktop environments. -- You are receiving this mail because: You are watching all bug changes.
[kdelibs] [Bug 168922] crash at startup when language set to Chinese
https://bugs.kde.org/show_bug.cgi?id=168922 Henry Hu changed: What|Removed |Added Resolution|WAITINGFORINFO |FIXED Status|NEEDSINFO |RESOLVED --- Comment #13 from Henry Hu --- I just checked on KDE 4.14.10 in a FreeBSD 11-STABLE VM. It works well. -- You are receiving this mail because: You are watching all bug changes.
[kwin] [Bug 384901] New: kwin_x11 crashes when switching windows
https://bugs.kde.org/show_bug.cgi?id=384901 Bug ID: 384901 Summary: kwin_x11 crashes when switching windows Product: kwin Version: 5.10.5 Platform: Archlinux Packages OS: Linux Status: UNCONFIRMED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: kwin-bugs-n...@kde.org Reporter: henry.hu...@gmail.com Target Milestone: --- Application: kwin_x11 (5.10.5) Qt Version: 5.9.1 Frameworks Version: 5.38.0 Operating System: Linux 4.12.13-1-ARCH x86_64 Distribution (Platform): Archlinux Packages -- Information about the crash: - What I was doing when the application crashed: I was switching between windows using Alt-Tab. It crashes with both OpenGL 3.1 and OpenGL 2.0. It does not crash with XRender. The setup: 1 ATI card (discrete) and 1 intel card (integrated). 3 monitors, 2 connected to the ATI card and 1 connected to the intel card. Using the modeset driver for both cards. > xrandr --listproviders Providers: number : 2 Provider 0: id: 0x86 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 4 outputs: 2 associated providers: 1 name:modesetting Provider 1: id: 0x44 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 3 associated providers: 1 name:modesetting The crash can be reproduced every time. -- Backtrace: Application: KWin (kwin_x11), signal: Segmentation fault Using host libthread_db library "/usr/lib/libthread_db.so.1". [Current thread is 1 (Thread 0x7f836f2af840 (LWP 10853))] Thread 6 (Thread 0x7f82b8b2f700 (LWP 10955)): #0 0x7f8367ddc38d in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0 #1 0x7f82ba8a9d1c in () at /usr/lib/xorg/modules/dri/r600_dri.so #2 0x7f82ba8a9c28 in () at /usr/lib/xorg/modules/dri/r600_dri.so #3 0x7f8367dd608a in start_thread () at /usr/lib/libpthread.so.0 #4 0x7f836ec3f1bf in clone () at /usr/lib/libc.so.6 Thread 5 (Thread 0x7f82b9471700 (LWP 10954)): #0 0x7f8367ddc38d in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0 #1 0x7f82ba8a9d1c in () at /usr/lib/xorg/modules/dri/r600_dri.so #2 0x7f82ba8a9c28 in () at /usr/lib/xorg/modules/dri/r600_dri.so #3 0x7f8367dd608a in start_thread () at /usr/lib/libpthread.so.0 #4 0x7f836ec3f1bf in clone () at /usr/lib/libc.so.6 Thread 4 (Thread 0x7f8345ccf700 (LWP 10882)): #0 0x7f8367ddc38d in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0 #1 0x7f836b15eb04 in () at /usr/lib/libQt5Script.so.5 #2 0x7f836b15eb49 in () at /usr/lib/libQt5Script.so.5 #3 0x7f8367dd608a in start_thread () at /usr/lib/libpthread.so.0 #4 0x7f836ec3f1bf in clone () at /usr/lib/libc.so.6 Thread 3 (Thread 0x7f83470d0700 (LWP 10881)): #0 0x7f836ec34db6 in ppoll () at /usr/lib/libc.so.6 #1 0x7f836c23eba3 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5 #2 0x7f836c24033f in QEventDispatcherUNIX::processEvents(QFlags) () at /usr/lib/libQt5Core.so.5 #3 0x7f836c1e6ffb in QEventLoop::exec(QFlags) () at /usr/lib/libQt5Core.so.5 #4 0x7f836c00040e in QThread::exec() () at /usr/lib/libQt5Core.so.5 #5 0x7f83668d33d9 in () at /usr/lib/libQt5Qml.so.5 #6 0x7f836c00515b in () at /usr/lib/libQt5Core.so.5 #7 0x7f8367dd608a in start_thread () at /usr/lib/libpthread.so.0 #8 0x7f836ec3f1bf in clone () at /usr/lib/libc.so.6 Thread 2 (Thread 0x7f834e7e0700 (LWP 10868)): #0 0x7f836ec34db6 in ppoll () at /usr/lib/libc.so.6 #1 0x7f836c23eba3 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5 #2 0x7f836c24033f in QEventDispatcherUNIX::processEvents(QFlags) () at /usr/lib/libQt5Core.so.5 #3 0x7f836c1e6ffb in QEventLoop::exec(QFlags) () at /usr/lib/libQt5Core.so.5 #4 0x7f836c00040e in QThread::exec() () at /usr/lib/libQt5Core.so.5 #5 0x7f8365a74396 in () at /usr/lib/libQt5DBus.so.5 #6 0x7f836c00515b in () at /usr/lib/libQt5Core.so.5 #7 0x7f8367dd608a in start_thread () at /usr/lib/libpthread.so.0 #8 0x7f836ec3f1bf in clone () at /usr/lib/libc.so.6 Thread 1 (Thread 0x7f836f2af840 (LWP 10853)): [KCrash Handler] #5 0x7f82babea1d4 in () at /usr/lib/xorg/modules/dri/r600_dri.so #6 0x7f82ba9ce17c in () at /usr/lib/xorg/modules/dri/r600_dri.so #7 0x7f82ba7b16e4 in () at /usr/lib/xorg/modules/dri/r600_dri.so #8 0x7f82ba775018 in () at /usr/lib/xorg/modules/dri/r600_dri.so #9 0x7f82ba77579f in () at /usr/lib/xorg/modules/dri/r600_dri.so #10 0x7f8366f82437 in QSGBatchRenderer::Renderer::renderMergedBatch(QSGBatchRenderer::Batch const*) () at /usr/lib/libQt5Quick.so.5 #11 0x7f8366f836d6 in QSGBatchRenderer::Renderer::renderBatches() () at /usr/lib/libQt5Quick.so.5 #12 0x7f8366f88f66 in QSGBatchRenderer::Renderer::render() () at /usr/lib/libQt5Quick.
[ksystemstats] [Bug 498373] querying memory/physical/buffer crashes ksystemstats on FreeBSD
https://bugs.kde.org/show_bug.cgi?id=498373 --- Comment #2 from Henry Hu --- Preparing fixes in https://invent.kde.org/henryhu/ksystemstats/-/commits/freebsd_mem The problem is that the code tried to convert a uint64_t to QVariant and sent it through dbus; however, uint64_t maps to Qt type 'ulong', which is not mapped for Qt DBus type system (https://doc.qt.io/qt-6/qdbustypesystem.html). On the other hand, we can use 'unsigned long long', which maps to Qt type 'qulonglong', which maps to DBus type 'uint64', which is what we want. -- You are receiving this mail because: You are watching all bug changes.
[ksystemstats] [Bug 497536] New: The CPU temperature shown for FreeBSD is wrong
https://bugs.kde.org/show_bug.cgi?id=497536 Bug ID: 497536 Summary: The CPU temperature shown for FreeBSD is wrong Classification: Frameworks and Libraries Product: ksystemstats Version: 6.2.3 Platform: FreeBSD Ports OS: FreeBSD Status: REPORTED Severity: normal Priority: NOR Component: General Assignee: plasma-b...@kde.org Reporter: henry.hu...@gmail.com CC: ahiems...@heimr.nl Target Milestone: --- SUMMARY The CPU temperature shown for FreeBSD is wrong. I believe there's a bug in https://github.com/KDE/ksystemstats/blob/master/plugins/cpu/freebsdcpuplugin.cpp. Specifically, unlike sysctl like 'dev.cpu.0.freq', which is a simple value (2100 for example), the temperature leaf is shown like "32.0C", so it' can't be simply parsed with SysctlSensor class. STEPS TO REPRODUCE 1. Install plasma 6 (such as 6.2.3) 2. Add 'system monitor' widget to the dock 3. Add 'Max CPU temperature' sensor to the widget OBSERVED RESULT CPU temperature shown is extra high; it's reporting 3091C now. EXPECTED RESULT A normal CPU temperature, such as 32C SOFTWARE/OS VERSIONS FreeBSD 15-CURRENT KDE Plasma Version: Plasma 6.2.3 KDE Frameworks Version: KF6 6.9.0 Qt Version: Qt6 6.7.3 ADDITIONAL INFORMATION -- You are receiving this mail because: You are watching all bug changes.
[ksystemstats] [Bug 497536] The CPU temperature shown for FreeBSD is wrong
https://bugs.kde.org/show_bug.cgi?id=497536 --- Comment #1 from Henry Hu --- I would like to try to create a patch for this, but I can't even login into invent.kde.org, although I can log into KDE Identity. -- You are receiving this mail because: You are watching all bug changes.
[ksystemstats] [Bug 497536] The CPU temperature shown for FreeBSD is wrong
https://bugs.kde.org/show_bug.cgi?id=497536 --- Comment #3 from Henry Hu --- Created a merge request (https://invent.kde.org/plasma/ksystemstats/-/merge_requests/99) for this. It turns out FreeBSD exports CPU temp as deci-Kelvin (see FreeBSD's sysctl code here: https://github.com/freebsd/freebsd-src/blob/b762b199afc6ed56ac95ca19c7fc29c2927fa85c/sbin/sysctl/sysctl.c#L1231), so 32C is exported as (32 + 273.15) * 10 = 3051.5; thus, we need to convert it back. -- You are receiving this mail because: You are watching all bug changes.
[ksystemstats] [Bug 498373] New: querying memory/physical/buffer crashes ksystemstats on FreeBSD
https://bugs.kde.org/show_bug.cgi?id=498373 Bug ID: 498373 Summary: querying memory/physical/buffer crashes ksystemstats on FreeBSD Classification: Frameworks and Libraries Product: ksystemstats Version: 6.2.4 Platform: FreeBSD Ports OS: FreeBSD Status: REPORTED Severity: normal Priority: NOR Component: General Assignee: plasma-b...@kde.org Reporter: henry.hu...@gmail.com CC: ahiems...@heimr.nl Target Milestone: --- SUMMARY querying memory/physical/buffer crashes ksystemstats on FreeBSD STEPS TO REPRODUCE 1. run "kstatsviewer memory/physical/buffer" OBSERVED RESULT ksystemstats crashes EXPECTED RESULT Return the amount of memory used for buffer (FreeBSD shows that in top). SOFTWARE/OS VERSIONS FreeBSD/KDE Plasma: FreeBSD 15-CURRENT KDE Plasma Version: 6.2.4 KDE Frameworks Version: 6.9.0 Qt Version: 6.7.3 ADDITIONAL INFORMATION I think dbus library called abort(): I see this when it crashed QDBusMarshaller: type 'ulong' (35) is not registered with D-Bus. Use qDBusRegisterMetaType to register it dbus[48596]: Array or variant type requires that type variant be written, but end_struct was written. The overall signature expected here was 'a(sv)' and we are on byte 3 of that signature. I'll try to debug it. Here's the stack trace: #7 thr_kill () at thr_kill.S:4 #8 0x00082c820af4 in __raise (s=s@entry=6) at /usr/src/lib/libc/gen/raise.c:48 #9 0x00082c8d56d9 in abort () at /usr/src/lib/libc/stdlib/abort.c:61 #10 0x00083114c72c in _dbus_abort () from /usr/local/lib/libdbus-1.so.3 #11 0x00083114101c in _dbus_warn_check_failed () from /usr/local/lib/libdbus-1.so.3 #12 0x00083112c21a in ?? () from /usr/local/lib/libdbus-1.so.3 #13 0x00083112c11d in _dbus_type_writer_unrecurse () from /usr/local/lib/libdbus-1.so.3 #14 0x000831131989 in dbus_message_iter_close_container () from /usr/local/lib/libdbus-1.so.3 #15 0x00082370a916 in ?? () from /usr/local/lib/qt6/libQt6DBus.so.6 #16 0x00082370a9ae in ?? () from /usr/local/lib/qt6/libQt6DBus.so.6 #17 0x000823708534 in ?? () from /usr/local/lib/qt6/libQt6DBus.so.6 #18 0x00082373f1db in ?? () from /usr/local/lib/qt6/libQt6DBus.so.6 #19 0x00082371f0f9 in ?? () from /usr/local/lib/qt6/libQt6DBus.so.6 #20 0x0023b886 in Client::sendValues (this=0x2bc99e260450, entries=...) at /home/henryhu/proj/ksystemstats/src/client.cpp:91 #21 0x0023b5b0 in Client::sendFrame (this=0x2bc99e260450) at /home/henryhu/proj/ksystemstats/src/client.cpp:76 #22 0x0021d080 in Daemon::sendFrame (this=0x820527680) at /home/henryhu/proj/ksystemstats/src/daemon.cpp:269 #23 0x00233e9d in QtPrivate::FunctorCall, QtPrivate::List<>, void, void (Daemon::*)()>::call(void (Daemon::*)(), Daemon*, void**) (f=(void (Daemon::*)(Daemon * const)) 0x21cfb0 , o=0x820527680, arg=0x8205271b0) at /usr/local/include/qt6/QtCore/qobjectdefs_impl.h:145 #24 0x00233dfd in QtPrivate::FunctionPointer::call, void>(void (Daemon::*)(), Daemon*, void**) (f=(void (Daemon::*)(Daemon * const)) 0x21cfb0 , o=0x820527680, arg=0x8205271b0) at /usr/local/include/qt6/QtCore/qobjectdefs_impl.h:182 #25 0x00233d26 in QtPrivate::QCallableObject, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x2bc99e21afc0, r=0x820527680, a=0x8205271b0, ret=0x0) at /usr/local/include/qt6/QtCore/qobjectdefs_impl.h:553 #26 0x00082a546676 in ?? () from /usr/local/lib/qt6/libQt6Core.so.6 #27 0x00082a557566 in QTimer::timerEvent(QTimerEvent*) () from /usr/local/lib/qt6/libQt6Core.so.6 #28 0x00082a53a394 in QObject::event(QEvent*) () from /usr/local/lib/qt6/libQt6Core.so.6 #29 0x00082a4f1864 in QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/local/lib/qt6/libQt6Core.so.6 #30 0x00082a4f12de in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/local/lib/qt6/libQt6Core.so.6 #31 0x00082a67d15a in QTimerInfoList::activateTimers() () from /usr/local/lib/qt6/libQt6Core.so.6 #32 0x00082a76a09d in ?? () from /usr/local/lib/qt6/libQt6Core.so.6 #33 0x000832e9534b in ?? () from /usr/local/lib/libglib-2.0.so.0 #34 0x000832e95716 in ?? () from /usr/local/lib/libglib-2.0.so.0 #35 0x000832e957b6 in g_main_context_iteration () from /usr/local/lib/libglib-2.0.so.0 #36 0x00082a76979e in QEventDispatcherGlib::processEvents(QFlags) () from /usr/local/lib/qt6/libQt6Core.so.6 #37 0x00082a4fac16 in QEventLoop::exec(QFlags) () from /usr/local/lib/qt6/libQt6Core.so.6 #38 0x00082a4f1ac4 in QCoreApplication::exec() () from /usr/local/lib/qt6/libQt6Core.so.6 #39 0x0021c58b in main (argc=1, argv=0x8205279f0) at /home/henryhu/proj/ksystemstats/src/main.cpp:39 [Inferior 1 (process 16823) detached] -- You are receiving this mail because: You are watching all bug changes.
[ksystemstats] [Bug 498373] querying memory/physical/buffer crashes ksystemstats on FreeBSD
https://bugs.kde.org/show_bug.cgi?id=498373 --- Comment #1 from Henry Hu --- I think the 'application' memory is also wrong. This is traced to an integer overflow: it's computed with (inactive pages + active pages) * page_size; page counts are in uint32_t, but we need to do the computation in uint64_t at least. -- You are receiving this mail because: You are watching all bug changes.
[dolphin] [Bug 361105] Dolphin Crash After Changing Directory
https://bugs.kde.org/show_bug.cgi?id=361105 Henry Hu changed: What|Removed |Added CC||henry.hu...@gmail.com --- Comment #1 from Henry Hu --- This also happens for me, with Qt 5.5.1, dolphin 16.04.1, kde frameworks 5.22.0. I've investigated the bug a little. The direct cause of the crash is calling FD_SET with a large fd (>FD_SETSIZE, which defaults to 1024). This causes an out-of-bound access and modifies data on the stack, which leads to the crash. According to the man page, this behavior is undefined. There are 2 places. First in QProcess (qprocess_unix.cpp, QProcessPrivate::waitForFinished). Another in QNativeSocketEngine (qnativesocketengine_unix.cpp, QNativeSocketEngine::nativeSelect). Both places can have out-of-bound access. The real reason is that dolphin is using large number of file descriptors. I tried to increase FD_SETSIZE to 4096, but after some extensive usage of dolphin, the file descriptor count still grows past it. In Qt 5.7 the select is replaced with poll, which should fix this problem. But the real problem is still there, dolphin should not open large number of files at the same time. -- You are receiving this mail because: You are watching all bug changes.