DPDK patches and discussions
 help / color / mirror / Atom feed
From: Anatoly Burakov <anatoly.burakov@intel.com>
To: dev@dpdk.org
Cc: Jan Viktorin <viktorin@rehivetech.com>,
	Ruifeng Wang <ruifeng.wang@arm.com>,
	Jerin Jacob <jerinj@marvell.com>,
	David Christensen <drc@linux.vnet.ibm.com>,
	Ray Kinsella <mdr@ashroe.eu>, Neil Horman <nhorman@tuxdriver.com>,
	Bruce Richardson <bruce.richardson@intel.com>,
	Konstantin Ananyev <konstantin.ananyev@intel.com>,
	thomas@monjalon.net, timothy.mcdaniel@intel.com,
	david.hunt@intel.com, chris.macnamara@intel.com
Subject: [dpdk-dev] [PATCH v15 01/11] eal: uninline power intrinsics
Date: Mon, 11 Jan 2021 14:58:46 +0000	[thread overview]
Message-ID: <18244c0453adf9a216f88e8edc14f1e68b53053b.1610377084.git.anatoly.burakov@intel.com> (raw)
In-Reply-To: <cover.1610377084.git.anatoly.burakov@intel.com>

Currently, power intrinsics are inline functions. Make them part of the
ABI so that we can have various internal data associated with them
without exposing said data to the outside world.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---

Notes:
    v14:
    - Fix compile issues on ARM and PPC64 by moving implementations to .c files

 .../arm/include/rte_power_intrinsics.h        |  40 ------
 lib/librte_eal/arm/meson.build                |   1 +
 lib/librte_eal/arm/rte_power_intrinsics.c     |  42 ++++++
 .../include/generic/rte_power_intrinsics.h    |   6 +-
 .../ppc/include/rte_power_intrinsics.h        |  40 ------
 lib/librte_eal/ppc/meson.build                |   1 +
 lib/librte_eal/ppc/rte_power_intrinsics.c     |  42 ++++++
 lib/librte_eal/version.map                    |   5 +
 .../x86/include/rte_power_intrinsics.h        | 115 -----------------
 lib/librte_eal/x86/meson.build                |   1 +
 lib/librte_eal/x86/rte_power_intrinsics.c     | 120 ++++++++++++++++++
 11 files changed, 215 insertions(+), 198 deletions(-)
 create mode 100644 lib/librte_eal/arm/rte_power_intrinsics.c
 create mode 100644 lib/librte_eal/ppc/rte_power_intrinsics.c
 create mode 100644 lib/librte_eal/x86/rte_power_intrinsics.c

diff --git a/lib/librte_eal/arm/include/rte_power_intrinsics.h b/lib/librte_eal/arm/include/rte_power_intrinsics.h
index a4a1bc1159..9e498e9ebf 100644
--- a/lib/librte_eal/arm/include/rte_power_intrinsics.h
+++ b/lib/librte_eal/arm/include/rte_power_intrinsics.h
@@ -13,46 +13,6 @@ extern "C" {
 
 #include "generic/rte_power_intrinsics.h"
 
-/**
- * This function is not supported on ARM.
- */
-static inline void
-rte_power_monitor(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz)
-{
-	RTE_SET_USED(p);
-	RTE_SET_USED(expected_value);
-	RTE_SET_USED(value_mask);
-	RTE_SET_USED(tsc_timestamp);
-	RTE_SET_USED(data_sz);
-}
-
-/**
- * This function is not supported on ARM.
- */
-static inline void
-rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz, rte_spinlock_t *lck)
-{
-	RTE_SET_USED(p);
-	RTE_SET_USED(expected_value);
-	RTE_SET_USED(value_mask);
-	RTE_SET_USED(tsc_timestamp);
-	RTE_SET_USED(lck);
-	RTE_SET_USED(data_sz);
-}
-
-/**
- * This function is not supported on ARM.
- */
-static inline void
-rte_power_pause(const uint64_t tsc_timestamp)
-{
-	RTE_SET_USED(tsc_timestamp);
-}
-
 #ifdef __cplusplus
 }
 #endif
diff --git a/lib/librte_eal/arm/meson.build b/lib/librte_eal/arm/meson.build
index d62875ebae..6ec53ea03a 100644
--- a/lib/librte_eal/arm/meson.build
+++ b/lib/librte_eal/arm/meson.build
@@ -7,4 +7,5 @@ sources += files(
 	'rte_cpuflags.c',
 	'rte_cycles.c',
 	'rte_hypervisor.c',
+	'rte_power_intrinsics.c',
 )
diff --git a/lib/librte_eal/arm/rte_power_intrinsics.c b/lib/librte_eal/arm/rte_power_intrinsics.c
new file mode 100644
index 0000000000..e5a49facb4
--- /dev/null
+++ b/lib/librte_eal/arm/rte_power_intrinsics.c
@@ -0,0 +1,42 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2021 Intel Corporation
+ */
+
+#include "rte_power_intrinsics.h"
+
+/**
+ * This function is not supported on ARM.
+ */
+void rte_power_monitor(const volatile void *p, const uint64_t expected_value,
+		const uint64_t value_mask, const uint64_t tsc_timestamp,
+		const uint8_t data_sz)
+{
+	RTE_SET_USED(p);
+	RTE_SET_USED(expected_value);
+	RTE_SET_USED(value_mask);
+	RTE_SET_USED(tsc_timestamp);
+	RTE_SET_USED(data_sz);
+}
+
+/**
+ * This function is not supported on ARM.
+ */
+void rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
+		const uint64_t value_mask, const uint64_t tsc_timestamp,
+		const uint8_t data_sz, rte_spinlock_t *lck)
+{
+	RTE_SET_USED(p);
+	RTE_SET_USED(expected_value);
+	RTE_SET_USED(value_mask);
+	RTE_SET_USED(tsc_timestamp);
+	RTE_SET_USED(lck);
+	RTE_SET_USED(data_sz);
+}
+
+/**
+ * This function is not supported on ARM.
+ */
+void rte_power_pause(const uint64_t tsc_timestamp)
+{
+	RTE_SET_USED(tsc_timestamp);
+}
diff --git a/lib/librte_eal/include/generic/rte_power_intrinsics.h b/lib/librte_eal/include/generic/rte_power_intrinsics.h
index dd520d90fa..67977bd511 100644
--- a/lib/librte_eal/include/generic/rte_power_intrinsics.h
+++ b/lib/librte_eal/include/generic/rte_power_intrinsics.h
@@ -52,7 +52,7 @@
  *   to undefined result.
  */
 __rte_experimental
