diff --git a/rtic-common/src/lib.rs b/rtic-common/src/lib.rs index 03d0306373..2dd96731c2 100644 --- a/rtic-common/src/lib.rs +++ b/rtic-common/src/lib.rs @@ -1,4 +1,4 @@ -//! Crate +//! Utility structs that can be useful to other subcrates. #![no_std] #![deny(missing_docs)] diff --git a/rtic-common/src/wait_queue.rs b/rtic-common/src/wait_queue.rs index b1aa775714..3056672046 100644 --- a/rtic-common/src/wait_queue.rs +++ b/rtic-common/src/wait_queue.rs @@ -1,4 +1,4 @@ -//! ... +//! A wait queue implementation using a doubly linked list. use core::marker::PhantomPinned; use core::pin::Pin; @@ -10,7 +10,10 @@ use critical_section as cs; /// A helper definition of a wait queue. pub type WaitQueue = LinkedList; -/// A FIFO linked list for a wait queue. +/// An atomic, doubly linked, FIFO list for a wait queue. +/// +/// Atomicity is guaranteed by short [`critical_section`]s, so this list is _not_ lock free, +/// but it will not deadlock. pub struct LinkedList { head: AtomicPtr>, // UnsafeCell<*mut Link> tail: AtomicPtr>,