From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
To: Thomas Monjalon <thomas@monjalon.net>,
Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Cc: dev@dpdk.org, stephen@networkplumber.org, ferruh.yigit@intel.com,
olivier.matz@6wind.com, jerinjacobk@gmail.com,
maxime.coquelin@redhat.com, david.marchand@redhat.com
Subject: Re: [dpdk-dev] [PATCH v3 1/9] ethdev: introduce Rx buffer split
Date: Mon, 12 Oct 2020 20:11:06 +0300 [thread overview]
Message-ID: <e38e4ef6-baef-bd73-55ca-0936d03bbdc2@oktetlabs.ru> (raw)
In-Reply-To: <228932926.FOKgLshO0b@thomas>
On 10/12/20 8:03 PM, Thomas Monjalon wrote:
> 12/10/2020 18:38, Andrew Rybchenko:
>> On 10/12/20 7:19 PM, Viacheslav Ovsiienko wrote:
>>> int
>>> +rte_eth_rxseg_queue_setup(uint16_t port_id, uint16_t rx_queue_id,
>>> + uint16_t nb_rx_desc, unsigned int socket_id,
>>> + const struct rte_eth_rxconf *rx_conf,
>>> + const struct rte_eth_rxseg *rx_seg, uint16_t n_seg)
>>> +{
>>> + int ret;
>>> + uint16_t seg_idx;
>>> + uint32_t mbp_buf_size;
>>
>> <start-of-dup>
>>
>>> + struct rte_eth_dev *dev;
>>> + struct rte_eth_dev_info dev_info;
>>> + struct rte_eth_rxconf local_conf;
>>> + void **rxq;
>>> +
>>> + RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -EINVAL);
>>> +
>>> + dev = &rte_eth_devices[port_id];
>>> + if (rx_queue_id >= dev->data->nb_rx_queues) {
>>> + RTE_ETHDEV_LOG(ERR, "Invalid RX queue_id=%u\n", rx_queue_id);
>>> + return -EINVAL;
>>> + }
>>
>> <end-of-dup>
>>
>>> +
>>> + if (rx_seg == NULL) {
>>> + RTE_ETHDEV_LOG(ERR, "Invalid null description pointer\n");
>>> + return -EINVAL;
>>> + }
>>> +
>>> + if (n_seg == 0) {
>>> + RTE_ETHDEV_LOG(ERR, "Invalid zero description number\n");
>>> + return -EINVAL;
>>> + }
>>> +
>>> + RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->rxseg_queue_setup, -ENOTSUP);
>>> +
>>
>> <start-of-dup>
>>
>>> + /*
>>> + * Check the size of the mbuf data buffer.
>>> + * This value must be provided in the private data of the memory pool.
>>> + * First check that the memory pool has a valid private data.
>>> + */
>>> + ret = rte_eth_dev_info_get(port_id, &dev_info);
>>> + if (ret != 0)
>>> + return ret;
>>
>> <end-of-dup>
>>
>>> +
>>> + for (seg_idx = 0; seg_idx < n_seg; seg_idx++) {
>>> + struct rte_mempool *mp = rx_seg[seg_idx].mp;
>>> +
>>> + if (mp->private_data_size <
>>> + sizeof(struct rte_pktmbuf_pool_private)) {
>>> + RTE_ETHDEV_LOG(ERR, "%s private_data_size %d < %d\n",
>>> + mp->name, (int)mp->private_data_size,
>>> + (int)sizeof(struct rte_pktmbuf_pool_private));
>>> + return -ENOSPC;
>>> + }
>>> +
>>> + mbp_buf_size = rte_pktmbuf_data_room_size(mp);
>>> + if (mbp_buf_size < rx_seg[seg_idx].length +
>>> + rx_seg[seg_idx].offset +
>>> + (seg_idx ? 0 :
>>> + (uint32_t)RTE_PKTMBUF_HEADROOM)) {
>>> + RTE_ETHDEV_LOG(ERR,
>>> + "%s mbuf_data_room_size %d < %d"
>>> + " (segment length=%d + segment offset=%d)\n",
>>> + mp->name, (int)mbp_buf_size,
>>> + (int)(rx_seg[seg_idx].length +
>>> + rx_seg[seg_idx].offset),
>>> + (int)rx_seg[seg_idx].length,
>>> + (int)rx_seg[seg_idx].offset);
>>> + return -EINVAL;
>>> + }
>>> + }
>>> +
>>
>> <start-of-huge-dup>
>>
>>> + /* Use default specified by driver, if nb_rx_desc is zero */
>>> + if (nb_rx_desc == 0) {
>>> + nb_rx_desc = dev_info.default_rxportconf.ring_size;
>>> + /* If driver default is also zero, fall back on EAL default */
>>> + if (nb_rx_desc == 0)
>>> + nb_rx_desc = RTE_ETH_DEV_FALLBACK_RX_RINGSIZE;
>>> + }
>>> +
>>> + if (nb_rx_desc > dev_info.rx_desc_lim.nb_max ||
>>> + nb_rx_desc < dev_info.rx_desc_lim.nb_min ||
>>> + nb_rx_desc % dev_info.rx_desc_lim.nb_align != 0) {
>>> +
>>> + RTE_ETHDEV_LOG(ERR,
>>> + "Invalid value for nb_rx_desc(=%hu), should be: "
>>> + "<= %hu, >= %hu, and a product of %hu\n",
>>> + nb_rx_desc, dev_info.rx_desc_lim.nb_max,
>>> + dev_info.rx_desc_lim.nb_min,
>>> + dev_info.rx_desc_lim.nb_align);
>>> + return -EINVAL;
>>> + }
>>> +
>>> + if (dev->data->dev_started &&
>>> + !(dev_info.dev_capa &
>>> + RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP))
>>> + return -EBUSY;
>>> +
>>> + if (dev->data->dev_started &&
>>> + (dev->data->rx_queue_state[rx_queue_id] !=
>>> + RTE_ETH_QUEUE_STATE_STOPPED))
>>> + return -EBUSY;
>>> +
>>> + rxq = dev->data->rx_queues;
>>> + if (rxq[rx_queue_id]) {
>>> + RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->rx_queue_release,
>>> + -ENOTSUP);
>>> + (*dev->dev_ops->rx_queue_release)(rxq[rx_queue_id]);
>>> + rxq[rx_queue_id] = NULL;
>>> + }
>>> +
>>> + if (rx_conf == NULL)
>>> + rx_conf = &dev_info.default_rxconf;
>>> +
>>> + local_conf = *rx_conf;
>>> +
>>> + /*
>>> + * If an offloading has already been enabled in
>>> + * rte_eth_dev_configure(), it has been enabled on all queues,
>>> + * so there is no need to enable it in this queue again.
>>> + * The local_conf.offloads input to underlying PMD only carries
>>> + * those offloadings which are only enabled on this queue and
>>> + * not enabled on all queues.
>>> + */
>>> + local_conf.offloads &= ~dev->data->dev_conf.rxmode.offloads;
>>> +
>>> + /*
>>> + * New added offloadings for this queue are those not enabled in
>>> + * rte_eth_dev_configure() and they must be per-queue type.
>>> + * A pure per-port offloading can't be enabled on a queue while
>>> + * disabled on another queue. A pure per-port offloading can't
>>> + * be enabled for any queue as new added one if it hasn't been
>>> + * enabled in rte_eth_dev_configure().
>>> + */
>>> + if ((local_conf.offloads & dev_info.rx_queue_offload_capa) !=
>>> + local_conf.offloads) {
>>> + RTE_ETHDEV_LOG(ERR,
>>> + "Ethdev port_id=%d rx_queue_id=%d, new added offloads"
>>> + " 0x%"PRIx64" must be within per-queue offload"
>>> + " capabilities 0x%"PRIx64" in %s()\n",
>>> + port_id, rx_queue_id, local_conf.offloads,
>>> + dev_info.rx_queue_offload_capa,
>>> + __func__);
>>> + return -EINVAL;
>>> + }
>>> +
>>> + /*
>>> + * If LRO is enabled, check that the maximum aggregated packet
>>> + * size is supported by the configured device.
>>> + */
>>> + if (local_conf.offloads & DEV_RX_OFFLOAD_TCP_LRO) {
>>> + if (dev->data->dev_conf.rxmode.max_lro_pkt_size == 0)
>>> + dev->data->dev_conf.rxmode.max_lro_pkt_size =
>>> + dev->data->dev_conf.rxmode.max_rx_pkt_len;
>>> + int ret = check_lro_pkt_size(port_id,
>>> + dev->data->dev_conf.rxmode.max_lro_pkt_size,
>>> + dev->data->dev_conf.rxmode.max_rx_pkt_len,
>>> + dev_info.max_lro_pkt_size);
>>> + if (ret != 0)
>>> + return ret;
>>> + }
>>
>> <end-of-huge-dup>
>>
>> IMO It is not acceptable to duplication so much code.
>> It is simply unmaintainable.
>>
>> NACK
>
> Can it be solved by making rte_eth_rx_queue_setup() a wrapper
> on top of this new rte_eth_rxseg_queue_setup() ?
>
Could be, but strictly speaking it will break arguments
validation order and error reporting in various cases.
So, refactoring is required to keep it consistent.
next prev parent reply other threads:[~2020-10-12 17:11 UTC|newest]
Thread overview: 172+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-17 17:49 [dpdk-dev] [RFC] " Slava Ovsiienko
2020-09-17 16:55 ` Andrew Rybchenko
2020-10-01 8:54 ` Slava Ovsiienko
2020-10-12 8:45 ` Andrew Rybchenko
2020-10-12 9:56 ` Slava Ovsiienko
2020-10-12 15:14 ` Thomas Monjalon
2020-10-12 15:28 ` Ananyev, Konstantin
2020-10-12 15:34 ` Slava Ovsiienko
2020-10-12 15:56 ` Ananyev, Konstantin
2020-10-12 15:59 ` Slava Ovsiienko
2020-10-12 16:52 ` Thomas Monjalon
2020-10-12 16:03 ` Andrew Rybchenko
2020-10-12 16:10 ` Slava Ovsiienko
2020-10-13 21:59 ` Ferruh Yigit
2020-10-14 7:17 ` Thomas Monjalon
2020-10-14 7:37 ` Slava Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 0/5] " Viacheslav Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 1/5] " Viacheslav Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 2/5] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 3/5] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 4/5] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-05 6:26 ` [dpdk-dev] [PATCH 5/5] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 0/9] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 1/9] " Viacheslav Ovsiienko
2020-10-11 22:17 ` Thomas Monjalon
2020-10-12 9:40 ` Slava Ovsiienko
2020-10-12 10:09 ` Thomas Monjalon
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 2/9] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 3/9] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 4/9] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 5/9] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 6/9] net/mlx5: add extended Rx queue setup routine Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 7/9] net/mlx5: configure Rx queue to support split Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 8/9] net/mlx5: register multiple pool for Rx queue Viacheslav Ovsiienko
2020-10-07 15:06 ` [dpdk-dev] [PATCH v2 9/9] net/mlx5: update Rx datapath to support split Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 0/9] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 1/9] " Viacheslav Ovsiienko
2020-10-12 16:38 ` Andrew Rybchenko
2020-10-12 17:03 ` Thomas Monjalon
2020-10-12 17:11 ` Andrew Rybchenko [this message]
2020-10-12 20:22 ` Slava Ovsiienko
2020-10-12 17:11 ` Slava Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 2/9] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 3/9] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 4/9] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 5/9] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 6/9] net/mlx5: add extended Rx queue setup routine Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 7/9] net/mlx5: configure Rx queue to support split Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 8/9] net/mlx5: register multiple pool for Rx queue Viacheslav Ovsiienko
2020-10-12 16:19 ` [dpdk-dev] [PATCH v3 9/9] net/mlx5: update Rx datapath to support split Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 0/9] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 1/9] " Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 2/9] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 3/9] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 4/9] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 5/9] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-12 20:09 ` [dpdk-dev] [PATCH v4 6/9] net/mlx5: add extended Rx queue setup routine Viacheslav Ovsiienko
2020-10-12 20:10 ` [dpdk-dev] [PATCH v4 7/9] net/mlx5: configure Rx queue to support split Viacheslav Ovsiienko
2020-10-12 20:10 ` [dpdk-dev] [PATCH v4 8/9] net/mlx5: register multiple pool for Rx queue Viacheslav Ovsiienko
2020-10-12 20:10 ` [dpdk-dev] [PATCH v4 9/9] net/mlx5: update Rx datapath to support split Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 1/6] " Viacheslav Ovsiienko
2020-10-13 22:34 ` Ferruh Yigit
2020-10-14 13:31 ` Olivier Matz
2020-10-14 14:42 ` Slava Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-13 19:21 ` [dpdk-dev] [PATCH v5 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-14 18:11 ` [dpdk-dev] [PATCH v6 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-14 18:11 ` [dpdk-dev] [PATCH v6 1/6] " Viacheslav Ovsiienko
2020-10-14 18:57 ` Jerin Jacob
2020-10-15 7:43 ` Slava Ovsiienko
2020-10-15 9:27 ` Jerin Jacob
2020-10-15 10:27 ` Jerin Jacob
2020-10-15 10:51 ` Slava Ovsiienko
2020-10-15 11:26 ` Jerin Jacob
2020-10-15 11:36 ` Ferruh Yigit
2020-10-15 11:49 ` Slava Ovsiienko
2020-10-15 12:49 ` Thomas Monjalon
2020-10-15 13:07 ` Andrew Rybchenko
2020-10-15 13:57 ` Slava Ovsiienko
2020-10-15 20:22 ` Slava Ovsiienko
2020-10-15 9:49 ` Andrew Rybchenko
2020-10-15 10:34 ` Slava Ovsiienko
2020-10-15 11:09 ` Andrew Rybchenko
2020-10-15 14:39 ` Slava Ovsiienko
2020-10-14 22:13 ` Thomas Monjalon
2020-10-14 22:50 ` Ajit Khaparde
2020-10-15 10:11 ` Andrew Rybchenko
2020-10-15 10:19 ` Thomas Monjalon
2020-10-14 18:11 ` [dpdk-dev] [PATCH v6 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-14 18:11 ` [dpdk-dev] [PATCH v6 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-14 18:12 ` [dpdk-dev] [PATCH v6 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-14 18:12 ` [dpdk-dev] [PATCH v6 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-14 18:12 ` [dpdk-dev] [PATCH v6 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-15 0:55 ` [dpdk-dev] [PATCH v2] eal/rte_malloc: add alloc_size() attribute to allocation functions Stephen Hemminger
2020-10-19 14:13 ` Thomas Monjalon
2020-10-19 14:22 ` Thomas Monjalon
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 1/6] " Viacheslav Ovsiienko
2020-10-15 20:30 ` Jerin Jacob
2020-10-15 20:33 ` Thomas Monjalon
2020-10-15 22:01 ` Ajit Khaparde
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-15 20:17 ` [dpdk-dev] [PATCH v7 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 1/6] " Viacheslav Ovsiienko
2020-10-16 8:51 ` Andrew Rybchenko
2020-10-16 8:58 ` Andrew Rybchenko
2020-10-16 9:15 ` Slava Ovsiienko
2020-10-16 9:27 ` Andrew Rybchenko
2020-10-16 9:34 ` Slava Ovsiienko
2020-10-16 9:37 ` Thomas Monjalon
2020-10-16 9:38 ` Slava Ovsiienko
2020-10-16 9:19 ` Ferruh Yigit
2020-10-16 9:21 ` Andrew Rybchenko
2020-10-16 9:22 ` Slava Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-16 7:48 ` [dpdk-dev] [PATCH v8 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 1/6] " Viacheslav Ovsiienko
2020-10-16 11:21 ` Ferruh Yigit
2020-10-16 13:08 ` Slava Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-16 10:22 ` [dpdk-dev] [PATCH v9 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 1/6] " Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-16 12:41 ` [dpdk-dev] [PATCH v10 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 1/6] " Viacheslav Ovsiienko
2020-10-16 15:14 ` Thomas Monjalon
2020-10-16 16:18 ` Slava Ovsiienko
2020-10-16 15:47 ` Ferruh Yigit
2020-10-16 16:05 ` Thomas Monjalon
2020-10-16 16:06 ` Ferruh Yigit
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-16 15:05 ` Ferruh Yigit
2020-10-16 15:38 ` Ferruh Yigit
2020-10-16 15:48 ` Slava Ovsiienko
2020-10-16 15:52 ` Ferruh Yigit
2020-10-16 15:55 ` Slava Ovsiienko
2020-10-16 15:57 ` Ferruh Yigit
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-16 13:39 ` [dpdk-dev] [PATCH v11 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 0/6] ethdev: introduce Rx buffer split Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 1/6] " Viacheslav Ovsiienko
2020-10-16 19:22 ` Ferruh Yigit
2020-10-16 21:36 ` Ferruh Yigit
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 2/6] app/testpmd: add multiple pools per core creation Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 3/6] app/testpmd: add buffer split offload configuration Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 4/6] app/testpmd: add rxpkts commands and parameters Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 5/6] app/testpmd: add rxoffs " Viacheslav Ovsiienko
2020-10-16 16:44 ` [dpdk-dev] [PATCH v12 6/6] app/testpmd: add extended Rx queue setup Viacheslav Ovsiienko
2020-10-16 17:05 ` [dpdk-dev] [PATCH v12 0/6] ethdev: introduce Rx buffer split Ferruh Yigit
2020-10-16 17:07 ` Slava Ovsiienko
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=e38e4ef6-baef-bd73-55ca-0936d03bbdc2@oktetlabs.ru \
--to=andrew.rybchenko@oktetlabs.ru \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=jerinjacobk@gmail.com \
--cc=maxime.coquelin@redhat.com \
--cc=olivier.matz@6wind.com \
--cc=stephen@networkplumber.org \
--cc=thomas@monjalon.net \
--cc=viacheslavo@nvidia.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).