-static inline void rte_power_monitor(const volatile void *p,
+void rte_power_monitor(const volatile void *p,
 		const uint64_t expected_value, const uint64_t value_mask,
 		const uint64_t tsc_timestamp, const uint8_t data_sz);
 
@@ -97,7 +97,7 @@ static inline void rte_power_monitor(const volatile void *p,
  *   wakes up.
  */
 __rte_experimental
-static inline void rte_power_monitor_sync(const volatile void *p,
+void rte_power_monitor_sync(const volatile void *p,
 		const uint64_t expected_value, const uint64_t value_mask,
 		const uint64_t tsc_timestamp, const uint8_t data_sz,
 		rte_spinlock_t *lck);
@@ -118,6 +118,6 @@ static inline void rte_power_monitor_sync(const volatile void *p,
  *   architecture-dependent.
  */
 __rte_experimental
-static inline void rte_power_pause(const uint64_t tsc_timestamp);
+void rte_power_pause(const uint64_t tsc_timestamp);
 
 #endif /* _RTE_POWER_INTRINSIC_H_ */
diff --git a/lib/librte_eal/ppc/include/rte_power_intrinsics.h b/lib/librte_eal/ppc/include/rte_power_intrinsics.h
index 4ed03d521f..c0e9ac279f 100644
--- a/lib/librte_eal/ppc/include/rte_power_intrinsics.h
+++ b/lib/librte_eal/ppc/include/rte_power_intrinsics.h
@@ -13,46 +13,6 @@ extern "C" {
 
 #include "generic/rte_power_intrinsics.h"
 
-/**
- * This function is not supported on PPC64.
- */
-static inline void
-rte_power_monitor(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz)
-{
-	RTE_SET_USED(p);
-	RTE_SET_USED(expected_value);
-	RTE_SET_USED(value_mask);
-	RTE_SET_USED(tsc_timestamp);
-	RTE_SET_USED(data_sz);
-}
-
-/**
- * This function is not supported on PPC64.
- */
-static inline void
-rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz, rte_spinlock_t *lck)
-{
-	RTE_SET_USED(p);
-	RTE_SET_USED(expected_value);
-	RTE_SET_USED(value_mask);
-	RTE_SET_USED(tsc_timestamp);
-	RTE_SET_USED(lck);
-	RTE_SET_USED(data_sz);
-}
-
-/**
- * This function is not supported on PPC64.
- */
-static inline void
-rte_power_pause(const uint64_t tsc_timestamp)
-{
-	RTE_SET_USED(tsc_timestamp);
-}
-
 #ifdef __cplusplus
 }
 #endif
diff --git a/lib/librte_eal/ppc/meson.build b/lib/librte_eal/ppc/meson.build
index f4b6d95c42..43c46542fb 100644
--- a/lib/librte_eal/ppc/meson.build
+++ b/lib/librte_eal/ppc/meson.build
@@ -7,4 +7,5 @@ sources += files(
 	'rte_cpuflags.c',
 	'rte_cycles.c',
 	'rte_hypervisor.c',
+	'rte_power_intrinsics.c',
 )
diff --git a/lib/librte_eal/ppc/rte_power_intrinsics.c b/lib/librte_eal/ppc/rte_power_intrinsics.c
new file mode 100644
index 0000000000..785effabe6
--- /dev/null
+++ b/lib/librte_eal/ppc/rte_power_intrinsics.c
@@ -0,0 +1,42 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2021 Intel Corporation
+ */
+
+#include "rte_power_intrinsics.h"
+
+/**
+ * This function is not supported on PPC64.
+ */
+void rte_power_monitor(const volatile void *p, const uint64_t expected_value,
+		       const uint64_t value_mask, const uint64_t tsc_timestamp,
+		       const uint8_t data_sz)
+{
+	RTE_SET_USED(p);
+	RTE_SET_USED(expected_value);
+	RTE_SET_USED(value_mask);
+	RTE_SET_USED(tsc_timestamp);
+	RTE_SET_USED(data_sz);
+}
+
+/**
+ * This function is not supported on PPC64.
+ */
+void rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
+			    const uint64_t value_mask, const uint64_t tsc_timestamp,
+			    const uint8_t data_sz, rte_spinlock_t *lck)
+{
+	RTE_SET_USED(p);
+	RTE_SET_USED(expected_value);
+	RTE_SET_USED(value_mask);
+	RTE_SET_USED(tsc_timestamp);
+	RTE_SET_USED(lck);
+	RTE_SET_USED(data_sz);
+}
+
+/**
+ * This function is not supported on PPC64.
+ */
+void rte_power_pause(const uint64_t tsc_timestamp)
+{
+	RTE_SET_USED(tsc_timestamp);
+}
diff --git a/lib/librte_eal/version.map b/lib/librte_eal/version.map
index 354c068f31..31bf76ae81 100644
--- a/lib/librte_eal/version.map
+++ b/lib/librte_eal/version.map
@@ -403,6 +403,11 @@ EXPERIMENTAL {
 	rte_service_lcore_may_be_active;
 	rte_vect_get_max_simd_bitwidth;
 	rte_vect_set_max_simd_bitwidth;
+
+	# added in 21.02
+	rte_power_monitor;
+	rte_power_monitor_sync;
+	rte_power_pause;
 };
 
 INTERNAL {
diff --git a/lib/librte_eal/x86/include/rte_power_intrinsics.h b/lib/librte_eal/x86/include/rte_power_intrinsics.h
index c7d790c854..e4c2b87f73 100644
--- a/lib/librte_eal/x86/include/rte_power_intrinsics.h
+++ b/lib/librte_eal/x86/include/rte_power_intrinsics.h
@@ -13,121 +13,6 @@ extern "C" {
 
 #include "generic/rte_power_intrinsics.h"
 
-static inline uint64_t
-__rte_power_get_umwait_val(const volatile void *p, const uint8_t sz)
-{
-	switch (sz) {
-	case sizeof(uint8_t):
-		return *(const volatile uint8_t *)p;
-	case sizeof(uint16_t):
-		return *(const volatile uint16_t *)p;
-	case sizeof(uint32_t):
-		return *(const volatile uint32_t *)p;
-	case sizeof(uint64_t):
-		return *(const volatile uint64_t *)p;
-	default:
-		/* this is an intrinsic, so we can't have any error handling */
-		RTE_ASSERT(0);
-		return 0;
-	}
-}
-
-/**
- * This function uses UMONITOR/UMWAIT instructions and will enter C0.2 state.
- * For more information about usage of these instructions, please refer to
- * Intel(R) 64 and IA-32 Architectures Software Developer's Manual.
- */
-static inline void
-rte_power_monitor(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz)
-{
-	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
-	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
-	/*
-	 * we're using raw byte codes for now as only the newest compiler
-	 * versions support this instruction natively.
-	 */
-
-	/* set address for UMONITOR */
-	asm volatile(".byte 0xf3, 0x0f, 0xae, 0xf7;"
-			:
-			: "D"(p));
-
-	if (value_mask) {
-		const uint64_t cur_value = __rte_power_get_umwait_val(p, data_sz);
-		const uint64_t masked = cur_value & value_mask;
-
-		/* if the masked value is already matching, abort */
-		if (masked == expected_value)
-			return;
-	}
-	/* execute UMWAIT */
-	asm volatile(".byte 0xf2, 0x0f, 0xae, 0xf7;"
-			: /* ignore rflags */
-			: "D"(0), /* enter C0.2 */
-			  "a"(tsc_l), "d"(tsc_h));
-}
-
-/**
- * This function uses UMONITOR/UMWAIT instructions and will enter C0.2 state.
- * For more information about usage of these instructions, please refer to
- * Intel(R) 64 and IA-32 Architectures Software Developer's Manual.
- */
-static inline void
-rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
-		const uint64_t value_mask, const uint64_t tsc_timestamp,
-		const uint8_t data_sz, rte_spinlock_t *lck)
-{
-	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
-	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
-	/*
-	 * we're using raw byte codes for now as only the newest compiler
-	 * versions support this instruction natively.
-	 */
-
-	/* set address for UMONITOR */
-	asm volatile(".byte 0xf3, 0x0f, 0xae, 0xf7;"
-			:
-			: "D"(p));
-
-	if (value_mask) {
-		const uint64_t cur_value = __rte_power_get_umwait_val(p, data_sz);
-		const uint64_t masked = cur_value & value_mask;
-
-		/* if the masked value is already matching, abort */
-		if (masked == expected_value)
-			return;
-	}
-	rte_spinlock_unlock(lck);
-
-	/* execute UMWAIT */
-	asm volatile(".byte 0xf2, 0x0f, 0xae, 0xf7;"
-			: /* ignore rflags */
-			: "D"(0), /* enter C0.2 */
-			  "a"(tsc_l), "d"(tsc_h));
-
-	rte_spinlock_lock(lck);
-}
-
-/**
- * This function uses TPAUSE instruction  and will enter C0.2 state. For more
- * information about usage of this instruction, please refer to Intel(R) 64 and
- * IA-32 Architectures Software Developer's Manual.
- */
-static inline void
-rte_power_pause(const uint64_t tsc_timestamp)
-{
-	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
-	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
-
-	/* execute TPAUSE */
-	asm volatile(".byte 0x66, 0x0f, 0xae, 0xf7;"
-		: /* ignore rflags */
-		: "D"(0), /* enter C0.2 */
-		  "a"(tsc_l), "d"(tsc_h));
-}
-
 #ifdef __cplusplus
 }
 #endif
diff --git a/lib/librte_eal/x86/meson.build b/lib/librte_eal/x86/meson.build
index e78f29002e..dfd42dee0c 100644
--- a/lib/librte_eal/x86/meson.build
+++ b/lib/librte_eal/x86/meson.build
@@ -8,4 +8,5 @@ sources += files(
 	'rte_cycles.c',
 	'rte_hypervisor.c',
 	'rte_spinlock.c',
+	'rte_power_intrinsics.c',
 )
diff --git a/lib/librte_eal/x86/rte_power_intrinsics.c b/lib/librte_eal/x86/rte_power_intrinsics.c
new file mode 100644
index 0000000000..34c5fd9c3e
--- /dev/null
+++ b/lib/librte_eal/x86/rte_power_intrinsics.c
@@ -0,0 +1,120 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2020 Intel Corporation
+ */
+
+#include "rte_power_intrinsics.h"
+
+static inline uint64_t
+__get_umwait_val(const volatile void *p, const uint8_t sz)
+{
+	switch (sz) {
+	case sizeof(uint8_t):
+		return *(const volatile uint8_t *)p;
+	case sizeof(uint16_t):
+		return *(const volatile uint16_t *)p;
+	case sizeof(uint32_t):
+		return *(const volatile uint32_t *)p;
+	case sizeof(uint64_t):
+		return *(const volatile uint64_t *)p;
+	default:
+		/* this is an intrinsic, so we can't have any error handling */
+		RTE_ASSERT(0);
+		return 0;
+	}
+}
+
+/**
+ * This function uses UMONITOR/UMWAIT instructions and will enter C0.2 state.
+ * For more information about usage of these instructions, please refer to
+ * Intel(R) 64 and IA-32 Architectures Software Developer's Manual.
+ */
+void
+rte_power_monitor(const volatile void *p, const uint64_t expected_value,
+		const uint64_t value_mask, const uint64_t tsc_timestamp,
+		const uint8_t data_sz)
+{
+	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
+	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
+	/*
+	 * we're using raw byte codes for now as only the newest compiler
+	 * versions support this instruction natively.
+	 */
+
+	/* set address for UMONITOR */
+	asm volatile(".byte 0xf3, 0x0f, 0xae, 0xf7;"
+			:
+			: "D"(p));
+
+	if (value_mask) {
+		const uint64_t cur_value = __get_umwait_val(p, data_sz);
+		const uint64_t masked = cur_value & value_mask;
+
+		/* if the masked value is already matching, abort */
+		if (masked == expected_value)
+			return;
+	}
+	/* execute UMWAIT */
+	asm volatile(".byte 0xf2, 0x0f, 0xae, 0xf7;"
+			: /* ignore rflags */
+			: "D"(0), /* enter C0.2 */
+			  "a"(tsc_l), "d"(tsc_h));
+}
+
+/**
+ * This function uses UMONITOR/UMWAIT instructions and will enter C0.2 state.
+ * For more information about usage of these instructions, please refer to
+ * Intel(R) 64 and IA-32 Architectures Software Developer's Manual.
+ */
+void
+rte_power_monitor_sync(const volatile void *p, const uint64_t expected_value,
+		const uint64_t value_mask, const uint64_t tsc_timestamp,
+		const uint8_t data_sz, rte_spinlock_t *lck)
+{
+	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
+	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
+	/*
+	 * we're using raw byte codes for now as only the newest compiler
+	 * versions support this instruction natively.
+	 */
+
+	/* set address for UMONITOR */
+	asm volatile(".byte 0xf3, 0x0f, 0xae, 0xf7;"
+			:
+			: "D"(p));
+
+	if (value_mask) {
+		const uint64_t cur_value = __get_umwait_val(p, data_sz);
+		const uint64_t masked = cur_value & value_mask;
+
+		/* if the masked value is already matching, abort */
+		if (masked == expected_value)
+			return;
+	}
+	rte_spinlock_unlock(lck);
+
+	/* execute UMWAIT */
+	asm volatile(".byte 0xf2, 0x0f, 0xae, 0xf7;"
+			: /* ignore rflags */
+			: "D"(0), /* enter C0.2 */
+			  "a"(tsc_l), "d"(tsc_h));
+
+	rte_spinlock_lock(lck);
+}
+
+/**
+ * This function uses TPAUSE instruction  and will enter C0.2 state. For more
+ * information about usage of this instruction, please refer to Intel(R) 64 and
+ * IA-32 Architectures Software Developer's Manual.
+ */
+void
+rte_power_pause(const uint64_t tsc_timestamp)
+{
+	const uint32_t tsc_l = (uint32_t)tsc_timestamp;
+	const uint32_t tsc_h = (uint32_t)(tsc_timestamp >> 32);
+
+	/* execute TPAUSE */
+	asm volatile(".byte 0x66, 0x0f, 0xae, 0xf7;"
+			: /* ignore rflags */
+			: "D"(0), /* enter C0.2 */
+			"a"(tsc_l), "d"(tsc_h));
+}
-- 
2.25.1

  reply	other threads:[~2021-01-11 14:59 UTC|newest]

Thread overview: 421+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-27 17:02 [dpdk-dev] [RFC 0/6] Power-optimized RX for Ethernet devices Anatoly Burakov
2020-05-27 17:02 ` [dpdk-dev] [RFC 1/6] eal: add power management intrinsics Anatoly Burakov
2020-05-28 11:39   ` Ananyev, Konstantin
2020-05-28 14:40     ` Burakov, Anatoly
2020-05-28 14:58       ` Bruce Richardson
2020-05-28 15:38       ` Ananyev, Konstantin
2020-05-29  6:56         ` Jerin Jacob
2020-06-02 10:15           ` Ananyev, Konstantin
2020-06-03  6:22           ` Honnappa Nagarahalli
2020-06-03  6:31             ` Jerin Jacob
2020-11-02 11:09   ` [dpdk-dev] [PATCH v11 0/6] Add PMD power mgmt Liang Ma
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 1/6] ethdev: add simple power management API Liang Ma
2020-11-02 12:23       ` Burakov, Anatoly
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 2/6] power: add PMD power management API and callback Liang Ma
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 3/6] net/ixgbe: implement power management API Liang Ma
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 4/6] net/i40e: " Liang Ma
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 5/6] net/ice: " Liang Ma
2020-11-02 11:10     ` [dpdk-dev] [PATCH v11 6/6] examples/l3fwd-power: enable PMD power mgmt Liang Ma
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 00/11] Add PMD power management Anatoly Burakov
2020-12-17 16:12       ` David Marchand
2021-01-08 16:42         ` Burakov, Anatoly
2021-01-11  8:44           ` David Marchand
2021-01-11  8:52             ` David Marchand
2021-01-11 10:21               ` Burakov, Anatoly
2021-01-08 17:42       ` [dpdk-dev] [PATCH v13 " Anatoly Burakov
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 01/11] eal: uninline power intrinsics Anatoly Burakov
2021-01-12 15:54           ` Ananyev, Konstantin
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2021-01-08 19:58           ` Stephen Hemminger
2021-01-11 10:21             ` Burakov, Anatoly
2021-01-12 15:56           ` Ananyev, Konstantin
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 03/11] eal: change API of " Anatoly Burakov
2021-01-12 15:58           ` Ananyev, Konstantin
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 04/11] eal: remove sync version of power monitor Anatoly Burakov
2021-01-12 15:59           ` Ananyev, Konstantin
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 05/11] eal: add monitor wakeup function Anatoly Burakov
2021-01-12 16:02           ` Ananyev, Konstantin
2021-01-12 16:18             ` Burakov, Anatoly
2021-01-12 16:25               ` Burakov, Anatoly
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 06/11] ethdev: add simple power management API Anatoly Burakov
2021-01-09  8:04           ` Andrew Rybchenko
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 07/11] power: add PMD power management API and callback Anatoly Burakov
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 08/11] net/ixgbe: implement power management API Anatoly Burakov
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 09/11] net/i40e: " Anatoly Burakov
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 10/11] net/ice: " Anatoly Burakov
2021-01-08 17:42         ` [dpdk-dev] [PATCH v13 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-11 14:35         ` [dpdk-dev] [PATCH v14 00/11] Add PMD power management Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 01/11] eal: uninline power intrinsics Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 03/11] eal: change API of " Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 04/11] eal: remove sync version of power monitor Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 05/11] eal: add monitor wakeup function Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 06/11] ethdev: add simple power management API Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 07/11] power: add PMD power management API and callback Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 08/11] net/ixgbe: implement power management API Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 09/11] net/i40e: " Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 10/11] net/ice: " Anatoly Burakov
2021-01-11 14:35           ` [dpdk-dev] [PATCH v14 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-11 14:58           ` [dpdk-dev] [PATCH v15 00/11] Add PMD power management Anatoly Burakov
2021-01-11 14:58             ` Anatoly Burakov [this message]
2021-01-12 16:09               ` [dpdk-dev] [PATCH v15 01/11] eal: uninline power intrinsics Ananyev, Konstantin
2021-01-12 16:14                 ` Burakov, Anatoly
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 03/11] eal: change API of " Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 04/11] eal: remove sync version of power monitor Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 05/11] eal: add monitor wakeup function Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 06/11] ethdev: add simple power management API Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 07/11] power: add PMD power management API and callback Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 08/11] net/ixgbe: implement power management API Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 09/11] net/i40e: " Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 10/11] net/ice: " Anatoly Burakov
2021-01-11 14:58             ` [dpdk-dev] [PATCH v15 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-12 17:37             ` [dpdk-dev] [PATCH v16 00/11] Add PMD power management Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 01/11] eal: uninline power intrinsics Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 03/11] eal: change API of " Anatoly Burakov
2021-01-13 13:01                 ` Ananyev, Konstantin
2021-01-13 17:22                   ` Burakov, Anatoly
2021-01-13 18:01                     ` Ananyev, Konstantin
2021-01-14 10:23                       ` Burakov, Anatoly
2021-01-14 12:33                         ` Ananyev, Konstantin
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 04/11] eal: remove sync version of power monitor Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 05/11] eal: add monitor wakeup function Anatoly Burakov
2021-01-13 12:46                 ` Ananyev, Konstantin
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 06/11] ethdev: add simple power management API Anatoly Burakov
2021-01-13 13:18                 ` Ananyev, Konstantin
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 07/11] power: add PMD power management API and callback Anatoly Burakov
2021-01-13 12:58                 ` Ananyev, Konstantin
2021-01-13 17:29                   ` Burakov, Anatoly
2021-01-14 13:00                     ` Burakov, Anatoly
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 08/11] net/ixgbe: implement power management API Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 09/11] net/i40e: " Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 10/11] net/ice: " Anatoly Burakov
2021-01-12 17:37               ` [dpdk-dev] [PATCH v16 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-14  9:36               ` [dpdk-dev] [PATCH v16 00/11] Add PMD power management David Marchand
2021-01-14 10:25                 ` Burakov, Anatoly
2021-01-14 14:46               ` [dpdk-dev] [PATCH v17 " Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 01/11] eal: uninline power intrinsics Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 03/11] eal: change API of " Anatoly Burakov
2021-01-18 22:26                   ` Thomas Monjalon
2021-01-19 10:29                     ` Burakov, Anatoly
2021-01-19 10:42                       ` Thomas Monjalon
2021-01-19 11:23                         ` Burakov, Anatoly
2021-01-19 14:17                           ` Thomas Monjalon
2021-01-20 10:32                             ` Burakov, Anatoly
2021-01-20 10:38                               ` Thomas Monjalon
2021-01-20 11:05                                 ` Burakov, Anatoly
2021-01-20 11:11                                   ` Thomas Monjalon
2021-01-20 11:17                                     ` Burakov, Anatoly
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 04/11] eal: remove sync version of power monitor Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 05/11] eal: add monitor wakeup function Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 06/11] ethdev: add simple power management API Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 07/11] power: add PMD power management API and callback Anatoly Burakov
2021-01-18 12:41                   ` David Hunt
2021-01-19 16:45                     ` [dpdk-dev] [PATCH v18 0/2] Add PMD power management Anatoly Burakov
2021-01-19 16:45                       ` [dpdk-dev] [PATCH v18 1/2] power: add PMD power management API and callback Anatoly Burakov
2021-01-19 16:45                       ` [dpdk-dev] [PATCH v18 2/2] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-20 11:50                       ` [dpdk-dev] [PATCH v19 0/4] Add PMD power management Anatoly Burakov
2021-01-20 11:50                         ` [dpdk-dev] [PATCH v19 1/4] eal: rename power monitor condition member Anatoly Burakov
2021-01-20 11:50                         ` [dpdk-dev] [PATCH v19 2/4] eal: improve comments around power monitoring API Anatoly Burakov
2021-01-20 11:50                         ` [dpdk-dev] [PATCH v19 3/4] power: add PMD power management API and callback Anatoly Burakov
2021-01-20 11:50                         ` [dpdk-dev] [PATCH v19 4/4] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-22 17:12                         ` [dpdk-dev] [PATCH v20 0/4] Add PMD power management Anatoly Burakov
2021-01-22 17:12                           ` [dpdk-dev] [PATCH v20 1/4] eal: rename power monitor condition member Anatoly Burakov
2021-01-29 11:26                             ` Thomas Monjalon
2021-01-22 17:12                           ` [dpdk-dev] [PATCH v20 2/4] eal: improve comments around power monitoring API Anatoly Burakov
2021-01-29 11:27                             ` Thomas Monjalon
2021-01-22 17:12                           ` [dpdk-dev] [PATCH v20 3/4] power: add PMD power management API and callback Anatoly Burakov
2021-01-22 17:12                           ` [dpdk-dev] [PATCH v20 4/4] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-29 14:15                             ` Thomas Monjalon
2021-01-29 14:20                           ` [dpdk-dev] [PATCH v20 0/4] Add PMD power management Thomas Monjalon
2021-01-29 14:47                             ` Burakov, Anatoly
2021-01-18 22:48                   ` [dpdk-dev] [PATCH v17 07/11] power: add PMD power management API and callback Thomas Monjalon
2021-01-19 12:25                     ` Burakov, Anatoly
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 08/11] net/ixgbe: implement power management API Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 09/11] net/i40e: " Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 10/11] net/ice: " Anatoly Burakov
2021-01-14 14:46                 ` [dpdk-dev] [PATCH v17 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2021-01-18 12:53                   ` David Hunt
2021-01-18 15:24                 ` [dpdk-dev] [PATCH v17 00/11] Add PMD power management David Marchand
2021-01-18 15:45                   ` Burakov, Anatoly
2021-01-18 16:06                     ` Thomas Monjalon
2021-01-18 17:02                       ` Burakov, Anatoly
2021-01-18 17:54                         ` David Marchand
2021-01-18 22:52                 ` Thomas Monjalon
2021-01-19 10:30                   ` Burakov, Anatoly
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 01/11] eal: uninline power intrinsics Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 02/11] eal: avoid invalid API usage in " Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 03/11] eal: change API of " Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 04/11] eal: remove sync version of power monitor Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 05/11] eal: add monitor wakeup function Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 06/11] ethdev: add simple power management API Anatoly Burakov
2020-12-28 11:00       ` Andrew Rybchenko
2021-01-08 16:30         ` Burakov, Anatoly
2021-01-12 20:32       ` Lance Richardson
2021-01-13 13:04         ` Burakov, Anatoly
2021-01-13 13:25           ` Ananyev, Konstantin
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 07/11] power: add PMD power management API and callback Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 08/11] net/ixgbe: implement power management API Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 09/11] net/i40e: " Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 10/11] net/ice: " Anatoly Burakov
2020-12-17 14:05     ` [dpdk-dev] [PATCH v12 11/11] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2020-05-27 17:02 ` [dpdk-dev] [RFC 2/6] ethdev: add simple power management API Anatoly Burakov
2020-05-28 12:15   ` Ananyev, Konstantin
2020-05-27 17:02 ` [dpdk-dev] [RFC 3/6] net/ixgbe: implement " Anatoly Burakov
2020-05-27 17:02 ` [dpdk-dev] [RFC 4/6] net/i40e: " Anatoly Burakov
2020-05-27 17:02 ` [dpdk-dev] [RFC 5/6] net/ice: " Anatoly Burakov
2020-05-27 17:02 ` [dpdk-dev] [RFC 6/6] app/testpmd: add command for power management on a port Anatoly Burakov
2020-05-27 17:33 ` [dpdk-dev] [RFC 0/6] Power-optimized RX for Ethernet devices Jerin Jacob
2020-05-27 20:57   ` Stephen Hemminger
2020-08-11 10:27 ` [dpdk-dev] [RFC v2 1/5] eal: add power management intrinsics Liang Ma
2020-08-11 10:27   ` [dpdk-dev] [RFC v2 2/5] ethdev: add simple power management API and callback Liang Ma
2020-08-13 18:11     ` Liang, Ma
2020-08-11 10:27   ` [dpdk-dev] [RFC v2 3/5] net/ixgbe: implement power management API Liang Ma
2020-08-11 10:27   ` [dpdk-dev] [RFC v2 4/5] net/i40e: " Liang Ma
2020-08-11 10:27   ` [dpdk-dev] [RFC v2 5/5] net/ice: " Liang Ma
2020-08-13 18:04   ` [dpdk-dev] [RFC v2 1/5] eal: add power management intrinsics Liang, Ma
2020-09-03 16:06   ` [dpdk-dev] [RFC PATCH v3 1/6] " Liang Ma
2020-09-03 16:07     ` [dpdk-dev] [RFC PATCH v3 2/6] ethdev: add simple power management API Liang Ma
2020-09-03 16:07     ` [dpdk-dev] [RFC PATCH v3 3/6] power: add simple power management API and callback Liang Ma
2020-09-03 16:07     ` [dpdk-dev] [RFC PATCH v3 4/6] net/ixgbe: implement power management API Liang Ma
2020-09-03 16:07     ` [dpdk-dev] [RFC PATCH v3 5/6] net/i40e: " Liang Ma
2020-09-03 16:07     ` [dpdk-dev] [RFC PATCH v3 6/6] net/ice: " Liang Ma
2020-09-04 10:18   ` [dpdk-dev] [PATCH v3 1/6] eal: add power management intrinsics Liang Ma
2020-09-04 10:18     ` [dpdk-dev] [PATCH v3 2/6] ethdev: add simple power management API Liang Ma
2020-09-04 16:37       ` Stephen Hemminger
2020-09-14 21:04         ` Liang, Ma
2020-09-04 20:54       ` Ananyev, Konstantin
2020-09-04 10:18     ` [dpdk-dev] [PATCH v3 3/6] power: add simple power management API and callback Liang Ma
2020-09-04 16:36       ` Stephen Hemminger
2020-09-14 20:52         ` Liang, Ma
2020-09-04 18:33       ` Ananyev, Konstantin
2020-09-14 21:01         ` Liang, Ma
2020-09-16 14:53           ` Ananyev, Konstantin
2020-09-16 16:39             ` Liang, Ma
2020-09-16 16:44               ` Ananyev, Konstantin
2020-09-04 10:18     ` [dpdk-dev] [PATCH v3 4/6] net/ixgbe: implement power management API Liang Ma
2020-09-04 10:18     ` [dpdk-dev] [PATCH v3 5/6] net/i40e: " Liang Ma
2020-09-04 10:19     ` [dpdk-dev] [PATCH v3 6/6] net/ice: " Liang Ma
2020-09-04 16:23     ` [dpdk-dev] [PATCH v3 1/6] eal: add power management intrinsics Stephen Hemminger
2020-09-14 20:48       ` Liang, Ma
2020-09-04 16:37     ` Stephen Hemminger
2020-09-14 20:49       ` Liang, Ma
2020-09-04 18:42     ` Stephen Hemminger
2020-09-14 21:12       ` Liang, Ma
2020-09-16 16:34       ` Liang, Ma
2020-09-06 21:44     ` Ananyev, Konstantin
2020-09-18  5:01     ` Jerin Jacob
2020-10-02 14:11     ` [dpdk-dev] [PATCH v4 01/10] eal: add new x86 cpuid support for WAITPKG Liang Ma
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 02/10] eal: add power management intrinsics Liang Ma
2020-10-08  8:33         ` Thomas Monjalon
2020-10-08  8:44           ` Jerin Jacob
2020-10-08  9:41             ` Thomas Monjalon
2020-10-08 13:26             ` Burakov, Anatoly
2020-10-08 15:13               ` Jerin Jacob
2020-10-08 17:07                 ` Ananyev, Konstantin
2020-10-09  5:42                   ` Jerin Jacob
2020-10-09  9:25                     ` Burakov, Anatoly
2020-10-09  9:29                       ` Thomas Monjalon
2020-10-09  9:40                         ` Burakov, Anatoly
2020-10-09  9:54                           ` Jerin Jacob
2020-10-09 10:03                             ` Burakov, Anatoly
2020-10-09 10:17                               ` Thomas Monjalon
2020-10-09 10:22                                 ` Burakov, Anatoly
2020-10-09 10:45                                   ` Jerin Jacob
2020-10-09 10:48                                   ` Ananyev, Konstantin
2020-10-09 11:12                                     ` Burakov, Anatoly
2020-10-09 11:36                                       ` Bruce Richardson
2020-10-09 11:42                                         ` Burakov, Anatoly
2020-10-09 10:19                               ` Jerin Jacob
2020-10-08 17:15         ` Ananyev, Konstantin
2020-10-09  9:11           ` Burakov, Anatoly
2020-10-09 15:39             ` Ananyev, Konstantin
2020-10-09 16:10               ` Burakov, Anatoly
2020-10-09 16:56                 ` Ananyev, Konstantin
2020-10-09 16:59                   ` Burakov, Anatoly
2020-10-10 13:19                     ` Ananyev, Konstantin
2020-10-12 10:35                       ` Burakov, Anatoly
2020-10-12 10:36                         ` Burakov, Anatoly
2020-10-12 12:50                           ` Ananyev, Konstantin
2020-10-12 13:13                             ` Burakov, Anatoly
2020-10-13  9:45                               ` Burakov, Anatoly
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 03/10] ethdev: add simple power management API Liang Ma
2020-10-08  8:46         ` Thomas Monjalon
2020-10-08 11:39           ` Ananyev, Konstantin
2020-10-08 22:26         ` Ananyev, Konstantin
2020-10-09 16:11           ` Burakov, Anatoly
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 04/10] power: add simple power management API and callback Liang Ma
2020-10-09 16:38         ` Ananyev, Konstantin
2020-10-09 16:47           ` Burakov, Anatoly
2020-10-09 16:51             ` Ananyev, Konstantin
2020-10-09 16:56               ` Burakov, Anatoly
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 05/10] net/ixgbe: implement power management API Liang Ma
2020-10-09 15:53         ` Ananyev, Konstantin
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 06/10] net/i40e: " Liang Ma
2020-10-09 16:01         ` Ananyev, Konstantin
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 07/10] net/ice: " Liang Ma
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 08/10] examples/l3fwd-power: enable PMD power mgmt Liang Ma
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 09/10] doc: update release notes for PMD power management Liang Ma
2020-10-02 14:11       ` [dpdk-dev] [PATCH v4 10/10] doc: update the programming guide " Liang Ma
2020-10-02 14:44       ` [dpdk-dev] [PATCH v4 01/10] eal: add new x86 cpuid support for WAITPKG Bruce Richardson
2020-10-08 22:08       ` Ananyev, Konstantin
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 " Anatoly Burakov
2020-10-09 17:06         ` Burakov, Anatoly
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 " Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 " Anatoly Burakov
2020-10-23 17:17             ` [dpdk-dev] [PATCH v8 " Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 00/10] Add PMD power mgmt Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 0/9] " Liang Ma
2020-10-27 16:02                   ` Thomas Monjalon
2020-10-28 13:35                     ` Liang, Ma
2020-10-28 13:49                       ` Jerin Jacob
2020-10-28 14:21                         ` Thomas Monjalon
2020-10-28 14:57                           ` Ananyev, Konstantin
2020-10-28 15:14                             ` Jerin Jacob
2020-10-28 15:30                               ` Liang, Ma
2020-10-28 15:36                                 ` Jerin Jacob
2020-10-28 15:44                                   ` Liang, Ma
2020-10-28 16:01                                     ` Jerin Jacob
2020-10-28 16:21                                       ` Liang, Ma
2020-10-28 15:33                               ` Ananyev, Konstantin
2020-10-28 15:39                                 ` Jerin Jacob
2020-10-28 15:49                                   ` Ananyev, Konstantin
2020-10-28 15:57                                     ` Jerin Jacob
2020-10-28 16:38                                       ` Ananyev, Konstantin
2020-10-28 16:47                                       ` Liang, Ma
2020-10-28 16:54                                         ` McDaniel, Timothy
2020-10-29  9:19                                           ` Liang, Ma
2020-10-28 17:02                                         ` Ajit Khaparde
2020-10-28 18:10                                           ` Ananyev, Konstantin
2020-10-27 20:53                   ` Ajit Khaparde
2020-10-28 12:13                     ` Liang, Ma
2020-10-29 17:42                   ` Thomas Monjalon
2020-10-30  9:36                     ` Liang, Ma
2020-10-30  9:58                       ` Thomas Monjalon
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 1/9] eal: add new x86 cpuid support for WAITPKG Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 2/9] eal: add power management intrinsics Liang Ma
2020-10-29 17:39                   ` Thomas Monjalon
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 3/9] eal: add intrinsics support check infrastructure Liang Ma
2020-10-29 21:27                   ` David Marchand
2020-10-30 10:09                     ` Burakov, Anatoly
2020-10-30 10:14                       ` Thomas Monjalon
2020-10-30 13:37                         ` Burakov, Anatoly
2020-10-30 14:09                           ` Thomas Monjalon
2020-10-30 15:27                             ` Burakov, Anatoly
2020-10-30 15:44                               ` Thomas Monjalon
2020-10-30 16:36                                 ` Burakov, Anatoly
2020-10-30 16:50                                   ` Thomas Monjalon
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 4/9] ethdev: add simple power management API Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 5/9] power: add PMD power management API and callback Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 6/9] net/ixgbe: implement power management API Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 7/9] net/i40e: " Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 8/9] net/ice: " Liang Ma
2020-10-27 14:59                 ` [dpdk-dev] [PATCH v10 9/9] examples/l3fwd-power: enable PMD power mgmt Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 01/10] eal: add new x86 cpuid support for WAITPKG Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 02/10] eal: add power management intrinsics Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 03/10] eal: add intrinsics support check infrastructure Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 04/10] ethdev: add simple power management API Liang Ma
2020-10-24 20:39                 ` Thomas Monjalon
2020-10-27 11:15                   ` Liang, Ma
2020-10-27 15:52                     ` Thomas Monjalon
2020-10-27 17:43                       ` Ananyev, Konstantin
2020-10-27 18:30                         ` Thomas Monjalon
2020-10-27 23:29                           ` Ananyev, Konstantin
2020-10-28  3:24                             ` Ajit Khaparde
2020-10-28 12:24                             ` Liang, Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 05/10] power: add PMD power management API and callback Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 06/10] net/ixgbe: implement power management API Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 07/10] net/i40e: " Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 08/10] net/ice: " Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 09/10] examples/l3fwd-power: enable PMD power mgmt Liang Ma
2020-10-23 23:06               ` [dpdk-dev] [PATCH v9 10/10] doc: update programmer's guide for power library Liang Ma
2020-10-24 20:49                 ` Thomas Monjalon
2020-10-27 11:04                   ` Liang, Ma
2020-10-23 17:20             ` [dpdk-dev] [PATCH v8 02/10] eal: add power management intrinsics Liang Ma
2020-10-23 17:21             ` [dpdk-dev] [PATCH v8 03/10] eal: add intrinsics support check infrastructure Liang Ma
2020-10-23 17:22             ` [dpdk-dev] [PATCH v8 04/10] ethdev: add simple power management API Liang Ma
2020-10-23 17:23             ` [dpdk-dev] [PATCH v8 05/10] power: add PMD power management API and callback Liang Ma
2020-10-23 17:26             ` [dpdk-dev] [PATCH v8 06/10] net/ixgbe: implement power management API Liang Ma
2020-10-23 17:26             ` [dpdk-dev] [PATCH v8 07/10] net/i40e: " Liang Ma
2020-10-23 17:27             ` [dpdk-dev] [PATCH v8 08/10] net/ice: " Liang Ma
2020-10-23 17:30             ` [dpdk-dev] [PATCH v8 09/10] examples/l3fwd-power: enable PMD power mgmt Liang Ma
2020-10-23 17:36             ` [dpdk-dev] [PATCH v8 10/10] doc: update programmer's guide for power library Liang Ma
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 02/10] eal: add power management intrinsics Anatoly Burakov
2020-10-15 12:06             ` Jerin Jacob
2020-10-15 13:16             ` Ferruh Yigit
2020-10-16  8:44               ` Ruifeng Wang
2020-10-15 16:43             ` Ananyev, Konstantin
2020-10-19 21:12             ` Thomas Monjalon
2020-10-20  2:49               ` Ruifeng Wang
2020-10-20  7:35                 ` Thomas Monjalon
2020-10-20 14:01                   ` David Hunt
2020-10-20 14:17                     ` David Hunt
2020-10-20 14:33                       ` Thomas Monjalon
2020-10-20 17:26                         ` Ananyev, Konstantin
2020-10-20 19:28                           ` Thomas Monjalon
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 03/10] eal: add intrinsics support check infrastructure Anatoly Burakov
2020-10-16  9:02             ` Ruifeng Wang
2020-10-16 11:21             ` Kinsella, Ray
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 04/10] ethdev: add simple power management API Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 05/10] power: add PMD power management API and callback Anatoly Burakov
2020-10-15 16:52             ` Ananyev, Konstantin
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 06/10] net/ixgbe: implement power management API Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 07/10] net/i40e: " Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 08/10] net/ice: " Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 09/10] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2020-10-15 12:04           ` [dpdk-dev] [PATCH v7 10/10] doc: update programmer's guide for power library Anatoly Burakov
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 02/10] eal: add power management intrinsics Anatoly Burakov
2020-10-14 17:48           ` Ananyev, Konstantin
2020-10-15 10:09             ` Burakov, Anatoly
2020-10-15 10:45               ` Burakov, Anatoly
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 03/10] eal: add intrinsics support check infrastructure Anatoly Burakov
2020-10-14 17:51           ` Ananyev, Konstantin
2020-10-14 17:59           ` Jerin Jacob
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 04/10] ethdev: add simple power management API Anatoly Burakov
2020-10-14 17:06           ` Ananyev, Konstantin
2020-10-15 11:29           ` Liang, Ma
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 05/10] power: add PMD power management API and callback Anatoly Burakov
2020-10-14 14:19           ` David Hunt
2020-10-14 18:41           ` Ananyev, Konstantin
2020-10-15 10:31             ` Burakov, Anatoly
2020-10-15 16:02               ` Ananyev, Konstantin
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 06/10] net/ixgbe: implement power management API Anatoly Burakov
2020-10-14 17:04           ` Wang, Haiyue
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 07/10] net/i40e: " Anatoly Burakov
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 08/10] net/ice: " Anatoly Burakov
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 09/10] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2020-10-14 14:24           ` David Hunt
2020-10-14 13:30         ` [dpdk-dev] [PATCH v6 10/10] doc: update programmer's guide for power library Anatoly Burakov
2020-10-14 14:27           ` David Hunt
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 02/10] eal: add power management intrinsics Anatoly Burakov
2020-10-09 16:09         ` Jerin Jacob
2020-10-09 16:24           ` Burakov, Anatoly
2020-10-12 19:47         ` David Christensen
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 03/10] eal: add intrinsics support check infrastructure Anatoly Burakov
2020-10-11 10:07         ` Jerin Jacob
2020-10-12  9:26           ` Burakov, Anatoly
2020-10-12 19:52         ` David Christensen
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 04/10] ethdev: add simple power management API Anatoly Burakov
2020-10-14  3:10         ` Guo, Jia
2020-10-14  9:07           ` Burakov, Anatoly
2020-10-14  9:15             ` Guo, Jia
2020-10-14  9:30               ` Burakov, Anatoly
2020-10-14  9:23             ` Bruce Richardson
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 05/10] power: add PMD power management API and callback Anatoly Burakov
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 06/10] net/ixgbe: implement power management API Anatoly Burakov
2020-10-12  7:46         ` Wang, Haiyue
2020-10-12  9:28           ` Burakov, Anatoly
2020-10-12  9:44           ` Burakov, Anatoly
2020-10-12 15:58             ` Wang, Haiyue
2020-10-12  8:09         ` Wang, Haiyue
2020-10-12  9:28           ` Burakov, Anatoly
2020-10-13  1:17             ` Wang, Haiyue
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 07/10] net/i40e: " Anatoly Burakov
2020-10-14  3:19         ` Guo, Jia
2020-10-14  9:08           ` Burakov, Anatoly
2020-10-14  9:17             ` Guo, Jia
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 08/10] net/ice: " Anatoly Burakov
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 09/10] examples/l3fwd-power: enable PMD power mgmt Anatoly Burakov
2020-10-09 16:02       ` [dpdk-dev] [PATCH v5 10/10] doc: update programmer's guide for power library Anatoly Burakov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=18244c0453adf9a216f88e8edc14f1e68b53053b.1610377084.git.anatoly.burakov@intel.com \
    --to=anatoly.burakov@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=chris.macnamara@intel.com \
    --cc=david.hunt@intel.com \
    --cc=dev@dpdk.org \
    --cc=drc@linux.vnet.ibm.com \
    --cc=jerinj@marvell.com \
    --cc=konstantin.ananyev@intel.com \
    --cc=mdr@ashroe.eu \
    --cc=nhorman@tuxdriver.com \
    --cc=ruifeng.wang@arm.com \
    --cc=thomas@monjalon.net \
    --cc=timothy.mcdaniel@intel.com \
    --cc=viktorin@rehivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).