PM: do not panic if sys_sigsend returns ENOMEM

This commit is contained in:
David van Moolenbroek 2012-11-09 16:09:20 +00:00
parent 3e4db5ee55
commit ff84d11216

View file

@ -738,10 +738,10 @@ int signo; /* signal to send to process (1 to _NSIG-1) */
/* Ask the kernel to deliver the signal */ /* Ask the kernel to deliver the signal */
r = sys_sigsend(rmp->mp_endpoint, &sigmsg); r = sys_sigsend(rmp->mp_endpoint, &sigmsg);
/* sys_sigsend can fail legitimately with EFAULT if /* sys_sigsend can fail legitimately with EFAULT or ENOMEM if
* the process memory can't accomodate the signal handler. * the process memory can't accomodate the signal handler.
*/ */
if(r == EFAULT) { if(r == EFAULT || r == ENOMEM) {
return(FALSE); return(FALSE);
} }
/* Other errors are unexpected pm/kernel discrepancies. */ /* Other errors are unexpected pm/kernel discrepancies. */