| From df70d04d56975f527b9c965322cf56e245909071 Mon Sep 17 00:00:00 2001 |
| From: Wedson Almeida Filho <walmeida@microsoft.com> |
| Date: Thu, 28 Mar 2024 16:54:53 -0300 |
| Subject: rust: phy: implement `Send` for `Registration` |
| |
| From: Wedson Almeida Filho <walmeida@microsoft.com> |
| |
| commit df70d04d56975f527b9c965322cf56e245909071 upstream. |
| |
| 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> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| rust/kernel/net/phy.rs | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| --- 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( |