kernel - More high-process-count fixes
commitf26f7bb30cb9b9d9d1b0e95e16ac339df40c4d8b
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 16 Aug 2017 04:23:14 +0000 (15 21:23 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 16 Aug 2017 04:23:14 +0000 (15 21:23 -0700)
tree532cf6c8c9623739db5e4777dd309575b132bd6b
parent7df82bbe6aadd740b9a45f12e1bce1bf3a237db7
kernel - More high-process-count fixes

* The recent tsleep/wakeup work allows multiple cpumasks to associate with
  the same pcpu sleep queue.  This created a degenerate condition where
  the cpu bit would not get cleared in all masks, causing spurious IPIs
  to be sent to the cpu.

  Fixed by ensuring that the bit is cleared after receiving an IPI, if the
  queue is found to be empty.  That is, we allow spurious IPIs to happen,
  but ensure that the condition is cleared so the same driving event does
  not cause additional ones.

* Remove debugging kprintf()s from usched_dfly that were not intended to
  be committed.

* Cleanup the csprng code style a bit and add some missing parenthesis.
sys/kern/kern_synch.c
sys/kern/subr_csprng.c
sys/kern/usched_dfly.c