lib/power: power pmd errata with RTM and gcc-9

Message ID 20220309132221.18210-1-david.hunt@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series lib/power: power pmd errata with RTM and gcc-9 |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-mellanox-Performance success Performance Testing PASS
ci/intel-Testing success Testing PASS
ci/github-robot: build success github build: passed
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS

Commit Message

Hunt, David March 9, 2022, 1:22 p.m. UTC
  An errata exists where users may see reduced power savings when using
PMD Power Management. This issue occurs when compiling DPDK applications
with gcc-9 on platforms with TSX enabled. In rte_power_monitor_multi(),
the function may return without successfully starting the RTM
transaction (the _xbegin() fails).

Signed-off-by: David Hunt <david.hunt@intel.com>
---
 doc/guides/rel_notes/release_22_03.rst | 11 +++++++++++
 1 file changed, 11 insertions(+)
  

Comments

Thomas Monjalon March 16, 2022, 7:44 p.m. UTC | #1
09/03/2022 14:22, David Hunt:
> An errata exists where users may see reduced power savings when using
> PMD Power Management. This issue occurs when compiling DPDK applications
> with gcc-9 on platforms with TSX enabled. In rte_power_monitor_multi(),
> the function may return without successfully starting the RTM
> transaction (the _xbegin() fails).
> 
> Signed-off-by: David Hunt <david.hunt@intel.com>

Applied, thanks.

Is there a way to fix it or should we keep this errata forever?
  
Hunt, David March 22, 2022, 4:11 p.m. UTC | #2
On 16/3/2022 7:44 PM, Thomas Monjalon wrote:
> 09/03/2022 14:22, David Hunt:
>> An errata exists where users may see reduced power savings when using
>> PMD Power Management. This issue occurs when compiling DPDK applications
>> with gcc-9 on platforms with TSX enabled. In rte_power_monitor_multi(),
>> the function may return without successfully starting the RTM
>> transaction (the _xbegin() fails).
>>
>> Signed-off-by: David Hunt <david.hunt@intel.com>
> Applied, thanks.
>
> Is there a way to fix it or should we keep this errata forever?


If it's a gcc-9 issue, then we'll have to get the assistance to fix. 
I've send the relevant information on to the gcc folks for analysis, and 
I'll follow up at regular intervals.

I would hope to be able to remove the errata within the next one or two 
releases.
  

Patch

diff --git a/doc/guides/rel_notes/release_22_03.rst b/doc/guides/rel_notes/release_22_03.rst
index 60e5b4f9aa..34d6f34dba 100644
--- a/doc/guides/rel_notes/release_22_03.rst
+++ b/doc/guides/rel_notes/release_22_03.rst
@@ -313,6 +313,17 @@  Known Issues
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* **Possible reduced power saving with PMD Power Management.**
+
+  Users may see reduced power savings when using PMD Power Management.
+  This issue occurs when compiling DPDK applications with gcc-9 on
+  platforms with TSX enabled. In rte_power_monitor_multi(), the
+  function may return without successfully starting the RTM
+  transaction (the _xbegin() fails).
+
+  There are three workarounds for this issue. Either build DPDK with gcc-11
+  or newer, build with shared libraries, or build DPDK with fewer drivers.
+
 
 Tested Platforms
 ----------------