You could make another child whose job is only to wait on the parent's death and then kill the first child. jettero's suggestion of a lock file would be a good way for the watchdog child to notice the parent's death without polling. The whole process would look a little like:
- Parent flocks a file.
- Parent forks child 1 (records PID—child 2 will need it).
- Parent forks child 2.
- Child 2 does a blocking flock on the same file (and so hangs).
- There is joy in Mudville.
- Parent receives deadly signal 9. Parent's lock is released.
- Child 2 gets the lock and continues. It's next (unconditional) action is to kill child 1 and exit.
- Child 1 dies from the signal from child 2.
- And then there were none.