diff --git a/kernel/signal.c b/kernel/signal.c index d63c79e7e41598d0ac2e92fcb6860ab33ddc2f1e..43b0d4a1b7bace76e2dac9a87e2a2f6ab5efdf3e 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -485,6 +485,9 @@ flush_signal_handlers(struct task_struct *t, int force_default) if (force_default || ka->sa.sa_handler != SIG_IGN) ka->sa.sa_handler = SIG_DFL; ka->sa.sa_flags = 0; +#ifdef SA_RESTORER + ka->sa.sa_restorer = NULL; +#endif sigemptyset(&ka->sa.sa_mask); ka++; }