mirror of
https://github.com/torvalds/linux.git
synced 2026-05-14 01:08:22 +02:00
rust: regulator: implement Send and Sync for Regulator<T>
Sending a &Regulator<T> to another thread is safe, as the regulator core will properly handle the locking for us. Additionally, there are no restrictions that prevents sending a Regulator<T> to another thread. Given these two facts, implement Send and Sync. Signed-off-by: Daniel Almeida <daniel.almeida@collabora.com> Link: https://patch.msgid.link/20250729-regulator-send-sync-v1-2-8bcbd546b940@collabora.com Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Reviewed-by: Alice Ryhl <aliceryhl@google.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
f7fbf3091f
commit
9a200cbdb5
|
|
@ -398,6 +398,14 @@ fn drop(&mut self) {
|
|||
}
|
||||
}
|
||||
|
||||
// SAFETY: It is safe to send a `Regulator<T>` across threads. In particular, a
|
||||
// Regulator<T> can be dropped from any thread.
|
||||
unsafe impl<T: RegulatorState> Send for Regulator<T> {}
|
||||
|
||||
// SAFETY: It is safe to send a &Regulator<T> across threads because the C side
|
||||
// handles its own locking.
|
||||
unsafe impl<T: RegulatorState> Sync for Regulator<T> {}
|
||||
|
||||
/// A voltage.
|
||||
///
|
||||
/// This type represents a voltage value in microvolts.
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user