Bug 184062

Summary: Places model (e.g. Kickoff) hangs when network/hotplug device not available
Product: [Plasma] plasma4 Reporter: Milko Krachounov <exabyte>
Component: widget-kickoffAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: major CC: adaptee, administrator, alberist, alpha_one_x86, amhrasmussen, andresbajotierra, andrew.myers, arthur, aseigo, aspotashev, asraniel, atalanttore, bjoern, bugs.kde.org3, bugs5.kde.org, denis.k1985, djarvie, douphi+bugs.kde.org, dpbasti, dplater, faure, francis.mestdagh, giaso, jan.mussche, janowski.m, jirik, jree2kx, jreznik, kallu_be, laurent, lem8r.ka11a, m2k.networx, mail-kdebugs, mail, mehulrajput, michael, neuro, octavsly, pcgscrap, pietranera+kdebugs, plafe, post, raffaelesgarro, ralf.habacker, rdieter, rulatir, simonandric5, software, squan, sven.burmeister, tblu, tilman.vogel, ultrabla, vincent.rubiolo
Priority: NOR    
Version: 4.9.5   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: cd ~/path/to/source/of/kdebase && patch -p0<bug184062.diff && make install
updated patch
Back trace from kickoff
dolphin_bt.txt
Complete strace output
Vincent's system tray spurious notifications
Debug
plasma-desktop backtrace
strace of hanging plasma with recent kde

Description Milko Krachounov 2009-02-11 22:32:39 UTC
Version:            (using KDE 4.2.0)
Compiler:          GCC 4.3.1 
OS:                Linux
Installed from:    Gentoo Packages

How I manage to reproduce this on my machine: Use kickoff menu, have a NFS mount (in my case, mounted before KDE started), unplug the network cable and wait. Plasma hangs after a few seconds-minutes and comes back to life when I plug my network cable back. Also, adding the kickoff plugin when the network cable is unplugged results in a immediate crash.

I ran strace on plasma and the result when the hang appears is this:

lstat("/dev/md1", {st_mode=S_IFBLK|0640, st_rdev=makedev(9, 1), ...}) = 0
lstat("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/dev/md2", {st_mode=S_IFBLK|0640, st_rdev=makedev(9, 2), ...}) = 0
lstat("/volatile", {st_mode=S_IFDIR|0755, st_size=56, ...}) = 0
lstat("/dev/md0", {st_mode=S_IFBLK|0640, st_rdev=makedev(9, 0), ...}) = 0
lstat("/boot", {st_mode=S_IFDIR|0755, st_size=1024, ...}) = 0
lstat("firebird:/home/ftp/pub", 0x7fffda66dec0) = -1 ENOENT (No such file or directory)
lstat("/home/ftp/pub",  <unfinished ...>

So it is obviosly trying to lstat all devices *and* mountpoints. This leads to hangs, and I believe stating the nfs path is incorrect behaviour either way.

Of course, such hangs in apps are expected (and wanted) when nfs goes away, but having the whole plasma hang is quite an unpleasant side effect, and likely possible to fix. :)
Comment 1 francis 2009-02-27 10:02:34 UTC
*** Bug 185552 has been marked as a duplicate of this bug. ***
Comment 2 Jiri Kanicky 2009-05-19 01:43:58 UTC
I am confirming this. It is really annoying. This should not happen. KDE components should not have dependency on components like NFS.

Can someone please fix it urgently.

Environment:
Debian Unstable, KDE 4.2.2

