[PATCH v2] net/mlx5: fix spurious CPU wakeups caused by invalid CQE
Raslan Darawsheh
rasland at nvidia.com
Sun Nov 16 16:30:45 CET 2025
Hi,
On 11/11/2025 5:40 AM, Sivaprasad Tummala wrote:
> Previously, the PMD used a common monitor callback to determine
> CQE ownership for power-aware polling. However, when a CQE contained
> an invalid opcode(MLX5_CQE_INVALID), ownership bit was not reliable.
> As a result, the monitor condition could falsely indicate CQE
> availability and cause the CPU to wake up unnecessarily during
> low traffic periods.
>
> This resulted in spurious wakeups in monitor-wait mode and reduced
> the expected power savings, as cores exited the sleep state even
> when no valid CQEs were available.
>
> This patch introduces a dedicated callback that skips invalid CQEs
> and optimizes power efficiency by preventing false wakeups caused
> by hardware-owned or invalid entries.
>
> Fixes: a8f0df6bf98d ("net/mlx5: support power monitoring")
> Cc: akozyrev at nvidia.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Sivaprasad Tummala <sivaprasad.tummala at amd.com>
>
> v2:
> - Updated CQE opcode check logic — replaced XOR with comparison
> - Renamed variable match to sw_owned for clarity
> - Updated CQE ownership check order
Patch applied to next-net-mlx,
Kindest regards
Raslan Darawsheh
More information about the dev
mailing list