6.8-stable review patch. If anyone has any objections, please let me know. ------------------ From: Wedson Almeida Filho <walmeida@xxxxxxxxxxxxx> commit df70d04d56975f527b9c965322cf56e245909071 upstream. In preparation for requiring `Send` for `Module` implementations in the next patch. Cc: FUJITA Tomonori <fujita.tomonori@xxxxxxxxx> Cc: Trevor Gross <tmgross@xxxxxxxxx> Cc: netdev@xxxxxxxxxxxxxxx Signed-off-by: Wedson Almeida Filho <walmeida@xxxxxxxxxxxxx> Reviewed-by: Alice Ryhl <aliceryhl@xxxxxxxxxx> Link: https://lore.kernel.org/r/20240328195457.225001-2-wedsonaf@xxxxxxxxx Signed-off-by: Miguel Ojeda <ojeda@xxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- 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(