| plan 9 kernel history: overview | file list | diff list |
1990/0614/power/clock.c (diff list | history)
| 1990/0614/sys/src/9/power/clock.c:135,147 – 1990/0728/sys/src/9/power/clock.c:135,149 (short | long | prev | next) | ||
| 1990/0227 | m->ticks = 0; } | |
| 1990/0728 | #define NA 10 | |
| 1990/0227 | void clock(ulong n) { | |
| 1990/0728 | int i, na; | |
| 1990/0227 | Alarm *a; void (*f)(void*); Proc *p; | |
| 1990/0728 | Alarm *alist[NA]; | |
| 1990/0227 | if(n&INTR2){ i = *CLRTIM0; | |
| 1990/0614/sys/src/9/power/clock.c:170,185 – 1990/0728/sys/src/9/power/clock.c:172,193 | ||
| 1990/0227 | if(m->alarm){ a = m->alarm; a->dt--; | |
| 1990/0728 | for(na = 0; a && a->dt<=0 && na<NA; na++){ alist[na] = a; | |
| 1990/0227 | delete(&m->alarm, 0, a); | |
| 1990/0728 | unlock(&m->alarmlock); /* execute alarm functions outside the lock */ for(i = 0; i < na; i++){ f = alist[i]->f; /* avoid race with cancel */ if(f) (*f)(alist[i]); alist[i]->busy = 0; } } else unlock(&m->alarmlock); | |
| 1990/0227 | } return; } | |