]> www.infradead.org Git - users/jedix/linux-maple.git/commit
net/mlx5: HWS, prevent rehash from filling up the queues
authorYevgeny Kliteynik <kliteyn@nvidia.com>
Sun, 17 Aug 2025 20:23:20 +0000 (23:23 +0300)
committerJakub Kicinski <kuba@kernel.org>
Wed, 20 Aug 2025 02:35:13 +0000 (19:35 -0700)
commit1a72298d27ce4d41b3fd405f6921e8711815767a
tree5e7cecc8ac03c4700e5f00f0b9bf6a62576ca96c
parent4a842b1bf18a32ee0c25dd6dd98728b786a76fe4
net/mlx5: HWS, prevent rehash from filling up the queues

While moving the rules during rehash, CQ is not drained. The flush
and drain happens only when all the rules of a certain queue have been
moved. This behaviour can lead to accumulating large quantity of rules
that haven't got their completion yet, and eventually will fill up
the queue and will cause the rehash to fail.

Fix this problem by requiring drain once the number of outstanding
completions reaches a certain threshold.

Fixes: ef94799a8741 ("net/mlx5: HWS, rework rehash loop")
Signed-off-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Reviewed-by: Vlad Dogaru <vdogaru@nvidia.com>
Signed-off-by: Mark Bloch <mbloch@nvidia.com>
Link: https://patch.msgid.link/20250817202323.308604-5-mbloch@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/steering/hws/bwc.c