Summary: | KWin crash when packing windows to the left | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Martin Nilsson <ibbles> |
Component: | general | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | Keywords: | drkonqi |
Priority: | NOR | ||
Version: | 4.11.2 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/kde-workspace/52629d97c1648f6ea0190c81b14f7d9f0823f138 | Version Fixed In: | 4.11.4 |
Sentry Crash Report: |
Description
Martin Nilsson
2013-11-24 12:14:15 UTC
There's quite some oddity here. 1st, the backtrace ends in window packing - not quick tiling 2nd, unless Ubuntu is off by few lines, the crash occurs in 668 void Workspace::slotWindowPackLeft() 669 { 670 if (active_client && active_client->isMovable()) 671 active_client->screen(); 672 active_client->packTo(packPositionLeft(active_client, active_client->geometry().left(), true), 673 active_client->y()); 674 } So it seems to happen on resolution of "active_client->y()", but "active_client->geometry().left()" had been resolved before. NEVERTHELESS: there's a bug! (apparently by merge? - i hope so ;-) 671 active_client->screen(); should not be there and detaches the active_client test from "active_client->packTo" I assume that's the cause for the segfault here. I altered the subject. If you actually get crashes on quicktiling (and esp. on quick tiling to the right), please file them again - but i rather assume you assigned the wrong shortcut? You are probably right about the tile vs. pack. I use them both frequently and for a vertically maximized single window they do pretty much the same thing. Tested a bit more and the crash happens iff I pack a window against the desktop edge. Left or right doesn't matter. I haven't tried up or down, see next paragraph. In contrast, if the packed window hits anther window instead of the desktop edge then no crash occurs. I just got a decoration-less dialog box telling me that KDE is unstable and was asked to to choose another window manager from a dropdown list only including KDE. I have since then lost all my panels and widgets from the crashing monitor. Guess KDE didn't come back any more. Haven't gotten the crash report since no matter how much I pack and tile windows on the other monitor, which still works just fine. Git commit 52629d97c1648f6ea0190c81b14f7d9f0823f138 by Thomas Lübking. Committed on 24/11/2013 at 13:21. Pushed by luebking into branch 'KDE/4.11'. remove false noop breaking branches FIXED-IN: 4.11.4 M +0 -1 kwin/placement.cpp http://commits.kde.org/kde-workspace/52629d97c1648f6ea0190c81b14f7d9f0823f138 (In reply to comment #2) > Tested a bit more and the crash happens iff I pack a window against the > desktop edge. Left or right doesn't matter. Ok, that's a different issue then - i cannot see why pack to right should crash (at all) Can you please pack to right and post/attach the resulting backtrace? (There might be some further oddity about the active window because of the multihead situation) > including KDE. I have since then lost all my panels and widgets from the > crashing monitor. Means that plasma-desktop on that head crashed as well. Sth. is fishy here. > crash report since no matter how much I pack and tile windows on the other > monitor, which still works just fine. Humm? Global shortcuts are supposed to only work on _one_ screen... (kglobalaccel operates on only one screen) (In reply to comment #4) > (In reply to comment #2) > > Tested a bit more and the crash happens iff I pack a window against the > > desktop edge. Left or right doesn't matter. > Ok, that's a different issue then - i cannot see why pack to right should > crash (at all) You're right. There is a some delay between issuing the pack command and the crash report showing. This made me believe that the second pack of a PackLeft-PackRight pair was the cause when it really was the first one. Tiling never causes the crash. I attempted to experiment with up and down packing as well, but now the panels have gone missing again and the crash no longer happens no matter what I do. I guess I'll have to reboot to get them back, both the panels and the crashes. (In reply to comment #4) > (In reply to comment #2) > > including KDE. I have since then lost all my panels and widgets from the > > crashing monitor. > Means that plasma-desktop on that head crashed as well. > Sth. is fishy here. Is there a way to restart it, just as seems to happen automatically after the first five or so crashes? I can still right-click the in the monitor with the missing panels and get the KDE menu with "Add widgets", "Leave...", "Run command" and such, but choosing "Run command" opens the runner text field on the monitor with the working desktop. Any applications I launch is opened on the working desktop. (In reply to comment #4) > (In reply to comment #2) > > crash report since no matter how much I pack and tile windows on the other > > monitor, which still works just fine. > Humm? Global shortcuts are supposed to only work on _one_ screen... > (kglobalaccel operates on only one screen) That explains why my shortcuts doesn't always work. I have a primary monitor (left) where I do most of my work. This monitor is identified as Monitor 1 in amdcccle and is attached to the GPU passed to the "aticonfig --initial --adapter=1" command I issued after installing fglrx. The secondary monitor (right) was enabled later using amdcccle. Thus, per your comment above, global shortcuts works only from the primary (left) monitor. Issuing a Pack Left on the left monitor causes a crash report for KWin to open on the right monitor. All windows and panels and such continue undisturbed on the left monitor. I do not know if packing windows on the right monitor would cause the left KWin to crash. Hard to test since global shortcuts doesn't work there and I don't know how else to issue a pack command. It seems then that everything has been sorted out, despite my inaccurate statements in the beginning. Are there any further questions I can answer? I'm using Kubuntu 13.10. Can I expect the update for this to show up in the regular updates, or will I have to wait for 14.04? (In reply to comment #5) > PackLeft-PackRight pair was the cause when it really was the first one. > Tiling never causes the crash. Very good (for that means the bug is fixed ;-) > I can still right-click the in the monitor > with the missing panels and get the KDE menu with "Add widgets", "Leave...", > "Run command" and such, but choosing "Run command" opens the runner text > field on the monitor with the working desktop. Any applications I launch is > opened on the working desktop. On the zaphod mode (multihead, independent X11 display - what you use atm.) clients cannot pass from one head to the other and without a special request (eg. "--display :1.0") applications will run on the head they're launched from. However, plasma-desktop apparently didn't crash on that head, but simply moves the panels wherever. You got to file a bug against plasma-desktop, but notice that the zaphod mode is not very well supported. So in general i'd suggest on focusing why you cannot login with an xrandr multiscreen setup - might be a krandr (legacy) ./. kscreen2 (config daemon to use) issue. Check installed packages and in doubt uninstall everything that sounds like "krandr". > It seems then that everything has been sorted out, despite my inaccurate > statements in the beginning. Are there any further questions I can answer? No, not really. Thanks for the kind offer - i'll come back on it in case =) > I'm using Kubuntu 13.10. Can I expect the update for this to show up in the > regular updates, or will I have to wait for 14.04? I've no idea about ubuntus update policy, but the patch is in a minor release, so i'd expect it to be in regular updates. |