void lock(Lock *l) { if(m->locks < 0) throw("lock count"); m->locks++; eventlock(l); }
void runtime·lock(Lock *l) { if(m->locks < 0) runtime·throw("lock count"); m->locks++; eventlock(l); }
void notesleep(Note *n) { eventlock(&n->lock); eventunlock(&n->lock); // Let other sleepers find out too. }
void noteclear(Note *n) { eventlock(&n->lock); }
void runtime·noteclear(Note *n) { n->lock.key = 0; // memset(n, 0, sizeof *n) eventlock(&n->lock); }