Problem:
When NFS mounted and unplug cable plasma process reports "disk sleep". Any part of Plasma is not responsive.
Comment 3 arkadi.shishlov 2009-05-26 23:01:58 UTC
Same with CIFS mounts on Fedora:
Plasma freezes when network mount is unavailable
https://bugzilla.redhat.com/show_bug.cgi?id=491211
Comment 4 Dario Andres 2009-05-29 16:49:30 UTC
Have you tried removing the Kickoff menu and reproduce the NFS disconnection to test if it is indeed related to Kickoff or to another component? (I'm also thinking about the Device Manager; or the base lib for this: Solid)
Thanks
Comment 5 Jiri Kanicky 2009-05-30 08:12:31 UTC
If you umount the NFS export (umount /mnt/data -l) then everything becomes responsive again in about 1 minute.
Comment 6 Milko Krachounov 2009-05-30 14:20:00 UTC
(In reply to comment #4)
> Have you tried removing the Kickoff menu and reproduce the NFS disconnection to
> test if it is indeed related to Kickoff or to another component? (I'm also
> thinking about the Device Manager; or the base lib for this: Solid)
> Thanks

Yes, when there is no Kickoff menu the NFS disconnection doesn't lead to Plasma hang. There was some strange behaviour in some gadgets and apps, but I can't recall what it was, but the behaviour described in the report happens due to Kickoff. I don't claim that the root cause is Kickoff's code, though. But the "Computer" section in the menu is what most probably triggers it.

To be clear what I mean by "some strange behaviour" above: Trying to open a folder containing a disconnected NFS mount with Dolphin is an example. Dolphin is responsive, but huge part of the files and folders in the folder simply aren't shown until NFS comes back.
Comment 7 Dario Andres 2009-05-30 16:42:58 UTC
Thanks for the tests.
Comment 8 Michal Witkowski 2009-06-20 18:47:20 UTC
Yes i can confirm the same behaviour with Arch Linux KDE 4.2.4.

I've got two NFS shares mounted upon connecting to my home wireless server. Whenever I turn my wifi-switch off, plasma hangs. This doesn't happen when NFS shares are unmounted.

I've also tested the case with a cable connection. Same story: when NFS shares are mounted, unplugging the cable causes plasma to freeze. With no NFS shares, everything works alright.
Comment 9 Dario Andres 2009-08-02 22:42:41 UTC
*** Bug 202242 has been marked as a duplicate of this bug. ***
Comment 10 Aaron J. Seigo 2009-08-03 08:53:08 UTC
*** Bug 201897 has been marked as a duplicate of this bug. ***
Comment 11 Dario Andres 2009-08-03 14:44:09 UTC
*** Bug 202271 has been marked as a duplicate of this bug. ***
Comment 12 Michal Witkowski 2009-08-30 18:34:58 UTC
The bug is very much alive in KDE 4.3.0.

In can be reproduces exactly as before (see comment #8).
Comment 13 Jithin Emmanuel 2009-09-04 18:48:08 UTC
Why is this bug still unconfirmed? I am having this issue every time I plug my usb drive.
Comment 14 giaso 2009-09-06 12:11:39 UTC
I can confirm the bug is still alive in KDE 4.3.1 on kubuntu jaunty packages. I can reproduce it by the following steps (using kickoff as launcher): 
- Login as user A
- Let network manager put up wireless connection and mount nfs share
- Log out
- Log in as user B
- Plasma hangs on splash
Comment 15 Alexander 2009-09-15 13:26:31 UTC
*** This bug has been confirmed by popular vote. ***
Comment 16 Jithin Emmanuel 2009-09-15 14:27:08 UTC
The issue I had I think is kubuntu specific one. I moved to arch linux. Now its plasma is not freezing on mounting usb drive.
Comment 17 Jithin Emmanuel 2009-10-13 17:00:35 UTC
I can confirm that this issue with usb drive freezing plasma is because of 2.6.31 kernel. Noticed when 2.6.31 kernel was available in arch. Downgrading to 2.6.30 kernel fixed the issue.

Is the problem with kde or kernel. Can any kde devs confirm?
Comment 18 KW 2009-10-19 14:27:09 UTC
This bug still exists in kdebase-workspace-4.3.1-9.fc10.i386 and is simple to reproduce, see following link below for steps. And https://bugzilla.redhat.com/show_bug.cgi?id=529373 shows another older report of same problem linked to it.
Comment 19 Sebastian Sauer 2009-10-22 02:06:23 UTC
Created attachment 37728 [details]
cd ~/path/to/source/of/kdebase && patch -p0<bug184062.diff && make install

Is the hang gone with the attached patch bug184062.diff? Best way to test that is to have only the kickoff applet running and no other applet.

Background; KDirWatch blocks :-/
Comment 20 Sebastian Sauer 2009-10-22 02:47:47 UTC
Created attachment 37729 [details]
updated patch
Comment 21 Jithin Emmanuel 2009-11-07 15:48:33 UTC
Without the patch and kernel 2.6.32-rc6 fixes the issue for me.
Comment 22 Beat Wolf 2009-12-07 15:17:02 UTC
what is the status of this bug? what about the patch? can we get this fixed for 4.4 final? thank you

(if the submitter of the patch does not have an svn account, consider uploading the patch to reviewboard.kde.org)
Comment 23 Jiri Kanicky 2009-12-08 04:55:54 UTC
Can anyone increase this as the HIGH priority to fix.
All my notebooks have got same issue. This is really annoying issue.

More annoying is that nobody is trying to fix it. This issue goes from 4.1 release.
Comment 24 Beat Wolf 2009-12-08 10:41:39 UTC
problem is that there is no real maintainer for kickoff currently.. but i increased the priority
Comment 25 Beat Wolf 2009-12-08 10:49:20 UTC
i forgot to mention, please test the proposed patch, i can commit it if needed, but somebody has to test it.
Comment 26 Beat Wolf 2009-12-16 12:19:29 UTC
if anybody cares about this patch, it has to be tested and submitted to the right people. please contact the plasma developers in IRC or on the plasma-devel mailing list. thank you
Comment 27 Sebastian Kügler 2009-12-16 13:13:51 UTC
The patch looks wrong, porting from KDirWatch to QFileSystemWatcher is the wrong thing to do. KDirWatcher should simply not block, and that's the real cause of the problem.

Now the question is "where does it block (when it shouldn't)?". Anyone who can reproduce the problem, please attach a debugger to your Plasma and tell us where it blocks. Those that have reported crashers, please supply a backtrace.

The s/KDirWatch/QFileSystemWatcher workaround is unlikely to go in like this.
Comment 28 BRULE Herman 2009-12-19 17:32:18 UTC
I thinks I have the same bug here.
Comment 29 Aaron J. Seigo 2010-05-11 05:58:05 UTC
*** Bug 181323 has been marked as a duplicate of this bug. ***
Comment 30 Beat Wolf 2010-05-18 10:43:45 UTC
Any work beeing done on this bug? having a patch (even if it is wrong) at least helps to identify the problem.
Comment 31 David Faure 2010-05-20 18:03:43 UTC
Well, the backtrace requested in comment #27 would be much more useful than a bad patch (we use KDirWatch everywhere else in KDE, so the problem would just move to somewhere else).

But this is really odd, the patch is about the RecentDocuments directory which is something like $KDEHOME/share/apps/RecentDocuments/, and which contains only desktop files, this should be totally unrelated to NFS mounts.
Comment 32 Aaron J. Seigo 2010-05-22 01:11:30 UTC
*** Bug 194196 has been marked as a duplicate of this bug. ***
Comment 33 Aaron J. Seigo 2010-05-22 01:11:34 UTC
*** Bug 197962 has been marked as a duplicate of this bug. ***
Comment 34 Aaron J. Seigo 2010-05-22 01:11:40 UTC
*** Bug 235730 has been marked as a duplicate of this bug. ***
Comment 35 Aaron J. Seigo 2010-05-22 01:11:43 UTC
*** Bug 236907 has been marked as a duplicate of this bug. ***
Comment 36 Sebastian Turzański 2010-05-22 08:38:04 UTC
As aaron already connected my bug report with this one I'd just like to add that the same kind of behaviour happens to me even though I don't use NFS neither samba disks mapped.
Comment 37 squan 2010-07-05 09:35:06 UTC
If I shut down an autofs mounted device while a konsole sessions current working directory is still set on this device I experience freeze of all konsole instances.
Is this the same bug or shall I file a new one?
Comment 38 Raffaele 2010-09-01 18:28:53 UTC
I'm on 4.5 and suffer from this bug, but it's a bit different. I use an USB wireless dongle to connect to my router, but some days the signal is very very weak and connection is dropped or is near to 0 (zero). Every time network is lost I get plasma-desktop freezes. I'm sure it's only a plasma bug because other apps work, either KDE apps (kate) or GNOME apps (gedit), Qt and gtk ones (amarok and firefox). Even KRunner starts and runs normally if I type Alt+F2, but plasma-desktop becomes unresponsive: the desktop doesn't respond to mouse clicks, neither the panel. Also, the UI doesn't get updated (eg when I hover workspace or taskbar or kickoff icon). I don't know how to attach information, but I see this bug is 2 years old and since it's very very annoying I think you should set its priority to HIGH and fix it as soon as possible, because it makes it impossible to use the box 'til the network is back
I love KDE but this bug makes me waste hours, waiting for the taskbar to get my click and change the application in foreground, just to do a copy and paste.
Please, fix it
Comment 39 Raffaele 2010-09-04 18:51:25 UTC
http://pastebin.com/GPAQFCmZ

Backtrace of plasma-desktop when freezes
Comment 40 Aaron J. Seigo 2010-09-04 19:47:06 UTC
Raffaele: your backtrace points to a different issue, in particular a python based weather applet that is doing its own network fetching; if you remove that python weather widget, do things go back to normal?
Comment 41 Raffaele 2010-09-04 20:07:31 UTC
I think they were related problem because I didn't think that a misimplemented script could lead to whole plasma freezes :/
Anyway I have removed the plasmoid and I am seeing what happens with normal usage
Comment 42 Björn Ruberg 2010-09-13 22:35:10 UTC
*** Bug 161205 has been marked as a duplicate of this bug. ***
Comment 43 Björn Ruberg 2010-09-16 00:23:40 UTC
I'm trying to investigate this and get a backtrace - or maybe fix it. But I cannot reproduce the problem.
I see a short block of plasma when an USB device is attached. But this was too short for me to find a blocking code.

I'm trying to reproduce the nfs problems in KDE 4.4 and 4.6 trunk. But I wasn't lucky. I mounted an nfs folder of another laptop - killed its wifi - and plasma was running flawlessly. 

The only block I can observe is dolphin which blocks if I add an nfs folder to its places. Can anyone help me finding a way to reproduce this?
Comment 44 BRULE Herman 2010-09-16 08:40:28 UTC
You can try freeze udev process via gdb attach, seem work here.
Comment 45 Björn Ruberg 2010-09-16 15:13:38 UTC
No - no luck. Can it be that hard to freeze plasma? :)
Comment 46 Dave Plater 2011-02-06 15:22:23 UTC
This bug is still here in 4.6, took a lot to track down until somebody on the opensuse-kde list pointed me here.
In my case the vista machine I've mounted cifs shares from shuts down and the kick off menu becomes unusable. I click, it opens but from then on the panel and all it's widgets freeze, after about 30 secs the kickoff retracts and the panel becomes usable but I can only run apps from the "run command" or command line. The kick off menu is unusable until I unmount the shares as root.
Anything I can gdb?
This should be easily reproducible though.
Comment 47 Denis Kniazhev 2011-05-28 23:21:49 UTC
I use Kubuntu 11.04 64-bit with KDE 4.6.2, and this bug is 100% reproducible for me. I use small 3-d party tool to connect to l2tp VPN (http://code.google.com/p/vpnpptp/). Whenever the VPN drops, or when I hit "Disconnect" button, plasma freezes hardly - no application launching, no widgets activity. I still can use ALT+F2 to get Konsole (Dolphin can be started too, but is very slow) to do "sudo reboot" - this is the only way I'm aware of to get back to working machine. Command "kbuildsycoca4 && pkill plasma && kstart plasma-desktop" doesn't work for me - plasma gets killed but fails to start.
I should mention that I have experienced this same bug when disconnecting my 3G modem. I have seen this 3 or 4 times, but it isn't as stable as with l2tp vpn.
As someone suggested, I've ran
"sudo gdb --pid `pidof plasma-desktop`"
, then 'freezed' plasma, then ran
"bt"
I'm not sure this is the right way of dyagnozing, but here's what I've got:

#0  0x00007f4a605ecf03 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f4a54fcf104 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f4a54fcf639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f4a5d7fb3ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f4a5cc38dfe in ?? () from /usr/lib/libQtGui.so.4
#5  0x00007f4a5d7cf882 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f4a5d7cfabc in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0x00007f4a5d7d3ecb in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#8  0x00007f4a608e6897 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_plasma-desktop.so
#9  0x00007f4a60532eff in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#10 0x0000000000400669 in _start ()


If I can provide any more detailed stacktraces, please let me know - this bug is really annoying and I will provide any help with it. Unfortunatly I'm java programmer, not C++, otherwise I would volunteer with the fix.
Comment 48 Philippe 2011-08-11 09:26:29 UTC
I have the same "bug" when I use the "Application Launcher Menu" (probably named Kickoff if I look a the BT) and within Dolphin.

I think is not fixed in 2.6.32+ like Emmaneul is telling 
------- Comment #21 From Jithin Emmanuel 2009-11-07 15:48:33 (-) [reply] -------
Without the patch and kernel 2.6.32-rc6 fixes the issue for me.


I use kernel 2.6.38 and still hang


I use a cifs share over VPN.

$ mount
...
//apodc-02/utilisateurs/ on /mnt/smb/intranet type cifs (rw,mand)
...

If the remote server is unavailable or the VPN is down or i lost the network link,
the "Application Launcher Menu Settings" freeze on fisrt access to "K" start menu for 300seconds


I must wait 300 sec for the kernel disable the cifs share :
Aug 10 17:05:08 PC-TEC-12 kernel: [26029.864385] CIFS VFS: Server apodc-02 has not responded in 300 seconds. Reconnecting...

"umount -f" failed

~# umount -f /mnt/smb/intranet
umount2: Device or resource busy
umount: /mnt/smb/intranet: device is busy.
        (In some cases useful info about processes that use                                                                                                                         
         the device is found by lsof(8) or fuser(1))                                                                                                                                
umount2: Device or resource busy        


Reproductible 100%

Distibution Kubuntu fresh new install natty 11.04 amd64
dpkg -l | grep plasma-desktop
ii  plasma-desktop                       4:4.6.2a-0ubuntu5.1

Package up-to-date
apt-cache policy plasma-desktop
plasma-desktop:
  Installé : 4:4.6.2a-0ubuntu5.1
  Candidat : 4:4.6.2a-0ubuntu5.1
 Table de version :
 *** 4:4.6.2a-0ubuntu5.1 0
        500 http://fr.archive.ubuntu.com/ubuntu/ natty-updates/main amd64 Packages
        100 /var/lib/dpkg/status

dpkg -l | grep dolphin
ii  dolphin                              4:4.6.2-0ubuntu1
root@PC-TEC-12:~# apt-cache policy dolphin
dolphin:
  Installé : 4:4.6.2-0ubuntu1
  Candidat : 4:4.6.2-0ubuntu1
 Table de version :
 *** 4:4.6.2-0ubuntu1 0
        500 http://fr.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
        100 /var/lib/dpkg/status


# uname -a
Linux PC-TEC-12 2.6.38-10-generic #46-Ubuntu SMP Tue Jun 28 15:07:17 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

Workaround: 
If I switch "Application Launcher Menu Settings" to old style menu it not hang anymore:
-> unlock widget
  -> right click on "K" start menu -> "Switch to Classic Menu Style"

gdb hand for a while when attaching to process: ( 300sec ) .. then I can make a BT for plasma or dolphin .. see attached : kickoff_bt.txt and kickoff_bt.txt
Maybe it's to late because of un-hang after 300sec .. 


Same behaviour with Dolphin when the share is unavailable, Dolphin hang for 300secs 

Dolphin suffer from the same hang while disconnecting network because dolphin list all local disks and shares mounted ..
Dolphin hang until kernel disconnect the unavailable share  :
CIFS VFS: Server apodc-02 has not responded in 300 seconds. Reconnecting...
Comment 49 Philippe 2011-08-11 09:27:12 UTC
Created attachment 62744 [details]
Back trace from kickoff
Comment 50 Philippe 2011-08-11 09:27:47 UTC
Created attachment 62745 [details]
dolphin_bt.txt
Comment 51 hyper_ch 2011-10-29 09:59:24 UTC
I experience the same but it isn't just limited to nfs/cifs... also sshfs mounts that can't be accessed because of network problems. Plasma / Dolphin also stalls there for some time.
Comment 52 hyper_ch 2011-10-29 10:00:22 UTC
Btw: Using Kubuntu Oneiric 64bit with Kubuntu Team PPA

Platform Version 4.7.2 (4.7.2)
Comment 53 Aaron J. Seigo 2011-12-03 19:49:42 UTC
the kickoff issue in comment #46 and #50 is something different, and i fixed it today by putting the disk stating code in a thread so it won't block. (worst case scenario: the thread just block indefinitely). dolphin should do similarly.

the KDirLister freezing issue is the real remaining issue here and until someone can provide a backtrace (as Phillippe did in comment #50 for the kickoff issue: thanks!) it will be very hard to know what to do with this.
Comment 54 Lamarque V. Souza 2012-01-27 10:39:18 UTC
*** Bug 292536 has been marked as a duplicate of this bug. ***
Comment 55 DeMus 2012-05-09 04:37:00 UTC
Now it is May 2012 and this bug is still there. I use Kubuntu 12.04 with KDE 4.8.2 and kernel 3.2.0 and still experience the same. Why isn't this a major priority for the software guys (and girls)? I mean, hanging systems are not very user-friendly, especially when they hang since at least 2009 already.
Please fix this issue a.s.a.p.
Comment 56 Myriam Schweingruber 2012-05-17 18:20:28 UTC
*** Bug 252288 has been marked as a duplicate of this bug. ***
Comment 57 Dennis Grunert 2012-06-10 19:04:30 UTC
The issue is still here in KDE 4.8.3 and dolphin.

Distro: openSUSE 12.1 64 Bit
packages:
KDE 4.8.3 release 504
dolphin-4.8.3-303.3.x86_64
wdfs-1.4.2-141.1.3.x86_64

I have mounted a webdav share in fstab:
wdfs#https://***/webdav/     /mnt/webdav     fuse user,noauto,allow_other,accept_sslcert     0       0

In dolphin I have the places panel (F9) visible and the share is in the list and visible.
Steps to reproduce:
1. close dolphin with the before mentioned settings
2. close the connection to the mount (e.g. cut the internet connection) but do not umount the share
3. open dolphin

Result:
Dolphin hangs forever and is just gray.

The bug doesn't appear in the following situation:
1. As soon as you reestablish the connection, dolphin stops hanging.
2. Hide the places panel (F9) before the connection is cut.
3. Just hide the share in the places panel (right-click on "hide entry 'xxx'") before the connection is cut.

All above is also true for Konqueror.
Comment 58 fdservices 2012-06-11 08:27:59 UTC
*** Bug 290855 has been marked as a duplicate of this bug. ***
Comment 59 lem8r 2012-06-11 09:58:38 UTC
OpenSUSE 12.1 32bit
KDE 4.8.4
Dolphin hangs on NFS clients when NFS server is shut down.
Comment 60 Dennis Grunert 2012-06-13 08:17:39 UTC
The bug is in the category plasma - widget-kickoff. Maybe we should change this because comment #53 states that this bug is fixed for kickoff but apparently not for dolphin.
Comment 61 Octavian Petre 2012-10-15 18:45:58 UTC
I am using "Hide <> entry" to get rid of it. However, it takes ages to hide all entries.
Comment 62 Marcin "WMP" Janowski 2012-12-18 07:42:26 UTC
Maybe i have this problem on Kubuntu 12.10 with 4.9.3. When i use public WiFi on my school and i have weak WiFi signal, my plasma (panel, plaismoids) dont work. I must remove wifi module from console or krun to unfreeze.
Comment 63 Ettore Atalan 2012-12-28 17:34:24 UTC
Created attachment 76062 [details]
Complete strace output

This problem still exists in Dolphin 2.1.

Trying to open a mounted but unavailable SMB share will cause Dolphin to freeze.
Comment 64 hyper_ch 2012-12-28 17:37:26 UTC
I'm not sure if this also belongs here:

When I have a cifs share mounted and tell KDE to poweroff, it also hangs like 2 minutes during shut down until it finally times out and turns off. For some reasons the shares aren't properly dismounted hence the timeout somewhere.
Comment 65 Sebastian Turzański 2013-02-01 13:13:49 UTC
still exists in kde 4.9.5

having no additional apps open, just desktop widgets (weather+eth traffic + temperature monitor)
when i remove the ethernet cable the whole desktop freezes,

i tried to disable network in networkmanager plasmoid before removing the cable -

the result is the same

ctrl-alt-backspace does not solve the problem
Comment 66 Dennis Grunert 2013-02-08 07:47:00 UTC
Christoph Feck changed the version from 4.8.4 to 4.9.5. But shouldn't it be the lowest version number where this bug can be found, to find regression: Bugs usually don't disappear with newer versions.
Comment 67 BRULE Herman 2013-02-08 08:06:53 UTC
I use Qt5SystemInfo for mount point manipulation (change, read), it's not the solution here?
Comment 68 Sebastian Kügler 2013-02-08 19:48:49 UTC
@Dennis: The logic is the other way round, the first question is usually: is this bug still valid.
Comment 69 Dennis Grunert 2013-02-08 20:55:16 UTC
(In reply to comment #68)
> @Dennis: The logic is the other way round, the first question is usually: is
> this bug still valid.

Sorry, I though so, because I did set the field to the newest version myself one time and received this reply: https://bugs.freedesktop.org/show_bug.cgi?id=52179#c5

No I'm confused what helps the dev's the most to narrow it down. But this seems to be too much off-topic for a this long bug. I'm sorry about that.
Comment 70 Vincent Rubiolo 2013-02-27 10:16:10 UTC
Also getting this bug (Ubutu 12.04 - KDE 4.8.5). I usually get by using the following:
1. Lazy unmount of the problematic mount point (sudo umount -l /mnt/mountpoint).
2. Restart plasma : killall plasma-desktop && plasma-desktop That allows the panel to unfreeze. Unfortunately, it also pollutes the notification area with lots of spurious notification entries, resulting in a smaller (width-speaking) taskbar/paenl. I have to manually hide those to get back to the actual panel width (see screenshot).

Is there something we can do to help as users (getting backtraces, etc) so that this problem is fixed?
Comment 71 Vincent Rubiolo 2013-02-27 10:18:20 UTC
Created attachment 77609 [details]
Vincent's system tray spurious notifications
Comment 72 BRULE Herman 2013-02-27 10:40:58 UTC
I use solution to prevent this in my application: I use Qt5 Qt System Information module (tiers modules). That's work by event and prevent that's. But to be compatible with Qt4, I suggest thread usage with queued connexion.
Comment 73 Vincent Rubiolo 2013-02-28 09:10:10 UTC
(In reply to comment #70)
> Also getting this bug (Ubutu 12.04 - KDE 4.8.5). I usually get by using the
> following:
> 1. Lazy unmount of the problematic mount point (sudo umount -l
> /mnt/mountpoint).
> 2. Restart plasma : killall plasma-desktop && plasma-desktop That allows the
> panel to unfreeze. Unfortunately, it also pollutes the notification area
> with lots of spurious notification entries, resulting in a smaller
> (width-speaking) taskbar/paenl. I have to manually hide those to get back to
> the actual panel width (see screenshot).
> 
> Is there something we can do to help as users (getting backtraces, etc) so
> that this problem is fixed?

Forgot to mention that you'll also need to restart krunner in this case, otherwise you'll also lose handling of some keyboard shortcuts (esp Ctl-Alt-L to lock your desktop).
Comment 74 Marcin "WMP" Janowski 2013-02-28 11:30:15 UTC
Still exists in kde 4.10

If i disconnect my ethernet cabel and connect to new router (i want install new router, so this havent internet), plasma hang. 
This same if in university block me internet - i have routing only to AP and plasma zombie. 

How can i help and debug this?
Comment 75 Aaron J. Seigo 2013-02-28 11:49:57 UTC
It has been noted several times in this bug report what is needed to improve the situation: back traces of the frozen application.

Phillip did so in comment #50 and that resulted in a fix. That was not the only problem leading to the same symptom, though, and we need backtraces from those situations so we know what we're looking for.
Comment 76 Marcin "WMP" Janowski 2013-02-28 12:17:18 UTC
Created attachment 77646 [details]
Debug

Ok, i try to make debug with gdb, please tell me if it is make good.
Comment 77 fdservices 2013-02-28 12:50:18 UTC
Already did a bug report under duplicate bug  Bug 290855 with a gdb debug report
Comment 78 Sebastian Turzański 2013-02-28 16:52:38 UTC
probably the same or similar problem existr if I'm conected via openVPN to ym company network and have some CIF mounts there. When i disconnect from openVPN plasma also freezes.
I'm not sure if it's thee same bug or just similar one?
Comment 79 Marcin "WMP" Janowski 2013-03-01 11:38:12 UTC
When i have network access and i have routing to internet, all work good. But when unexpectedly i have lost routing to internet (i have connect to AP), plasma hangs out. Next, when routing go back, plasma hangs off (work good). 

BT: #0  0x00007f5962007303 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f5955c0cd84 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5955c0cea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f595ec01c26 in QEventDispatcherGlib::processEvents (this=0x215cad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f595e01fc1e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#5  0x00007f595ebd22ef in QEventLoop::processEvents (this=this@entry=0x7fff982183a0, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f595ebd2578 in QEventLoop::exec (this=0x7fff982183a0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f595ebd7738 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#8  0x00007f596231b1b1 in kdemain (argc=1, argv=0x7fff98218698) at ../../../../plasma/desktop/shell/main.cpp:126
#9  0x00007f5961f4076d in __libc_start_main (main=0x4006a0 <main(int, char**)>, argc=1, ubp_av=0x7fff98218698, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fff98218688) at libc-start.c:226
#10 0x00000000004006d1 in _start ()
Comment 80 jree2kx 2013-04-28 02:37:28 UTC
This is definitely still an issue in 4.10. I can reproduce every time by plugging in my ethernet and switching off wifi to transfer large files to my NAS. It only locks up Dolphin. If I umount my CIFS shares everything then returns to normal. Quite irritating to say the least. 

Arch x86_64
KDE 4.10.2
kernel 3.8.8
Comment 81 jree2kx 2013-06-04 01:29:02 UTC
Update to my previous comment. I finally switched over everything to NFS and the issue still persists.
Comment 82 Ettore Atalan 2013-06-13 18:34:35 UTC
kdialog is also freezing when this issue takes place. Maybe it has the same reason?
Comment 83 jree2kx 2013-06-30 19:24:12 UTC
Is there any chance this will be fixed in 4.11? This is big bug imo. You shouldn't have to restart your computer after switching interfaces.
Comment 84 Dawit Alemayehu 2013-07-07 18:37:30 UTC
*** Bug 274674 has been marked as a duplicate of this bug. ***
Comment 85 Ralf Habacker 2013-09-10 21:18:45 UTC
Created attachment 82265 [details]
plasma-desktop backtrace

same issue here with plasma-desktop on opensuse 12.2 x86_64, kde 4.11.1 and pam_mounted cifs mounts
Comment 86 Ralf Habacker 2013-09-12 05:20:25 UTC
bug 316655 seems to have the same reason.
Comment 87 laurent 2013-09-23 18:53:55 UTC
Hi, I got this bug since several months.
I read on different bug reports that the freeze was due to the fact that some users where using kernel cifs mount and thus it was more a kernel bug.
(you can find a lot related, "freeze smb cifs")
So I switched to smbnetfs mount that is a fuse mount of the samba share.

Once I come back to home and computer wake up from sleep, fuse mount does not see anymore the files, still kde desktop is completely frozen until I do fusermount -u -z /media/smb

Now I still don't understand why it freeze since kde shouldn't knew that I got a mount now...
Perhaps it scans all fuse mount?

The kde desktop freeze when either: 
    - I open dolphin
    - Open kate and click on open a file.
    - From firefox, select a file -> (it open a kde file dialog) all frozen.

Under debian/testing, KDE 4.10.5 (got also that on kde 4.9)
Comment 88 Moritz Augustin 2014-01-28 07:49:29 UTC
I confirm freezes of the whole panel after waking up from standby with unavailable nfs mounts in the background. The freeze goes away when the nfs target becomes available again. With xfce I did not have this problem. 
Without knowing the technical kde internal details I think that network mounts should be detected by kde and be marked as unreliable, i.e., nothing should  depend on them to prevent such execution blockings.

I am running arch linux with the following packages:
linux 3.12.8-1
extra/kdebase-lib 4.12.1-1
extra/kdebase-plasma 4.12.1-1
extra/kdebase-runtime 4.12.1-2
extra/kdebase-workspace 4.11.5-1
Btw: Several nfs directories are mounted using the bg flag.

I guess one workaround for users having this problem is to mount network shares via autofs. However, the kde core gui parts such as the panel should definitely not freeze when, e.g., a connected network attached storage is offline.
Comment 89 Dennis Grunert 2014-01-28 10:19:39 UTC
@Moritz: Please read comment 75 if you want to help. Thank you.
Comment 90 jason.wallace 2014-03-25 19:11:39 UTC
I'm having the same apparent problem, where different applications (Chrome, Kontact, Dolphin, etc) will freeze for minutes on end. I ran strace on a hanging process (Chrome in this case). The output from ~30 seconds is below:

write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 818) = 0 (Timeout)
write(44, "\0", 1)                      = 1
futex(0x7fd4837050b0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7fd489a6ca48, FUTEX_WAKE_PRIVATE, 1) = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8888) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8886) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 284) = 0 (Timeout)
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 823) = 0 (Timeout)
write(44, "\0", 1)                      = 1                                                                                                                   
futex(0x7fd4837050b0, FUTEX_WAKE_PRIVATE, 1) = 1                                                                                                              
futex(0x7fd489a6ca48, FUTEX_WAKE_PRIVATE, 1) = 1                                                                                                              
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)                                                                     
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)                                                              
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8859) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8857) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1178) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1147) = 0 (Timeout)
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 315) = 0 (Timeout)
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 826) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 290) = 0 (Timeout)
write(44, "\0", 1)                      = 1
futex(0x7fd4837050b0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7fd489a6ca48, FUTEX_WAKE_PRIVATE, 1) = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8858) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 8855) = 0 (Timeout)
futex(0x7fd4836f9834, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x7fd4836f9830, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 309) = 0 (Timeout)
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 829) = 0 (Timeout)
write(44, "\0", 1)                      = 1
futex(0x7fd4837050b0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7fd489a6ca48, FUTEX_WAKE_PRIVATE, 1) = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 9171) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 9168) = 0 (Timeout)
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 827) = 0 (Timeout)
write(44, "\0", 1)                      = 1
futex(0x7fd4837050b0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7fd489a6ca48, FUTEX_WAKE_PRIVATE, 1) = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 9172) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
write(11, "!", 1)                       = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 1 ([{fd=10, revents=POLLIN}])
read(10, "!", 2)                        = 1
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
recvfrom(8, 0x7fd483747074, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=10, events=POLLIN}], 3, 9168


