From: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
To: "Burakov, Anatoly" <anatoly.burakov@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>
Cc: "Ma, Liang J" <liang.j.ma@intel.com>,
Jan Viktorin <viktorin@rehivetech.com>,
Ruifeng Wang <ruifeng.wang@arm.com>,
"David Christensen" <drc@linux.vnet.ibm.com>,
"Richardson, Bruce" <bruce.richardson@intel.com>,
"Hunt, David" <david.hunt@intel.com>,
"jerinjacobk@gmail.com" <jerinjacobk@gmail.com>,
"thomas@monjalon.net" <thomas@monjalon.net>,
"McDaniel, Timothy" <timothy.mcdaniel@intel.com>,
"Eads, Gage" <gage.eads@intel.com>,
"Macnamara, Chris" <chris.macnamara@intel.com>
Subject: Re: [dpdk-dev] [PATCH v6 02/10] eal: add power management intrinsics
Date: Wed, 14 Oct 2020 17:48:23 +0000 [thread overview]
Message-ID: <SN6PR11MB331039ED755B4896AF5414F29A050@SN6PR11MB3310.namprd11.prod.outlook.com> (raw)
In-Reply-To: <d231b8c7f9a2056dc5bea300a7a5b9cac4ecdd72.1602682206.git.anatoly.burakov@intel.com>
>
> From: Liang Ma <liang.j.ma@intel.com>
>
> Add two new power management intrinsics, and provide an implementation
> in eal/x86 based on UMONITOR/UMWAIT instructions. The instructions
> are implemented as raw byte opcodes because there is not yet widespread
> compiler support for these instructions.
>
> The power management instructions provide an architecture-specific
> function to either wait until a specified TSC timestamp is reached, or
> optionally wait until either a TSC timestamp is reached or a memory
> location is written to. The monitor function also provides an optional
> comparison, to avoid sleeping when the expected write has already
> happened, and no more writes are expected.
>
> For more details, please refer to Intel(R) 64 and IA-32 Architectures
> Software Developer's Manual, Volume 2.
>
> Signed-off-by: Liang Ma <liang.j.ma@intel.com>
> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
> Acked-by: David Christensen <drc@linux.vnet.ibm.com>
> ---
>
> Notes:
> v6:
> - Add spinlock-enabled version to allow pthread-wait-like
> constructs with umwait
> - Clarify comments
> - Added experimental tags to intrinsics
> - Added endianness support
> v5:
> - Removed return values
> - Simplified intrinsics and hardcoded C0.2 state
> - Added other arch stubs
>
> lib/librte_eal/arm/include/meson.build | 1 +
> .../arm/include/rte_power_intrinsics.h | 58 ++++++++
> .../include/generic/rte_power_intrinsics.h | 111 +++++++++++++++
> lib/librte_eal/include/meson.build | 1 +
> lib/librte_eal/ppc/include/meson.build | 1 +
> .../ppc/include/rte_power_intrinsics.h | 58 ++++++++
> lib/librte_eal/x86/include/meson.build | 1 +
> .../x86/include/rte_power_intrinsics.h | 132 ++++++++++++++++++
> 8 files changed, 363 insertions(+)
> create mode 100644 lib/librte_eal/arm/include/rte_power_intrinsics.h
> create mode 100644 lib/librte_eal/include/generic/rte_power_intrinsics.h
> create mode 100644 lib/librte_eal/ppc/include/rte_power_intrinsics.h
> create mode 100644 lib/librte_eal/x86/include/rte_power_intrinsics.h
>
> diff --git a/lib/librte_eal/arm/include/meson.build b/lib/librte_eal/arm/include/meson.build
> index 73b750a18f..c6a9f70d73 100644
> --- a/lib/librte_eal/arm/include/meson.build
> +++ b/lib/librte_eal/arm/include/meson.build
> @@ -20,6 +20,7 @@ arch_headers = files(
> 'rte_pause_32.h',
> 'rte_pause_64.h',
> 'rte_pause.h',
> + 'rte_power_intrinsics.h',
> 'rte_prefetch_32.h',
> 'rte_prefetch_64.h',
> 'rte_prefetch.h',
> diff --git a/lib/librte_eal/arm/include/rte_power_intrinsics.h b/lib/librte_eal/arm/include/rte_power_intrinsics.h
> new file mode 100644
> index 0000000000..b04ba10c76
> --- /dev/null
> +++ b/lib/librte_eal/arm/include/rte_power_intrinsics.h
> @@ -0,0 +1,58 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2020 Intel Corporation
> + */
> +
> +#ifndef _RTE_POWER_INTRINSIC_ARM_H_
> +#define _RTE_POWER_INTRINSIC_ARM_H_
> +
> +#ifdef __cplusplus
> +extern "C" {
> +#endif
> +
> +#include <rte_common.h>
> +
> +#include "generic/rte_power_intrinsics.h"
> +
> +/**
> + * This function is not supported on ARM.
> + */
Here and in other places - please follow dpdk coding convention
for function definitions, i.e:
static inline void
rte_power_monitor(...
> +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);
> +}
You can probably put NOP implementations of these rte_powe_* functions
into generic/rte_power_intrinsics.h.
So, wouldn't need to duplicate them for every non-supported arch.
Same as it was done for rte_wait_until_equal_*().
> +
> +/**
> + * 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
> +
> +#endif /* _RTE_POWER_INTRINSIC_ARM_H_ */
> diff --git a/lib/librte_eal/include/generic/rte_power_intrinsics.h b/lib/librte_eal/include/generic/rte_power_intrinsics.h
> new file mode 100644
> index 0000000000..f9522f2776
> --- /dev/null
> +++ b/lib/librte_eal/include/generic/rte_power_intrinsics.h
> @@ -0,0 +1,111 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2020 Intel Corporation
> + */
> +
> +#ifndef _RTE_POWER_INTRINSIC_H_
> +#define _RTE_POWER_INTRINSIC_H_
> +
> +#include <inttypes.h>
> +
> +#include <rte_compat.h>
> +#include <rte_spinlock.h>
> +
> +/**
> + * @file
> + * Advanced power management operations.
> + *
> + * This file define APIs for advanced power management,
> + * which are architecture-dependent.
> + */
> +
> +/**
> + * @warning
> + * @b EXPERIMENTAL: this API may change without prior notice
> + *
> + * Monitor specific address for changes. This will cause the CPU to enter an
> + * architecture-defined optimized power state until either the specified
> + * memory address is written to, a certain TSC timestamp is reached, or other
> + * reasons cause the CPU to wake up.
> + *
> + * Additionally, an `expected` 64-bit value and 64-bit mask are provided. If
> + * mask is non-zero, the current value pointed to by the `p` pointer will be
> + * checked against the expected value, and if they match, the entering of
> + * optimized power state may be aborted.
> + *
> + * @param p
> + * Address to monitor for changes. Must be aligned on an 64-byte boundary.
Is 64B alignment really needed?
> + * @param expected_value
> + * Before attempting the monitoring, the `p` address may be read and compared
> + * against this value. If `value_mask` is zero, this step will be skipped.
> + * @param value_mask
> + * The 64-bit mask to use to extract current value from `p`.
> + * @param tsc_timestamp
> + * Maximum TSC timestamp to wait for. Note that the wait behavior is
> + * architecture-dependent.
> + * @param data_sz
> + * Data size (in bytes) that will be used to compare expected value with the
> + * memory address. Can be 1, 2, 4 or 8. Supplying any other value will lead
> + * to undefined result.
> + */
> +__rte_experimental
> +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);
> +
> +/**
> + * @warning
> + * @b EXPERIMENTAL: this API may change without prior notice
> + *
> + * Monitor specific address for changes. This will cause the CPU to enter an
> + * architecture-defined optimized power state until either the specified
> + * memory address is written to, a certain TSC timestamp is reached, or other
> + * reasons cause the CPU to wake up.
> + *
> + * Additionally, an `expected` 64-bit value and 64-bit mask are provided. If
> + * mask is non-zero, the current value pointed to by the `p` pointer will be
> + * checked against the expected value, and if they match, the entering of
> + * optimized power state may be aborted.
> + *
> + * This call will also lock a spinlock on entering sleep, and release it on
> + * waking up the CPU.
> + *
> + * @param p
> + * Address to monitor for changes. Must be aligned on an 64-byte boundary.
> + * @param expected_value
> + * Before attempting the monitoring, the `p` address may be read and compared
> + * against this value. If `value_mask` is zero, this step will be skipped.
> + * @param value_mask
> + * The 64-bit mask to use to extract current value from `p`.
> + * @param tsc_timestamp
> + * Maximum TSC timestamp to wait for. Note that the wait behavior is
> + * architecture-dependent.
> + * @param data_sz
> + * Data size (in bytes) that will be used to compare expected value with the
> + * memory address. Can be 1, 2, 4 or 8. Supplying any other value will lead
> + * to undefined result.
> + * @param lck
> + * A spinlock that must be locked before entering the function, will be
> + * unlocked while the CPU is sleeping, and will be locked again once the CPU
> + * wakes up.
> + */
> +__rte_experimental
> +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);
> +
> +/**
> + * @warning
> + * @b EXPERIMENTAL: this API may change without prior notice
> + *
> + * Enter an architecture-defined optimized power state until a certain TSC
> + * timestamp is reached.
> + *
> + * @param tsc_timestamp
> + * Maximum TSC timestamp to wait for. Note that the wait behavior is
> + * architecture-dependent.
> + */
> +__rte_experimental
> +static inline void rte_power_pause(const uint64_t tsc_timestamp);
> +
> +#endif /* _RTE_POWER_INTRINSIC_H_ */
> diff --git a/lib/librte_eal/include/meson.build b/lib/librte_eal/include/meson.build
> index cd09027958..3a12e87e19 100644
> --- a/lib/librte_eal/include/meson.build
> +++ b/lib/librte_eal/include/meson.build
> @@ -60,6 +60,7 @@ generic_headers = files(
> 'generic/rte_memcpy.h',
> 'generic/rte_pause.h',
> 'generic/rte_prefetch.h',
> + 'generic/rte_power_intrinsics.h',
> 'generic/rte_rwlock.h',
> 'generic/rte_spinlock.h',
> 'generic/rte_ticketlock.h',
> diff --git a/lib/librte_eal/ppc/include/meson.build b/lib/librte_eal/ppc/include/meson.build
> index ab4bd28092..0873b2aecb 100644
> --- a/lib/librte_eal/ppc/include/meson.build
> +++ b/lib/librte_eal/ppc/include/meson.build
> @@ -10,6 +10,7 @@ arch_headers = files(
> 'rte_io.h',
> 'rte_memcpy.h',
> 'rte_pause.h',
> + 'rte_power_intrinsics.h',
> 'rte_prefetch.h',
> 'rte_rwlock.h',
> 'rte_spinlock.h',
> diff --git a/lib/librte_eal/ppc/include/rte_power_intrinsics.h b/lib/librte_eal/ppc/include/rte_power_intrinsics.h
> new file mode 100644
> index 0000000000..3bceefdc3f
> --- /dev/null
> +++ b/lib/librte_eal/ppc/include/rte_power_intrinsics.h
> @@ -0,0 +1,58 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2020 Intel Corporation
> + */
> +
> +#ifndef _RTE_POWER_INTRINSIC_PPC_H_
> +#define _RTE_POWER_INTRINSIC_PPC_H_
> +
> +#ifdef __cplusplus
> +extern "C" {
> +#endif
> +
> +#include <rte_common.h>
> +
> +#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
> +
> +#endif /* _RTE_POWER_INTRINSIC_PPC_H_ */
> diff --git a/lib/librte_eal/x86/include/meson.build b/lib/librte_eal/x86/include/meson.build
> index f0e998c2fe..494a8142a2 100644
> --- a/lib/librte_eal/x86/include/meson.build
> +++ b/lib/librte_eal/x86/include/meson.build
> @@ -13,6 +13,7 @@ arch_headers = files(
> 'rte_io.h',
> 'rte_memcpy.h',
> 'rte_prefetch.h',
> + 'rte_power_intrinsics.h',
> 'rte_pause.h',
> 'rte_rtm.h',
> 'rte_rwlock.h',
> diff --git a/lib/librte_eal/x86/include/rte_power_intrinsics.h b/lib/librte_eal/x86/include/rte_power_intrinsics.h
> new file mode 100644
> index 0000000000..9ac8e6eef6
> --- /dev/null
> +++ b/lib/librte_eal/x86/include/rte_power_intrinsics.h
> @@ -0,0 +1,132 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2020 Intel Corporation
> + */
> +
> +#ifndef _RTE_POWER_INTRINSIC_X86_64_H_
> +#define _RTE_POWER_INTRINSIC_X86_64_H_
Why '_64_H'?
My understanding was these ops are supported 32-bit mode too.
> +
> +#ifdef __cplusplus
> +extern "C" {
> +#endif
> +
> +#include <rte_common.h>
> +
> +#include "generic/rte_power_intrinsics.h"
> +
> +static inline uint64_t __get_umwait_val(const volatile void *p,
> + const uint8_t sz)
> +{
> + switch (sz) {
> + case 1:
Just as a nit:
case sizeof(type_x):
return *(const volatile type_x *)p;
> + return *(const volatile uint8_t *)p;
> + case 2:
> + return *(const volatile uint16_t *)p;
> + case 4:
> + return *(const volatile uint32_t *)p;
> + case 8:
> + 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 = __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 = __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
> +
> +#endif /* _RTE_POWER_INTRINSIC_X86_64_H_ */
> --
> 2.17.1
next prev parent reply other threads:[~2020-10-14 17:48 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 ` [dpdk-dev] [PATCH v15 01/11] eal: uninline power intrinsics Anatoly Burakov
2021-01-12 16:09 ` 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 [this message]
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=SN6PR11MB331039ED755B4896AF5414F29A050@SN6PR11MB3310.namprd11.prod.outlook.com \
--to=konstantin.ananyev@intel.com \
--cc=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=gage.eads@intel.com \
--cc=jerinjacobk@gmail.com \
--cc=liang.j.ma@intel.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).