Fixes bug with EVENT_VCORE_MUST_RUN
authorBarret Rhoden <brho@cs.berkeley.edu>
Fri, 10 Oct 2014 21:10:00 +0000 (14:10 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Mon, 13 Oct 2014 19:47:55 +0000 (12:47 -0700)
commit021c2cfcfa710755e4da243f75e618acd05dc945
treec0519af9c2aea57aba838942e40617e38303718e
parent84889cb1a47a1bb6e102e66e14391d72f29dfaac
Fixes bug with EVENT_VCORE_MUST_RUN

Spamming list members would succeed for offline vcores, which breaks if
MUST_RUN was set.  The race was that a VC could have been on the online
list, but by the time we messaged it, it was preempted (and it still
can_rcv).  Likewise, checking the bulk-preempt and inactive lists could
be racy as well.

Four bugs found while writing a dissertation.  Not too bad.  =)
kern/src/event.c