From: "Burakov, Anatoly" <anatoly.burakov@intel.com> To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>, "Ma, Liang J" <liang.j.ma@intel.com>, "dev@dpdk.org" <dev@dpdk.org> Cc: "Hunt, David" <david.hunt@intel.com>, "stephen@networkplumber.org" <stephen@networkplumber.org> Subject: Re: [dpdk-dev] [PATCH v4 04/10] power: add simple power management API and callback Date: Fri, 9 Oct 2020 17:47:36 +0100 Message-ID: <c3eb3d1e-42d2-56f2-18b2-e1b5735822f7@intel.com> (raw) In-Reply-To: <BYAPR11MB330194932E7A7E134F894F7B9A080@BYAPR11MB3301.namprd11.prod.outlook.com> On 09-Oct-20 5:38 PM, Ananyev, Konstantin wrote: >> Add a simple on/off switch that will enable saving power when no >> packets are arriving. It is based on counting the number of empty >> polls and, when the number reaches a certain threshold, entering an >> architecture-defined optimized power state that will either wait >> until a TSC timestamp expires, or when packets arrive. >> >> This API support 1 port to multiple core use case. >> >> This design leverage RX Callback mechnaism which allow three >> different power management methodology co exist. >> >> 1. umwait/umonitor: >> >> The TSC timestamp is automatically calculated using current >> link speed and RX descriptor ring size, such that the sleep >> time is not longer than it would take for a NIC to fill its >> entire RX descriptor ring. >> >> 2. Pause instruction >> >> Instead of move the core into deeper C state, this lightweight >> method use Pause instruction to relief the processor from >> busy polling. >> >> 3. Frequency Scaling >> Reuse exist rte power library to scale up/down core frequency >> depend on traffic volume. >> >> Signed-off-by: Liang Ma <liang.j.ma@intel.com> >> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> >> --- >> lib/librte_power/meson.build | 5 +- >> lib/librte_power/pmd_mgmt.h | 49 ++++++ >> lib/librte_power/rte_power_pmd_mgmt.c | 208 +++++++++++++++++++++++++ >> lib/librte_power/rte_power_pmd_mgmt.h | 88 +++++++++++ >> lib/librte_power/rte_power_version.map | 4 + >> 5 files changed, 352 insertions(+), 2 deletions(-) >> create mode 100644 lib/librte_power/pmd_mgmt.h >> create mode 100644 lib/librte_power/rte_power_pmd_mgmt.c >> create mode 100644 lib/librte_power/rte_power_pmd_mgmt.h >> >> diff --git a/lib/librte_power/meson.build b/lib/librte_power/meson.build >> index 78c031c943..cc3c7a8646 100644 >> --- a/lib/librte_power/meson.build >> +++ b/lib/librte_power/meson.build >> @@ -9,6 +9,7 @@ sources = files('rte_power.c', 'power_acpi_cpufreq.c', >> 'power_kvm_vm.c', 'guest_channel.c', >> 'rte_power_empty_poll.c', >> 'power_pstate_cpufreq.c', >> +'rte_power_pmd_mgmt.c', >> 'power_common.c') >> -headers = files('rte_power.h','rte_power_empty_poll.h') >> -deps += ['timer'] >> +headers = files('rte_power.h','rte_power_empty_poll.h','rte_power_pmd_mgmt.h') >> +deps += ['timer' ,'ethdev'] >> diff --git a/lib/librte_power/pmd_mgmt.h b/lib/librte_power/pmd_mgmt.h >> new file mode 100644 >> index 0000000000..756fbe20f7 >> --- /dev/null >> +++ b/lib/librte_power/pmd_mgmt.h >> @@ -0,0 +1,49 @@ >> +/* SPDX-License-Identifier: BSD-3-Clause >> + * Copyright(c) 2010-2020 Intel Corporation >> + */ >> + >> +#ifndef _PMD_MGMT_H >> +#define _PMD_MGMT_H >> + >> +/** >> + * @file >> + * Power Management >> + */ >> + >> +#ifdef __cplusplus >> +extern "C" { >> +#endif >> + >> +/** >> + * Possible power management states of an ethdev port. >> + */ >> +enum pmd_mgmt_state { >> +/** Device power management is disabled. */ >> +PMD_MGMT_DISABLED = 0, >> +/** Device power management is enabled. */ >> +PMD_MGMT_ENABLED, >> +}; >> + >> +struct pmd_queue_cfg { >> +enum pmd_mgmt_state pwr_mgmt_state; >> +/**< Power mgmt Callback mode */ >> +enum rte_power_pmd_mgmt_type cb_mode; >> +/**< Empty poll number */ >> +uint16_t empty_poll_stats; >> +/**< Callback instance */ >> +const struct rte_eth_rxtx_callback *cur_cb; >> +} __rte_cache_aligned; >> + >> +struct pmd_port_cfg { >> +int ref_cnt; >> +struct pmd_queue_cfg *queue_cfg; >> +} __rte_cache_aligned; >> + >> + >> + >> + >> +#ifdef __cplusplus >> +} >> +#endif >> + >> +#endif >> diff --git a/lib/librte_power/rte_power_pmd_mgmt.c b/lib/librte_power/rte_power_pmd_mgmt.c >> new file mode 100644 >> index 0000000000..35d2af46a4 >> --- /dev/null >> +++ b/lib/librte_power/rte_power_pmd_mgmt.c >> @@ -0,0 +1,208 @@ >> +/* SPDX-License-Identifier: BSD-3-Clause >> + * Copyright(c) 2010-2020 Intel Corporation >> + */ >> + >> +#include <rte_lcore.h> >> +#include <rte_cycles.h> >> +#include <rte_malloc.h> >> +#include <rte_ethdev.h> >> +#include <rte_power_intrinsics.h> >> + >> +#include "rte_power_pmd_mgmt.h" >> +#include "pmd_mgmt.h" >> + >> + >> +#define EMPTYPOLL_MAX 512 >> +#define PAUSE_NUM 64 >> + >> +static struct pmd_port_cfg port_cfg[RTE_MAX_ETHPORTS]; >> + >> +static uint16_t >> +rte_power_mgmt_umwait(uint16_t port_id, uint16_t qidx, >> +struct rte_mbuf **pkts __rte_unused, uint16_t nb_rx, >> +uint16_t max_pkts __rte_unused, void *_ __rte_unused) >> +{ >> + >> +struct pmd_queue_cfg *q_conf; >> +q_conf = &port_cfg[port_id].queue_cfg[qidx]; >> + >> +if (unlikely(nb_rx == 0)) { >> +q_conf->empty_poll_stats++; >> +if (unlikely(q_conf->empty_poll_stats > EMPTYPOLL_MAX)) { > > > Here and in other places - wouldn't it be better to empty_poll_max as configurable > parameter, instead of constant value? It would be more flexible, but i don't think it's "better" in the sense that providing additional options will only make using this (already under-utilized!) API harder than it needs to be. > >> +volatile void *target_addr; >> +uint64_t expected, mask; >> +uint16_t ret; >> + >> +/* >> + * get address of next descriptor in the RX >> + * ring for this queue, as well as expected >> + * value and a mask. >> + */ >> +ret = rte_eth_get_wake_addr(port_id, qidx, >> + &target_addr, &expected, >> + &mask); >> +if (ret == 0) >> +/* -1ULL is maximum value for TSC */ >> +rte_power_monitor(target_addr, >> + expected, mask, >> + 0, -1ULL); > > > Why not make timeout a user specified parameter? This is meant to be an "easy to use" API, we were trying to keep the amount of configuration to an absolute minimum. If the user wants to use custom timeouts, they can do so with using rte_power_monitor API explicitly. > >> +} >> +} else >> +q_conf->empty_poll_stats = 0; >> + >> +return nb_rx; >> +} >> + >> +static uint16_t >> +rte_power_mgmt_pause(uint16_t port_id, uint16_t qidx, >> +struct rte_mbuf **pkts __rte_unused, uint16_t nb_rx, >> +uint16_t max_pkts __rte_unused, void *_ __rte_unused) >> +{ >> +struct pmd_queue_cfg *q_conf; >> +int i; >> +q_conf = &port_cfg[port_id].queue_cfg[qidx]; >> + >> +if (unlikely(nb_rx == 0)) { >> +q_conf->empty_poll_stats++; >> +if (unlikely(q_conf->empty_poll_stats > EMPTYPOLL_MAX)) { >> +for (i = 0; i < PAUSE_NUM; i++) >> +rte_pause(); > > Just rte_delay_us(timeout) instead of this loop? Yes, seems better, thanks. > >> +} >> +} else >> +q_conf->empty_poll_stats = 0; >> + >> +return nb_rx; >> +} >> + >> +static uint16_t >> +rte_power_mgmt_scalefreq(uint16_t port_id, uint16_t qidx, >> +struct rte_mbuf **pkts __rte_unused, uint16_t nb_rx, >> +uint16_t max_pkts __rte_unused, void *_ __rte_unused) >> +{ >> +struct pmd_queue_cfg *q_conf; >> +q_conf = &port_cfg[port_id].queue_cfg[qidx]; >> + >> +if (unlikely(nb_rx == 0)) { >> +q_conf->empty_poll_stats++; >> +if (unlikely(q_conf->empty_poll_stats > EMPTYPOLL_MAX)) { >> +/*scale down freq */ >> +rte_power_freq_min(rte_lcore_id()); >> + >> +} >> +} else { >> +q_conf->empty_poll_stats = 0; >> +/* scal up freq */ >> +rte_power_freq_max(rte_lcore_id()); >> +} >> + >> +return nb_rx; >> +} >> + > > Probably worth to mention in comments that these functions enable/disable > are not MT safe. Will do in v6. > >> +int >> +rte_power_pmd_mgmt_queue_enable(unsigned int lcore_id, >> +uint16_t port_id, >> +uint16_t queue_id, >> +enum rte_power_pmd_mgmt_type mode) >> +{ >> +struct rte_eth_dev *dev; >> +struct pmd_queue_cfg *queue_cfg; >> +int ret = 0; >> + >> +RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -EINVAL); >> +dev = &rte_eth_devices[port_id]; >> + >> +if (port_cfg[port_id].queue_cfg == NULL) { >> +port_cfg[port_id].ref_cnt = 0; >> +/* allocate memory for empty poll stats */ >> +port_cfg[port_id].queue_cfg = rte_malloc_socket(NULL, >> +sizeof(struct pmd_queue_cfg) >> +* RTE_MAX_QUEUES_PER_PORT, >> +0, dev->data->numa_node); >> +if (port_cfg[port_id].queue_cfg == NULL) >> +return -ENOMEM; >> +} >> + >> +queue_cfg = &port_cfg[port_id].queue_cfg[queue_id]; >> + >> +if (queue_cfg->pwr_mgmt_state == PMD_MGMT_ENABLED) { >> +ret = -EINVAL; >> +goto failure_handler; >> +} >> + >> +switch (mode) { >> +case RTE_POWER_MGMT_TYPE_WAIT: >> +if (!rte_cpu_get_flag_enabled(RTE_CPUFLAG_WAITPKG)) { >> +ret = -ENOTSUP; >> +goto failure_handler; >> +} >> +queue_cfg->cur_cb = rte_eth_add_rx_callback(port_id, queue_id, >> +rte_power_mgmt_umwait, NULL); >> +break; >> +case RTE_POWER_MGMT_TYPE_SCALE: >> +/* init scale freq */ >> +if (rte_power_init(lcore_id)) { >> +ret = -EINVAL; >> +goto failure_handler; >> +} >> +queue_cfg->cur_cb = rte_eth_add_rx_callback(port_id, queue_id, >> +rte_power_mgmt_scalefreq, NULL); >> +break; >> +case RTE_POWER_MGMT_TYPE_PAUSE: >> +queue_cfg->cur_cb = rte_eth_add_rx_callback(port_id, queue_id, >> +rte_power_mgmt_pause, NULL); >> +break; > > default: > .... Will add in v6. > >> +} >> +queue_cfg->cb_mode = mode; >> +port_cfg[port_id].ref_cnt++; >> +queue_cfg->pwr_mgmt_state = PMD_MGMT_ENABLED; >> +return ret; >> + >> +failure_handler: >> +if (port_cfg[port_id].ref_cnt == 0) { >> +rte_free(port_cfg[port_id].queue_cfg); >> +port_cfg[port_id].queue_cfg = NULL; >> +} >> +return ret; >> +} >> + >> +int >> +rte_power_pmd_mgmt_queue_disable(unsigned int lcore_id, >> +uint16_t port_id, >> +uint16_t queue_id) >> +{ >> +struct pmd_queue_cfg *queue_cfg; >> + >> +if (port_cfg[port_id].ref_cnt <= 0) >> +return -EINVAL; >> + >> +queue_cfg = &port_cfg[port_id].queue_cfg[queue_id]; >> + >> +if (queue_cfg->pwr_mgmt_state == PMD_MGMT_DISABLED) >> +return -EINVAL; >> + >> +switch (queue_cfg->cb_mode) { >> +case RTE_POWER_MGMT_TYPE_WAIT: > > Think we need wakeup(lcore_id) here. Not sure what you mean? Could you please elaborate? > >> +case RTE_POWER_MGMT_TYPE_PAUSE: >> +rte_eth_remove_rx_callback(port_id, queue_id, >> + queue_cfg->cur_cb); >> +break; >> +case RTE_POWER_MGMT_TYPE_SCALE: >> +rte_power_freq_max(lcore_id); >> +rte_eth_remove_rx_callback(port_id, queue_id, >> + queue_cfg->cur_cb); >> +rte_power_exit(lcore_id); >> +break; >> +} >> +/* it's not recommend to free callback instance here. >> + * it cause memory leak which is a known issue. >> + */ >> +queue_cfg->cur_cb = NULL; >> +queue_cfg->pwr_mgmt_state = PMD_MGMT_DISABLED; >> +port_cfg[port_id].ref_cnt--; >> + >> +if (port_cfg[port_id].ref_cnt == 0) { >> +rte_free(port_cfg[port_id].queue_cfg); > > It is not safe to do so, unless device is already stopped. > Otherwise you need some sync mechanism here (hand-made as bpf lib, or rcu online/offline, or...) Not sure what you mean. We're not freeing the callback structure, we're freeing the local data structure holding the per-port status. > >> +port_cfg[port_id].queue_cfg = NULL; >> +} >> +return 0; >> +} -- Thanks, Anatoly
next prev parent reply other threads:[~2020-10-09 16:47 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 [this message] 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=c3eb3d1e-42d2-56f2-18b2-e1b5735822f7@intel.com \ --to=anatoly.burakov@intel.com \ --cc=david.hunt@intel.com \ --cc=dev@dpdk.org \ --cc=konstantin.ananyev@intel.com \ --cc=liang.j.ma@intel.com \ --cc=stephen@networkplumber.org \ /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
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git