Crate spinlock

source ·
Expand description

no_std spin lock implementation that can disable kernel local IRQs or preemption while locking.

Cargo Features

  • smp: Use in the multi-core environment. For single-core environment (without this feature), the lock state is unnecessary and optimized out. CPU can always get the lock if we follow the proper guard in use. By default, this feature is disabled.

Structs

Type Aliases

  • A spin lock that disables kernel preemption and local IRQs while trying to lock, and re-enables it after unlocking.
  • A guard that provides mutable data access for SpinNoIrq.
  • A spin lock that disables kernel preemption while trying to lock, and re-enables it after unlocking.
  • A guard that provides mutable data access for SpinNoPreempt.
  • A raw spin lock that does nothing while trying to lock.
  • A guard that provides mutable data access for SpinRaw.