Re: [PATCH net-next V2 05/10] net/mlx5e: Prepare for using multiple TX doorbells
From: Simon Horman
Date: Wed Sep 17 2025 - 09:03:18 EST
On Tue, Sep 16, 2025 at 05:11:39PM +0300, Tariq Toukan wrote:
> From: Cosmin Ratiu <cratiu@xxxxxxxxxx>
>
> The driver allocates a single doorbell per device and uses
> it for all Send Queues (SQs). This can become a bottleneck due to the
> high number of concurrent MMIO accesses when ringing the same doorbell
> from many channels.
>
> This patch makes the doorbells used by channel queues configurable.
>
> mlx5e_channel_pick_doorbell() is added to select the doorbell to be used
> for a given channel, picking the default for now.
>
> When opening a channel, the selected doorbell is saved to the channel
> struct and used whenever channel-related queues are created.
>
> Finally, 'uar_page' is added to 'struct mlx5e_create_sq_param' to
> control which doorbell to use when allocating an SQ, since that can
> happen outside channel context (e.g. for PTP).
>
> Signed-off-by: Cosmin Ratiu <cratiu@xxxxxxxxxx>
> Reviewed-by: Dragos Tatulea <dtatulea@xxxxxxxxxx>
> Signed-off-by: Tariq Toukan <tariqt@xxxxxxxxxx>
Reviewed-by: Simon Horman <horms@xxxxxxxxxx>