Messages in this thread |  | | Subject | Re: [PATCH] exec: Make do_coredump more robust and safer when using pipes in core_pattern | From | Scott James Remnant <> | Date | Sun, 02 Aug 2009 14:49:56 +0100 |
| |
On Sat, 2009-08-01 at 20:22 -0400, Neil Horman wrote:
> On Sat, Aug 01, 2009 at 07:28:52PM +0100, Scott James Remnant wrote: > > On Sat, 2009-08-01 at 09:41 -0400, Neil Horman wrote: > > > > > > > Not without additional work. If init crashed in the initramfs, I don't think > > > > > theres a way to handle that. If it crashes at some later time, I think it just > > > > > gets restarted IIRC. I'm sure you can change that behavior, but this patch > > > > > doesn't address that. > > > > > > > > > When the system init daemon crashes, the kernel PANICs. When not using > > > > core_pattern, this is ok, we get a core file - when using apport, as far > > > > as I can tell it never waits for apport to finish so we don't get the > > > > crash. > > > > > > > This is non-sensical. If init crashes, and the kernel panics, you'll only get a > > > core by sheer luck and good fortune. > > > > > Or by being a bit clever. Upstart catches the SIGSEGV and the signal > > handler forks a child process, unmasking the signal in that child > > process with no signal handler installed. > > > I don't see how this works. How is upstart (which by definition is a child of > init (pid 1)) going to catch a SIGSEGV from its parent? How would any process > catch a signal targeted to its parent? > Upstart *is* /sbin/init (pid 1)
Scott -- Scott James Remnant scott@ubuntu.com [unhandled content-type:application/pgp-signature] |  |