In /sys/src/9/port/proc.c a comment state: /* * Expects that only one process can call wakeup for any given Rendez. * We hold both locks to ensure that r->p and p->r remain consistent. * Richard Miller has a better solution that doesn't require both to * be held simultaneously, but I'm a paranoid - presotto. */
(see https://github.com/0intro/plan9/blob/master/sys/src/9/port/proc.c#L882-L887) I'd like to know a bit more about Miller's solution as I'd like to simplify postnote. Any hint or source code? Giacomo