[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a81b9b4a-d2c3-3136-9113-4568f2a87e97@gmail.com>
Date: Wed, 9 Aug 2023 14:12:18 +0300
From: Tariq Toukan <ttoukan.linux@...il.com>
To: Petr Pavlu <petr.pavlu@...e.com>, tariqt@...dia.com,
yishaih@...dia.com, leon@...nel.org
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, jgg@...pe.ca, netdev@...r.kernel.org,
linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next 00/10] Convert mlx4 to use auxiliary bus
On 04/08/2023 18:05, Petr Pavlu wrote:
> This series converts the mlx4 drivers to use auxiliary bus, similarly to
> how mlx5 was converted [1]. The first 6 patches are preparatory changes,
> the remaining 4 are the final conversion.
>
> Initial motivation for this change was to address a problem related to
> loading mlx4_en/mlx4_ib by mlx4_core using request_module_nowait(). When
> doing such a load in initrd, the operation is asynchronous to any init
> control and can get unexpectedly affected/interrupted by an eventual
> root switch. Using an auxiliary bus leaves these module loads to udevd
> which better integrates with systemd processing. [2]
>
> General benefit is to get rid of custom interface logic and instead use
> a common facility available for this task. An obvious risk is that some
> new bug is introduced by the conversion.
>
> Leon Romanovsky was kind enough to check for me that the series passes
> their verification tests.
>
> [1] https://lore.kernel.org/netdev/20201101201542.2027568-1-leon@kernel.org/
> [2] https://lore.kernel.org/netdev/0a361ac2-c6bd-2b18-4841-b1b991f0635e@suse.com/
>
> Petr Pavlu (10):
> mlx4: Get rid of the mlx4_interface.get_dev callback
> mlx4: Rename member mlx4_en_dev.nb to netdev_nb
> mlx4: Replace the mlx4_interface.event callback with a notifier
> mlx4: Get rid of the mlx4_interface.activate callback
> mlx4: Move the bond work to the core driver
> mlx4: Avoid resetting MLX4_INTFF_BONDING per driver
> mlx4: Register mlx4 devices to an auxiliary virtual bus
> mlx4: Connect the ethernet part to the auxiliary bus
> mlx4: Connect the infiniband part to the auxiliary bus
> mlx4: Delete custom device management logic
>
> drivers/infiniband/hw/mlx4/main.c | 207 ++++++----
> drivers/infiniband/hw/mlx4/mlx4_ib.h | 2 +
> drivers/net/ethernet/mellanox/mlx4/Kconfig | 1 +
> drivers/net/ethernet/mellanox/mlx4/en_main.c | 141 ++++---
> .../net/ethernet/mellanox/mlx4/en_netdev.c | 64 +---
> drivers/net/ethernet/mellanox/mlx4/intf.c | 361 ++++++++++++------
> drivers/net/ethernet/mellanox/mlx4/main.c | 110 ++++--
> drivers/net/ethernet/mellanox/mlx4/mlx4.h | 16 +-
> drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | 4 +-
> include/linux/mlx4/device.h | 20 +
> include/linux/mlx4/driver.h | 42 +-
> 11 files changed, 572 insertions(+), 396 deletions(-)
>
>
> base-commit: 86b7e033d684a9d4ca20ad8e6f8b9300cf99668f
For the series:
Acked-by: Tariq Toukan <tariqt@...dia.com>
Powered by blists - more mailing lists