[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