Location: Asia Pacific, Cyberspace, in the Dark Dystopia
Posts: 19,118
Thanks Given: 2,351
Thanked 3,359 Times in 1,878 Posts
You can check to see what is the parent process, and if possible you can kill or restart the parent process (as long as the parent process is not the root process).
In the case of remote mounts causing the D state, you can check the parent networking process and decide how to proceed.
Some people have tried to be creative as follows:
Determine the zombie & parent PIDs. (in this example let's say the zombie's PID 3200 and the parent's PID 3100)
Start gdb and attach to the parent in this example , attach 3200
Call waitpid for the zombie process:, for example call waitpid(3100,0,0)
Detach from the parent (detach) and exit the debugger.
D state is "device waiting" and is a bit nasty.
Such a process cannot be killed.
It makes sense to guess the blocking device, and fix it. Once fixed, the proceses will leave the D state and continue.
These 2 Users Gave Thanks to MadeInGermany For This Post:
Here are the different process state codes and description:-
As you can see, D means uninterruptible sleep usually due to an IO.
You can check the wchan - name of the kernel function in which the process is sleeping to understand what exactly is going on:-
Usually it will be a exit_mm() function to release all memory descriptors and related data structures.
As per linux kernel documentation, it first of all checks mm->core_waiters flag is set. If it does, then the process is dumping the contents of memory to a core file (IO). If that is the case, I believe to avoid corruption, it will not respond to a KILL signal until the core file dumping is completed.
You can check to see what is the parent process, and if possible you can kill or restart the parent process (as long as the parent process is not the root process).
It's orphan process, not zombie, and its PPID is 1
Hi MadeinGermany
Quote:
It makes sense to guess the blocking device, and fix it. Once fixed, the proceses will leave the D state and continue.
You mean guessing the IO devices (disks) ? The root cause of this is that the NFS server was disconnected unexpectedly and caused the NFS mounted folder became unresponsive, I have forced unmount and remount when the NFS server is back. And cannot kill it.
Hi Yoda,
I have tried your command
And resulted in as below:
Look like it matches with my finding above (nfs disconnected). Now the nfs mounted folders are back. As the state D, so we cannot kill it, a reboot only can help clearing it?
Actually I expect gdb to also get hung when attaching it to a process in D state. But it's worth a trial.
If processes are permanently hung in cifs_reconnect_tcon then it looks like a kernel bug (or a missing interrupt/timeout feature).
Is your kernel at the latest patch level?
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Hi all, I have a LUN that is in "Online Busy" when I issue the dev_gestate subcommand of luxadm:
root@es088wb6:~# luxadm -v -e dev_getstate /dev/rdsk/c21t50050763090887FEd4s2
phys path = "/devices/pci@6c0/pci@1/pci@0/pci@4/SUNW,qlc@0/fp@0,0/ssd@w50050763090887fe,4:c,raw"
... (5 Replies)
Hi Community,
i have one M5000 spare machine which was handled by support team. they told me that it is gone completely .
i have checked the status. before it was showing MBU_B degraded. i updated to latest firmware and , resetted the xscf and now this is showing as normal.
MBU_B... (5 Replies)
How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address
and column 3 contains “cc” e-mail address to include with same email.
Sample input file, email.txt
Below is an sample code where... (2 Replies)
Hi Experts,
I am executing "svn" checkout command through my java code on a freeBSD machine. SVN checkout gets started , but when I run "top" command on my freebsd machine, I have observed that "svn" processes are stuck in "pipewr" state.
Any pointer for this problem?
Thanks,
akash (0 Replies)
Hi Experts,
I am executing "svn" checkout command through my java code on a freeBSD machine. SVN checkout gets started , but when I run "top" command on my freebsd machine, I have observed that "svn" processes are stuck in "pipewr" state.
Any pointer for this problem?
Thanks,
akash (0 Replies)
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Hi Friends,
Can any of you explain me about the below line of code?
mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`
Im not able to understand, what exactly it is doing :confused:
Any help would be useful for me.
Lokesha (4 Replies)