recalc_sigpending(), otherwise recent kernels don't appear to deliver
new instances of any signals already received.
Revert back to using SIGKILL at shutdown time, but use SIGKILL instead of
explicitly using signal 9, because abstraction is your friend.
void osi_linux_unmask() {
spin_lock_irq(&rxk_ListenerTask->sigmask_lock);
sigemptyset(&rxk_ListenerTask->blocked);
+ flush_signals(rxk_ListenerTask);
recalc_sigpending(rxk_ListenerTask);
spin_unlock_irq(&rxk_ListenerTask->sigmask_lock);
}
extern int rxk_ListenerPid;
while (rxk_ListenerPid) {
- (void) (*sys_killp)(rxk_ListenerPid, SIGTERM);
+ (void) (*sys_killp)(rxk_ListenerPid, SIGKILL);
afs_osi_Sleep(&rxk_ListenerPid);
}
sock_release(rx_socket);