Fixes waiton_checklist()
authorBarret Rhoden <brho@cs.berkeley.edu>
Wed, 7 Jan 2015 22:43:33 +0000 (17:43 -0500)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 7 Jan 2015 22:43:33 +0000 (17:43 -0500)
commit2e856c58ec2c091ff11e2f110d1934d8830fe2bb
tree8cca13292216de5be84ff716230fbd1c02bf464f
parent0991b77dbc69fa94850dc09294fd82acbf9dc93d
Fixes waiton_checklist()

Geez, this bug was around since nearly the dawn of time (2009-04-17).

If someone actually did an smp_call with a wait wrapper, they might get lucky
and have core 0 blow through the check before anyone set a bit.

I'd love to get rid of the smp_call_function business, and replace it with
broadcast kernel messages (at least do so internally) or something.  It is a
somewhat cheap version of a broadcast message, albeit with a limited number of
slots.
kern/arch/riscv/bitmask.h
kern/arch/x86/bitmask.h
kern/include/atomic.h
kern/src/atomic.c