M port/devproc.c => port/devproc.c +3 -0
@@ 980,6 980,9 @@ procctlreq(Proc *p, char *va, int n)
int i, npc;
char buf[64];
+ if(p->kp) /* no ctl requests to kprocs */
+ error(Eperm);
+
kstrcpy(buf, va, sizeof buf);
if(strncmp(buf, "stop", 4) == 0)
M port/proc.c => port/proc.c +4 -1
@@ 475,7 475,10 @@ sleep(Rendez *r, int (*f)(void*), void *arg)
if(up->notepending) {
up->notepending = 0;
splx(s);
- error(Eintr);
+ if(up->kp)
+ print("attempt to interrupt %ld %s\n", up->pid, up->text);
+ else
+ error(Eintr);
}
splx(s);