(Also, apologies if I'm doing this wrong. I tried getting a backtrace from gdb but without luck. This is my first formal bug report, so if there's something different I need to add let me know.)
Comment 91 Moritz Augustin 2014-07-15 05:49:49 UTC
Created attachment 87734 [details]
strace of hanging plasma with recent kde

created by using kde 4.13.2 and the command
strace -tt plasma-desktop

hanging: all entries with time 07:12:xy
resuming (correlated with the re-availability of the nfs master): entries with time 07:23:xz
Comment 92 Marcin "WMP" Janowski 2014-07-15 10:27:48 UTC
Workaround for me: remove from plaismoids gmail-plaismoid . Now i havent problem with hangs. 

Qt: 4.8.6
KDE: 4.13.2
kde4-config: 1.0
Comment 93 bugs5.kde.org 2014-10-30 17:29:04 UTC
on shout down the same happens when you mount stuff over openvpn... because first openvpn gets closed before it tries to unmount networked drives. On Kubuntu openvpn also comes with down-root plugin.

So I just enhanced my ovpn config with this:

plugin /usr/lib/openvpn/openvpn-plugin-down-root.so 'umount -f /mnt/xxxxx'

At least on shutting down my notebook I don't have to wait those 180 seconds anymore.
Comment 94 Szczepan Hołyszewski 2014-11-04 14:08:29 UTC
Gotta love how people commenting here no longer even *HOPE* it will ever be fixed, and share workarounds instead.
Comment 95 Sebastian Kügler 2014-11-04 14:22:28 UTC
Szczepan, I don't see how a snarky comment of yours is going to motivate anyone to put their time into this. I for one have removed myself from the CC: list of this bugreport, since the last thing I need is polemic remarks from bystanders. You're not making your life, or that of others easier.
Comment 96 Szczepan Hołyszewski 2014-11-04 23:04:57 UTC
> Szczepan, I don't see how a snarky comment of yours is going to motivate anyone to put their time into this.

