Skip to contentSkip to conversation

async flow rules affects pmd power management

Bug 946 [email protected] 1 participant 1 message Mar 2, 2022

lore
Share & tools
lore
#0 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=946

Bug ID: 946
Summary: async flow rules affects pmd power management
Product: DPDK
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: eventdev
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---

pmd power management functionality when using RTM transactions never enters power saving mode.

When testing using l3fwd-power to test the power_pmd functionality for DPDK 22.03 rc2, I noticed that the power saved in this DPDK version was significantly reduced.
I tried multiple BIOS/OS/kernel combinations, but then I tried DPDK 21.11, where the problem went away.

I then did a git bisect, which narrowed down the problem to commit 197e820c6685993ad75387de79707c81b5e1fc10 - "ethdev: bring in async queue-based flow rules operations"

The patch has the effect of causing the RTM transaction in rte_power_monitor_multi(), in the C file lib/eal/x86/rte_power_intrinsics.c, to always fail at rte_xbegin, so we never get to the rte_power_pause, thereby we never get to save any power.
If we revert just this patch, then the rte_xbegin succeeds, and we get to call rte_power_pause, and save power.

So this patch is now causing rte_power_monitor_multi() to fail.

I'm not sure what the solution is, but it may be possible to re-work the async flow rules patch, or it may be possible to re-work the pmd_power_management code to avoid the impact of the flow rules patch. Investigation is ongoing.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.