]> Zhao Yanbai Git Server - minix.git/commitdiff
Don't print anything if anything is wrong in send_sig()
authorBen Gras <ben@minix3.org>
Thu, 9 Mar 2006 14:02:56 +0000 (14:02 +0000)
committerBen Gras <ben@minix3.org>
Thu, 9 Mar 2006 14:02:56 +0000 (14:02 +0000)
kernel/system.c

index 399b2830967fc67695f968f974dc6d9d3643e869..ba949ee334db5f50404d92c2a7054217f680e811 100755 (executable)
@@ -247,18 +247,15 @@ PUBLIC void send_sig(int proc_nr, int sig_nr)
 /* Notify a system process about a signal. This is straightforward. Simply
  * set the signal that is to be delivered in the pending signals map and 
  * send a notification with source SYSTEM.
+ *
+ * Process number is verified to avoid writing in random places, but we
+ * don't kprintf() or panic() because that causes send_sig() invocations.
  */ 
   register struct proc *rp;
   static int n;
 
-  if(!isokprocn(proc_nr)) {
-       panic("Bogus send_sig", proc_nr);
-       return;
-  }
-  if(isemptyn(proc_nr)) {
-       kprintf("kernel send_sig: ignoring sig for empty proc %d\n", proc_nr);
+  if(!isokprocn(proc_nr) || isemptyn(proc_nr))
        return;
-  }
 
   rp = proc_addr(proc_nr);
   sigaddset(&priv(rp)->s_sig_pending, sig_nr);