signal handling, add prototype for pthreadinit

This commit is contained in:
rsc 2004-12-27 00:13:48 +00:00
parent 43db87f1fc
commit e1dc7e4511
3 changed files with 19 additions and 4 deletions

View file

@ -190,7 +190,7 @@ scheduler(void *v)
p = v;
setproc(p);
print("s %p %d\n", p, gettid());
// print("s %p %d\n", p, gettid());
p->tid = pthread_self();
pthread_detach(p->tid);
lock(&p->lock);
@ -503,6 +503,13 @@ threadmainstart(void *v)
threadmain(threadargc, threadargv);
}
extern Jmp *(*_notejmpbuf)(void);
static Jmp*
threadnotejmp(void)
{
return &proc()->sigjmp;
}
int
main(int argc, char **argv)
{
@ -524,8 +531,9 @@ main(int argc, char **argv)
_wunlock = threadwunlock;
_rsleep = threadrsleep;
_rwakeup = threadrwakeup;
_notejmpbuf = threadnotejmp;
pthreadinit();
_pthreadinit();
p = procalloc();
if(mainstacksize == 0)
mainstacksize = 65536;