Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jun 1996 17:58:49 -0700
From:      "Neil C. Jensen" <njensen@salsa.habaneros.com>
To:        James Raynard <fqueries@jraynard.demon.co.uk>, "'Information Help Desk'" <info@adn.edu.ph>
Cc:        "freebsd-questions@FreeBSD.ORG" <freebsd-questions@FreeBSD.ORG>
Subject:   RE: trouble for process to be terminated
Message-ID:  <01BB6452.4DBABC40@jalapeno.habaneros.com>

next in thread | raw e-mail | index | archive | help
I have a similiar problem with serial io on COM2, although I am using getty:

ttyd1   "/usr/libexec/getty std.19200"  dialup  on     

In my case, I can dialup, and login once ok. However, when I exit from getty, the 
process and user shell refuses to die. My next attempt to dialup always fails, the modem 
picks up and then disconnects. This kills the original process and starts a new one, and I
can then log in again. This is repeatable, successful login, unsuccessful, successful.....

I haven't tried in on COM1, but now I think I will...

----------
From: 	Information Help Desk[SMTP:info@adn.edu.ph]
Sent: 	Friday, June 28, 1996 1:40 AM
To: 	James Raynard
Cc: 	freebsd-questions@FreeBSD.ORG
Subject: 	Re: trouble for process to be terminated



On Thu, 27 Jun 1996, James Raynard wrote:

> > 	What's the last resort besides rebooting after killing a process 
> > that still lives but is trying to exit?
> 
> Are you referring to a "zombie" process - one where a child process
> exits before its parent and the parent doesn't clean up after it
> properly (by calling wait())?
> 
> It's not as bad as it seems, as the process has actually exited,
> releasing all the memory it was using and closing any files it had
> open, etc. All it's taking up is an entry in the process table. On the
> other hand, it effectively reduces the number of processes you can run
> by one, and makes the ps output look untidy.
> 
> This is usually the result of a programming mistake - or the parent
> may be blocking on a resource which never becomes available. Perhaps
> if you can post some details about which program causes the problem,
> and how it happens, we may be able to give a more helpful answer.
> 
> -- 
> James Raynard, Edinburgh, Scotland
> james@jraynard.demon.co.uk
> 

HI !!!

The process here is mgetty which I used for dial-up and whose owner is  
the init process. In my /etc/ttys, I have an entry,

ttyd0	"/usr/local/sbin/mgetty -Ds 19200 -m'""AT&H1 OK'"   dialup on secure

This works just fine and I have the modem connected to COM1. You might 
find it weird that instead of cuaa0, I used ttyd0. Somebody told me cuaa0 
should be used but I was able to make it work with using ttyd0. This 
setup works just fine. After every connection and disconnection, the 
process mgetty is terminated and resurrected by the init process.

Now, I encounter this problem with the process mgetty not being able to 
exit when instead of ttyd0, I used ttyd1 and have the modem connected to 
COM2. I made the necessary changes in /etc/ttys, turned the line off in 
the dial-up in COM1, and added a modified line similar to the above. 
After the changes, I now see a process started by init. I tried to issue 
a 'kill -9 <mgetty pid>'. What should happen is the process exits and 
gets resurrected. But, the process seems having problems exiting and I 
usually see the line below.

????  ??  IE   ?:??.??   /usr/local/sbin/mgetty -Ds 19200 -m AT&H1 OK ttyd0

I looked this up and this means that the process knows it has been issued 
a SIGKILL but still is trying to exit.

If details are still needed I am more than willing to replay ASAP.

Thank you.

--
jf






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?01BB6452.4DBABC40>