I don't see why it necessarily couldn't work, and this appropach hasn't been tried yet, unlike much everything else that has been *proven* ineffective over the last five years.
Comment 97 Tilman Vogel 2014-11-05 14:06:34 UTC
For me, this is by far the most annoying problem I have with KDE because it happens to me every time I switch from wired network to wireless. So, I sympathize with Szczepan's frustration, even if that does not immediately help. 

6th anniversary in February and a lot of votes makes me wish one of the people who could fix this quickly had a similar setup as I do. It would probably be fixed within days...
Comment 98 Rex Dieter 2014-11-05 14:11:42 UTC
In a *constructive* vein, from looking that the most recent backtrace posted:

#0  0x00007ffff026aba5 in _lxstat () from /lib64/libc.so.6
#1  0x00007ffff01d2c65 in realpath@@GLIBC_2.3 () from /lib64/libc.so.6
#2  0x00007ffff24c9914 in KStandardDirs::realFilePath(QString const&) () from /usr/lib64/libkdecore.so.5
#3  0x00007ffff24955b3 in KMountPoint::List::findByPath(QString const&) const () from /usr/lib64/libkdecore.so.5
#4  0x00007ffff40638c1 in KDiskFreeSpaceInfo::freeSpaceInfo(QString const&) () from /usr/lib64/libkio.so.5
#5  0x00007fff3f8d2544 in SolidDeviceEngine::freeDiskSpace(this=this@entry=0x1a835c0, mountPoint=...) at /usr/src/debug/kde-workspace-4.11.1/plasma/generic/dataengines/soliddevice/soliddeviceengine.cpp:653

