[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250917125443.GG394836@horms.kernel.org>
Date: Wed, 17 Sep 2025 13:54:43 +0100
From: Simon Horman <horms@...nel.org>
To: Tariq Toukan <tariqt@...dia.com>
Cc: Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Andrew Lunn <andrew+netdev@...n.ch>,
"David S. Miller" <davem@...emloft.net>,
Jiri Pirko <jiri@...nulli.us>, Jonathan Corbet <corbet@....net>,
Leon Romanovsky <leon@...nel.org>, Jason Gunthorpe <jgg@...pe.ca>,
Saeed Mahameed <saeedm@...dia.com>, Mark Bloch <mbloch@...dia.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>, netdev@...r.kernel.org,
linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-rdma@...r.kernel.org, bpf@...r.kernel.org,
Gal Pressman <gal@...dia.com>, Cosmin Ratiu <cratiu@...dia.com>,
Dragos Tatulea <dtatulea@...dia.com>, Jiri Pirko <jiri@...dia.com>,
Jason Gunthorpe <jgg@...dia.com>
Subject: Re: [PATCH net-next V2 06/10] net/mlx5e: Prepare for using different
CQ doorbells
On Tue, Sep 16, 2025 at 05:11:40PM +0300, Tariq Toukan wrote:
> From: Cosmin Ratiu <cratiu@...dia.com>
>
> Completion queues (CQs) in mlx5 use the same global doorbell, which may
> become contended when accessed concurrently from many cores.
>
> This patch prepares the CQ management code for supporting different
> doorbells per CQ. This will be used in downstream patches to allow
> separate doorbells to be used by channels CQs.
>
> The main change is moving the 'uar' pointer from struct mlx5_core_cq to
> struct mlx5e_cq, as the uar page to be used is better off stored
> directly there. Other users of mlx5_core_cq also store the UAR to be
> used separately and therefore the pointer being removed is dead weight
> for them. As evidence, in this patch there are two users which set the
> mcq.uar pointer but didn't use it, Software Steering and old Innova CQ
> creation code. Instead, they rang the doorbell directly from another
> pointer.
>
> The 'uar' pointer added to struct mlx5e_cq remains in a hot cacheline
> (as before), because it may get accessed for each packet.
>
> Signed-off-by: Cosmin Ratiu <cratiu@...dia.com>
> Reviewed-by: Dragos Tatulea <dtatulea@...dia.com>
> Signed-off-by: Tariq Toukan <tariqt@...dia.com>
Reviewed-by: Simon Horman <horms@...nel.org>
Powered by blists - more mailing lists