ostd/sync/mod.rs
1// SPDX-License-Identifier: MPL-2.0
2//! Useful synchronization primitives.
3mod guard;
4//mod mutex;
5mod rcu;
6mod rwarc;
7mod rwlock;
8//mod rwmutex;
9mod spin;
10mod wait;
11//pub(crate) use self::rcu::finish_grace_period;
12pub use self::{
13 guard::{GuardTransfer, LocalIrqDisabled, PreemptDisabled, SpinGuardian, /*WriteIrqDisabled*/},
14 //mutex::{ArcMutexGuard, Mutex, MutexGuard},
15 rcu::{non_null /*, Rcu, RcuDrop, RcuOption, RcuOptionReadGuard, RcuReadGuard*/},
16 rwarc::{RoArc, RwArc},
17 rwlock::{RwLock, RwLockReadGuard, RwLockUpgradeableGuard, RwLockWriteGuard}, /*
18 rwmutex::{
19 ArcRwMutexReadGuard, ArcRwMutexUpgradeableGuard, ArcRwMutexWriteGuard, RwMutex,
20 RwMutexReadGuard, RwMutexUpgradeableGuard, RwMutexWriteGuard,
21 },*/
22 spin::{SpinLock, SpinLockGuard},
23 //wait::{WaitQueue, Waiter, Waker},
24};
25/*
26pub(crate) fn init() {
27 rcu::init();
28}*/