looks like it gets stuck trying to get free/available space info.

That said, I *vaguely* recall seeing a reviewboard request covering this case recently.  I'll go do some digging.

That said, can anyone confirm problem exists using latest kde-workspace-4.11.13 + kde-4.14.2 ?  (latest confirmations I see still mention kde-4.13.x)
Comment 99 Aaron J. Seigo 2014-11-05 14:32:37 UTC
This bug should perhaps be assigned to kdelibs, as it is not really a plasma bug ... thought it could be worked-around in kickoff. See Bug#316655 which has more information on the problem. The culprit is the free space checking code; it makes a blocking call and when the mount point is not available this simply hangs. This problem affects several KDE components (among other software out there) ... one possibility is to simply not show the free space in kickoff, though that probably involves moving away from PlacesModel (assuming that is what is still used). So a proper solution in the free space checker is probably the best approach.

My suggestion would be look at the filesystem type advertised for the mount point and simply avoid any free space (or similar info fetching) attempts on nfs, cifs, etc. and perhaps also fuse mounts.

@Szczepan "I don't see why it necessarily couldn't work, and this appropach hasn't been tried yet, unlike much everything else that has been *proven* ineffective over the last five years."

You are not the first person think that behaving badly will make things better. It has been tried many times in the past and honestly doesn't work.

