kernel - Enhance CPUMASK and atomic ops
authorMatthew Dillon <dillon@apollo.backplane.com>
Fri, 15 Jul 2016 20:20:32 +0000 (13:20 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Fri, 15 Jul 2016 22:09:55 +0000 (15:09 -0700)
commita556fd061e70b61d76ac9116d2e0577c7e0d86b2
treef4dfe8c821335f6a1fb944b97c162bb587f72d08
parentaf25f1634cccfbdf3a5b1ca7a15264fc2e69a695
kernel - Enhance CPUMASK and atomic ops

* Add atomic_testandset_long()
  Add atomic_testandclear_long()

* Add atomic_cmpxchg_long_test().  This is for debugging only, it uses the
  'z' flag instead of comparing old-vs-result.  But they should have the
  same effect.

* Add macros for atomic_store_rel_cpumask() and atomic_load_acq_cpumask().

* Add ATOMIC_CPUMASK_TESTANDSET()
  Add ATOMIC_CPUMASK_TESTANDCLR()
  Add ATOMIC_CPUMASK_COPY()
sys/cpu/x86_64/include/atomic.h
sys/cpu/x86_64/include/types.h