|
|
Subscribe / Log in / New account

^C vs SIGKILL

^C vs SIGKILL

Posted Apr 19, 2008 14:31 UTC (Sat) by willy (subscriber, #9762)
In reply to: ^C vs SIGKILL by mkerrisk
Parent article: Stable kernel 2.6.25 released

I see two places where we send SIGKILL in kernel/signal.c.  The first is in
__group_complete_signal():

        if (sig_fatal(p, sig) && !(p->signal->flags & SIGNAL_GROUP_EXIT) &&
            !sigismember(&t->real_blocked, sig) &&
            (sig == SIGKILL || !(t->ptrace & PT_PTRACED))) {
[...]
                        do {
                                sigaddset(&t->pending.signal, SIGKILL);
                                signal_wake_up(t, 1);
                        } while_each_thread(p, t);

The second is in zap_other_threads():
                sigaddset(&t->pending.signal, SIGKILL);
                signal_wake_up(t, 1);

I'm pretty sure the first case is where it happens.


to post comments

^C vs SIGKILL

Posted Apr 19, 2008 17:14 UTC (Sat) by mkerrisk (subscriber, #1978) [Link]

> I'm pretty sure the first case is where it happens.

Yes, looks right to me.  Thanks for the pointer.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds