diff options
author | Wedson Almeida Filho <walmeida@microsoft.com> | 2024-03-28 20:54:53 +0100 |
---|---|---|
committer | Miguel Ojeda <ojeda@kernel.org> | 2024-04-23 00:14:05 +0200 |
commit | df70d04d56975f527b9c965322cf56e245909071 (patch) | |
tree | a66ef97ebeb64be6f862e4d0e8c8dc97aacb2235 | |
parent | rust: make mutually exclusive with CFI_CLANG (diff) | |
download | linux-df70d04d56975f527b9c965322cf56e245909071.tar.xz linux-df70d04d56975f527b9c965322cf56e245909071.zip |
rust: phy: implement `Send` for `Registration`
In preparation for requiring `Send` for `Module` implementations in the
next patch.
Cc: FUJITA Tomonori <fujita.tomonori@gmail.com>
Cc: Trevor Gross <tmgross@umich.edu>
Cc: netdev@vger.kernel.org
Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Link: https://lore.kernel.org/r/20240328195457.225001-2-wedsonaf@gmail.com
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
-rw-r--r-- | rust/kernel/net/phy.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/rust/kernel/net/phy.rs b/rust/kernel/net/phy.rs index 96e09c6e8530..265d0e1c1371 100644 --- a/rust/kernel/net/phy.rs +++ b/rust/kernel/net/phy.rs @@ -640,6 +640,10 @@ pub struct Registration { drivers: Pin<&'static mut [DriverVTable]>, } +// SAFETY: The only action allowed in a `Registration` instance is dropping it, which is safe to do +// from any thread because `phy_drivers_unregister` can be called from any thread context. +unsafe impl Send for Registration {} + impl Registration { /// Registers a PHY driver. pub fn register( |