Messages in this thread |  | | | Subject | Re: [PATCH 0/2] fix the long standing exec vs kill race | | From | Simon Holm Thøgersen <> | | Date | Sun, 02 Dec 2007 18:06:33 +0100 |
| |
søn, 02 12 2007 kl. 18:14 +0300, skrev Oleg Nesterov: > Depends on > [PATCH] __group_complete_signal: fix coredump with group stop race > http://marc.info/?l=linux-kernel&m=119653436116036 > > Needs review and testing. > > Please comment, I think at least the idea is promising. > I have an issue that sounds related, but I might be completely off. I would expect the simple attached program to keep receiving the same signal, i.e. respond to killall signal-exec -s SIGHUP
I tried your patches, but they didn't help.
Any ideas?
Simon Holm Thøgersen #include <signal.h> #include <stdio.h> #include <unistd.h>
static char **argv_;
static void handler(int signal) { printf("got signal %d\n", signal); execv(argv_[0], argv_); } int main(int argc, char *argv[]) { printf("spawned\n"); argv_ = argv; if (signal(SIGTERM, handler) == SIG_ERR) err(1, "could not set signal handler for SIGTERM"); if (signal(SIGHUP, handler) == SIG_ERR) err(1, "could not set signal handler for SIGTERM"); sleep(60); return 0; }
|  |