View previous topic :: View next topic |
Author |
Message |
gentoobrother n00b
![n00b n00b](/images/ranks/rank_rect_0.gif)
![](images/avatars/gallery/Futurama/cartoon_futurama_fry.gif)
Joined: 09 Dec 2006 Posts: 44
|
Posted: Tue Feb 27, 2007 9:02 am Post subject: 'D' processes block suspend to disk |
|
|
Hi,
I have noticed that when there are processes with 'D' stats in the background it is impossible to hibernate/suspend my Gentoo. I don't know why these processes occur. The manual says that they are coused by some I/O errors. But what errors? An example:
4953 ? D 0:00 /usr/libexec/hald-addon-storage
I cannot kill this thing with any killall -9. Even when I umount all the drives with umount -l (lazy, nothing else works for the /home partition) it still is untouchable.
So my question is such: how to kill tose bustards and what causes them? Has anybody witnessed similar actions as to suspend/hibernate in reference to this?
Cheers _________________ UNIX is like sex: If you don't know it, you don't miss is. But if you know it, you'll need it. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
Corona688 Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/164511503041338d913f8fb.gif)
Joined: 10 Jan 2004 Posts: 1204
|
Posted: Tue Feb 27, 2007 8:31 pm Post subject: |
|
|
The 'D' stands for device driver; if a process is stuck in D, it is stuck in kernel mode, unkillable, and probably frozen. This can result from kernel bugs. That's all you can tell. The proper way to get rid of these is /sbin/reboot. Try upgrading your kernel. _________________ Petition for Better 64-bit ATI Drivers - Sign Here
http://www.petitiononline.com/atipet/petition.html |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
widan Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/142533236243680bda6f27b.jpg)
Joined: 07 Jun 2005 Posts: 1512 Location: Paris, France
|
Posted: Wed Feb 28, 2007 12:39 am Post subject: Re: 'D' processes block suspend to disk |
|
|
gentoobrother wrote: | I don't know why these processes occur. The manual says that they are coused by some I/O errors. But what errors? |
Processes in D state are waiting in kernel mode with an uninterruptible wait, typically during an I/O that doesn't occur as planned (often an NFS mount where the server is unreachable, and the kernel is waiting for it to show up again to finish the syscall).
gentoobrother wrote: | I cannot kill this thing with any killall -9. Even when I umount all the drives with umount -l (lazy, nothing else works for the /home partition) it still is untouchable. |
You won't be able to kill it. Processes only receive signals on syscall return, and your process is currently executing a syscall that got stuck and can't be interrupted. You can send all the signals you want, it won't receive them until after it gets unstuck, and by then they're not needed anymore. If the D state was caused by an abandonned I/O that neither explicitely succeeded, failed or timed out, you will need to reboot to clear it.
If you want to investigate (and you have support for "Magic-SysRq" in your kernel), you can run this command:
Code: | # echo t > /proc/sysrq-trigger |
Then look in dmesg for your process. The call trace under its name will tell you where in the kernel it's stuck, this may help point to the cause. |
|
Back to top |
|
![](templates/gentoo/images/spacer.gif) |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|