CVSROOT:        /cvs
Module name:    src
Changes by:     v...@cvs.openbsd.org    2018/03/23 22:13:59

Modified files:
        sys/kern       : kern_sig.c 
        sys/sys        : signalvar.h 

Log message:
Avoid calling issignal() twice on signal delivery in order not
to generate more than one ptrace(2) event. Do that by checking
pending signals first without altering any state. If there is
an unmasked signal ready for delivery, acquire the kernel lock
and redo the checks in issignal().

This prevents gdb from blocking on exit when it attempts to kill
an attached process, issue reported by tb@.

OK mpi@, deraadt@

Reply via email to