| plan 9 kernel history: overview | file list | diff list |
1992/0805/pc/trap.c (diff list | history)
| 1992/0804/sys/src/9/pc/trap.c:110,116 – 1992/0805/sys/src/9/pc/trap.c:110,116 (short | long | prev | next) | ||
| 1991/0823 | sethvec(11, intr11, SEGTG, 0); sethvec(12, intr12, SEGTG, 0); sethvec(13, intr13, SEGTG, 0); | |
| 1992/0805 | sethvec(14, intr14, SEGIG, 0); | |
| 1991/0823 | sethvec(15, intr15, SEGTG, 0); | |
| 1991/0904 | sethvec(16, intr16, SEGTG, 0); | |
| 1991/0731 | ||
| 1992/0804/sys/src/9/pc/trap.c:333,342 – 1992/0805/sys/src/9/pc/trap.c:333,351 | ||
| 1991/0720 | if((ur->cs)&0xffff == KESEL) panic("recursive system call"); | |
| 1991/0718 | ||
| 1991/0720 |
| |
| 1992/06271 | u->scallnr = ur->ax; | |
| 1992/0805 | if(u->scallnr == RFORK && u->p->fpstate == FPactive){ /* * so that the child starts out with the * same registers as the parent */ splhi(); if(u->p->fpstate == FPactive){ fpsave(&u->fpsave); u->p->fpstate = FPinactive; } spllo(); } | |
| 1991/0720 | sp = ur->usp; u->nerrlab = 0; ret = -1; | |
| 1992/0804/sys/src/9/pc/trap.c:353,362 – 1992/0805/sys/src/9/pc/trap.c:362,369 | ||
| 1992/0625 | u->s = *((Sargs*)(sp+1*BY2WD)); | |
| 1992/06271 | u->p->psstate = sysctab[u->scallnr]; | |
| 1992/0625 | ||
| 1992/0804 |
| |
| 1992/06271 | ret = (*systab[u->scallnr])(u->s.args); | |
| 1991/0720 | poperror(); | |
| 1992/0804 |
| |
| 1991/0720 | } if(u->nerrlab){ | |
| 1992/06271 | print("bad errstack [%d]: %d extra\n", u->scallnr, u->nerrlab); | |