extern void sgrpsig(uint16_t pgrp, uint8_t sig);
extern void unix_syscall(void);
extern void timer_interrupt(void);
-extern void doexit (int16_t val, int16_t val2);
+extern void doexit (uint16_t val);
extern void panic(char *deathcry);
extern void exec_or_die(void);
#define need_resched() (nready != 1 && runticks >= udata.u_ptab->p_priority)
#ifdef DEBUG
kprintf("process terminated by signal %d\n", j);
#endif
- doexit(0, j);
+ doexit((uint16_t)j << 8);
} else if (*svec != SIG_IGN) {
/* Arrange to call the user routine at return */
udata.u_ptab->p_pending &= ~m; // unset the bit
return 1;
}
-void doexit(int16_t val, int16_t val2)
+void doexit(uint16_t val)
{
int16_t j;
ptptr p;
}
- udata.u_ptab->p_exitval = (val << 8) | (val2 & 0xff);
+ udata.u_ptab->p_exitval = val;
i_deref(udata.u_cwd);
i_deref(udata.u_root);