Comment 19 for bug 407428

Revision history for this message
Wisefox (shangxiaole) wrote : Re: sshd zombie processes and strange behavior after karmic upgrade

Don't know the developer already get the root cause or not. I can provide some clue deeper into this issue.

When Karmic starts the ssh and other several services(udevd,dhcp etc.), it uses a wrong Sigmask set for the program:
Check the Sigblk for sshd:
$ cat /proc/`pidof sshd| awk '{print $1}'`/status | grep Sig
SigQ: 4/16297
SigPnd: 0000000000000000
SigBlk: fffffffe7ffb9eff # should be all zero
SigIgn: 0000000000000000
SigCgt: 0000000180006000

All child forked by sshd will succeed the same SigBlk from sshd. And the Ctrl + C token uses the SIGINT(2) to interrupt the program. But it's blocked by the program. That's the cause of sshd zombie and Ctrl + C problem.
I provide two method to get sshd back to normal.
1). On that machine(physical), use the /etc/init.d/ssh stop/start to restart ssh to make it use the right mask.
2). Write a little wrapper program to restart the ssh.