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@