Added lock-asserts into cv_signal and cv_broadcast.  Set cv_wakeup, cv_broadcast, and cv_sleepers to volatile