Re: [OFF TOPIC] Why is a process killed by close()?

Miklos Szeredi (Miklos.Szeredi@eth.ericsson.se)
Thu, 10 Sep 1998 09:50:49 +0200


> > This is not really a Linux related question, as I experienced it first
> > under Solaris. But it seems, that the linux behavior WRT this problem
> > changed in recent dev. kernels, so I thought, maybe someone knows the
> > answer.
> >
> > The symptom is that a process is Kill-ed, when the file descriptors 0,
> > 1 or 2 are close()-ed (or dup2()-ed). These file descriptors are
> > actually connected to /dev/null before closing.
> >
> > The circumstances are rather foggy, while this all happens in a shared
> > library, which overrides some libc functions. This actually happens
> > inside an opendir() syscall made from tcsh, when TAB is pressed for
> > filename completion.
> >
>
> The following code and test results show that what you observe is not
> what is happening. Try it yourself.

No, of course not. I didn't say it was the normal behavior of programs
to be killed when a file descriptor is closed. I'm actually interested
in HOW can it happen at all (as it _does_ happen).

What I don't see is, how can a process get a KILL signal from kernel
at all (except of course by the kill() syscall).

Miklos Szeredi

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/faq.html