Regardless of whether it works or not, it is not welcome in KDE. Please see: https://www.kde.org/code-of-conduct/

@Tilman Vogel: If you can not fix it yourself, and evidently people who may be able to are not motivated to do so, then perhaps paying someone to fix it would be a possibility. Not everything gets accomplished gratis. (No, I'm not interested in being paid to fix this :)
Comment 100 Rex Dieter 2014-11-05 14:57:32 UTC
Thanks aaron (hugs), marking as dup

*** This bug has been marked as a duplicate of bug 316655 ***
Comment 101 Tilman Vogel 2014-11-05 15:03:25 UTC
(In reply to Aaron J. Seigo from comment #99)
> @Tilman Vogel: If you can not fix it yourself, and evidently people who may
> be able to are not motivated to do so, then perhaps paying someone to fix it
> would be a possibility. Not everything gets accomplished gratis. (No, I'm
> not interested in being paid to fix this :)

That's an interesting suggestion - however, where do I find those people? It might actually be quite a good idea to invent an open-source job market where I could post "Who is going to fix https://bugs.kde.org/show_bug.cgi?id=184062 for € 20?" I am not sure about the legal implications, however... Actually, that could be integrated into the bug-tracking system. Instead of casting a vote, we could pledge a bounty. Every vote on this bug worth 10 ¢ would make this a 58 € bug already...
Comment 102 Sebastian Turzański 2014-11-05 16:21:55 UTC
I fully support the bounty idea - it's brilliant, simple and it works for Elementary OS bug-figthing
Comment 103 Szczepan Hołyszewski 2014-11-11 18:35:41 UTC
@Aaron: "You are not the first person think that behaving badly will make things better. It has been tried many times in the past and honestly doesn't work."

That's not my experience, and probably not even yours. This is just your *wish* for a Politeness God to exist, rewarding the righteous and punishing the wicked. Meanwhile on planet Reality, I have been profusely thanked by people whose daily work was made easier because I got authors of certain software artifacts to fix critical bugs after everyone else had been polite with them for years.

"Regardless of whether it works or not, it is not welcome in KDE."

So there we have this conflict between two unwelcome things: behaving badly and long-standing critical bugs. Both are definitely unwelcome, but there is an interesting relationship between them:

 - the former can be used to hasten the elimination of the latter
 - if the latter remains, the former is inevitable anyway
 - when the latter is eliminated, the former also vanishes