From: Olivier Matz <olivier.matz@6wind.com>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
Cc: Thomas Monjalon <thomas.monjalon@6wind.com>,
"Kulasek, TomaszX" <tomaszx.kulasek@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v12 1/6] ethdev: add Tx preparation
Date: Thu, 8 Dec 2016 18:24:17 +0100 [thread overview]
Message-ID: <20161208182417.32ec3933@platinum> (raw)
In-Reply-To: <2601191342CEEE43887BDE71AB9772583F0E3405@irsmsx105.ger.corp.intel.com>
Hi Konstantin,
On Fri, 2 Dec 2016 16:17:51 +0000, "Ananyev, Konstantin"
<konstantin.ananyev@intel.com> wrote:
> Hi Olivier,
>
> > -----Original Message-----
> > From: Olivier Matz [mailto:olivier.matz@6wind.com]
> > Sent: Friday, December 2, 2016 8:24 AM
> > To: Ananyev, Konstantin <konstantin.ananyev@intel.com>
> > Cc: Thomas Monjalon <thomas.monjalon@6wind.com>; Kulasek, TomaszX
> > <tomaszx.kulasek@intel.com>; dev@dpdk.org Subject: Re: [dpdk-dev]
> > [PATCH v12 1/6] ethdev: add Tx preparation
> >
> > Hi Konstantin,
> >
> > On Fri, 2 Dec 2016 01:06:30 +0000, "Ananyev, Konstantin"
> > <konstantin.ananyev@intel.com> wrote:
> > > >
> > > > 2016-11-23 18:36, Tomasz Kulasek:
> > > > > +/**
> > > > > + * Process a burst of output packets on a transmit queue of
> > > > > an Ethernet device.
> > > > > + *
> > > > > + * The rte_eth_tx_prepare() function is invoked to prepare
> > > > > output packets to be
> > > > > + * transmitted on the output queue *queue_id* of the Ethernet
> > > > > device designated
> > > > > + * by its *port_id*.
> > > > > + * The *nb_pkts* parameter is the number of packets to be
> > > > > prepared which are
> > > > > + * supplied in the *tx_pkts* array of *rte_mbuf* structures,
> > > > > each of them
> > > > > + * allocated from a pool created with
> > > > > rte_pktmbuf_pool_create().
> > > > > + * For each packet to send, the rte_eth_tx_prepare() function
> > > > > performs
> > > > > + * the following operations:
> > > > > + *
> > > > > + * - Check if packet meets devices requirements for tx
> > > > > offloads.
> > > > > + *
> > > > > + * - Check limitations about number of segments.
> > > > > + *
> > > > > + * - Check additional requirements when debug is enabled.
> > > > > + *
> > > > > + * - Update and/or reset required checksums when tx offload
> > > > > is set for packet.
> > > > > + *
> > > > > + * Since this function can modify packet data, provided mbufs
> > > > > must be safely
> > > > > + * writable (e.g. modified data cannot be in shared
> > > > > segment).
> > > >
> > > > I think we will have to remove this limitation in next releases.
> > > > As we don't know how it could affect the API, I suggest to
> > > > declare this API EXPERIMENTAL.
> > >
> > > While I don't really mind to mart it as experimental, I don't
> > > really understand the reasoning: Why " this function can modify
> > > packet data, provided mbufs must be safely writable" suddenly
> > > becomes a problem? That seems like and obvious limitation to me
> > > and let say tx_burst() has the same one. Second, I don't see how
> > > you are going to remove it without introducing a heavy
> > > performance impact. Konstantin
> >
> > About tx_burst(), I don't think we should force the user to provide
> > a writable mbuf. There are many use cases where passing a clone
> > already works as of today and it avoids duplicating the mbuf data.
> > For instance: traffic generator, multicast, bridging/tap, etc...
> >
> > Moreover, this requirement would be inconsistent with the model you
> > are proposing in case of pipeline:
> > - tx_prepare() on core X, may update the data
> > - tx_burst() on core Y, should not touch the data to avoid cache
> > misses
>
> Probably I wasn't very clear in my previous mail.
> I am not saying that we should force the user to pass a writable mbuf.
> What I am saying that for tx_burst() current expectation is that
> after mbuf is handled to tx_burst() user shouldn't try to modify its
> buffer contents till TX engine is done with the buffer (mbuf_free()
> is called by TX func for it). For tx_prep(), I think, it is the same
> though restrictions are a bit more strict: user should not try to
> read/write to the mbuf while tx_prep() is not finished with it. What
> puzzles me is that why that should be the reason to mark tx_prep() as
> experimental. Konstantin
To be sure we're on the same page, let me reword:
- mbufs passed to tx_prepare() by the application must have their
headers (l2_len + l3_len + l4_len) writable because the phdr checksum
can be replaced. It could be precised in the api comment.
- mbufs passed to tx_burst() must not be modified by the driver/hw, nor
by the application.
About the API itself, I have one more question. I know you've
already discussed this a bit with Adrien, I don't want to spawn a new
big thread from here ;)
The API provides tx_prepare() to check the packets have the proper
format, and possibly modify them (ex: csum offload / tso) to match hw
requirements. So it does both checks (number of segments) and fixes
(csum/tso). What determines things that should be checked and things
that should be fixed?
The application gets few information from tx_prepare() about what should
be done to make the packet accepted by the hw, and the actions will
probably be different depending on hardware. So could we imagine that
in the future the function also tries to fix the packet? I've seen your
comment saying that it has to be an application decision, so what about
having a parameter saying "fix the packet" or "don't fix it"?
About rte_eth_desc_lim->nb_seg_max and
rte_eth_desc_lim->nb_mtu_seg_max, I'm still quite reserved, especially
for the 2nd one, because I don't see how it can be used by the
application. Well, it does not hurt to have them, but for me it looks a
bit useless.
Last thing, I think this API should become the default in the future.
For instance, it would prevent the application to calculate a phdr csum
that will not be used by the hw. Not calling tx_prepare() would require
the user/application to exactly knows the underlying hw and the kind of
packet that are generated. So for me it means we'll need to also update
other examples (other testpmd engines, l2fwd, ...). Do you agree?
Regards,
Olivier
next prev parent reply other threads:[~2016-12-08 17:24 UTC|newest]
Thread overview: 260+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-26 16:22 [dpdk-dev] [PATCH 0/6] " Tomasz Kulasek
2016-08-26 16:22 ` [dpdk-dev] [PATCH 1/6] ethdev: " Tomasz Kulasek
2016-09-08 7:28 ` Jerin Jacob
2016-09-08 16:09 ` Kulasek, TomaszX
2016-09-09 5:58 ` Jerin Jacob
2016-08-26 16:22 ` [dpdk-dev] [PATCH 2/6] e1000: " Tomasz Kulasek
2016-08-26 16:22 ` [dpdk-dev] [PATCH 3/6] fm10k: " Tomasz Kulasek
2016-08-26 16:22 ` [dpdk-dev] [PATCH 4/6] i40e: " Tomasz Kulasek
2016-08-26 16:22 ` [dpdk-dev] [PATCH 5/6] ixgbe: " Tomasz Kulasek
2016-08-26 16:22 ` [dpdk-dev] [PATCH 6/6] testpmd: add txprep engine Tomasz Kulasek
2016-08-26 17:31 ` [dpdk-dev] [PATCH 0/6] add Tx preparation Stephen Hemminger
2016-08-31 12:34 ` Ananyev, Konstantin
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 " Tomasz Kulasek
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 1/6] ethdev: " Tomasz Kulasek
2016-09-19 13:03 ` Ananyev, Konstantin
2016-09-19 15:29 ` Kulasek, TomaszX
2016-09-19 16:06 ` Jerin Jacob
2016-09-20 9:06 ` Ananyev, Konstantin
2016-09-21 8:29 ` Jerin Jacob
2016-09-22 9:36 ` Ananyev, Konstantin
2016-09-22 9:59 ` Jerin Jacob
2016-09-23 9:41 ` Ananyev, Konstantin
2016-09-23 10:29 ` Jerin Jacob
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 2/6] e1000: " Tomasz Kulasek
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 3/6] fm10k: " Tomasz Kulasek
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 4/6] i40e: " Tomasz Kulasek
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 5/6] ixgbe: " Tomasz Kulasek
2016-09-19 12:54 ` Ananyev, Konstantin
2016-09-19 13:58 ` Kulasek, TomaszX
2016-09-19 15:23 ` Ananyev, Konstantin
2016-09-20 7:15 ` Ananyev, Konstantin
2016-09-12 14:44 ` [dpdk-dev] [PATCH v2 6/6] testpmd: add txprep engine Tomasz Kulasek
2016-09-19 12:59 ` Ananyev, Konstantin
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 0/6] add Tx preparation Tomasz Kulasek
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 1/6] ethdev: " Tomasz Kulasek
2016-09-29 10:40 ` Ananyev, Konstantin
2016-09-29 13:04 ` Kulasek, TomaszX
2016-09-29 13:57 ` Ananyev, Konstantin
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 2/6] e1000: " Tomasz Kulasek
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 3/6] fm10k: " Tomasz Kulasek
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 4/6] i40e: " Tomasz Kulasek
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 5/6] ixgbe: " Tomasz Kulasek
2016-09-29 11:09 ` Ananyev, Konstantin
2016-09-29 15:12 ` Kulasek, TomaszX
2016-09-29 17:01 ` Ananyev, Konstantin
2016-09-28 11:10 ` [dpdk-dev] [PATCH v3 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 0/6] add Tx preparation Tomasz Kulasek
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 1/6] ethdev: " Tomasz Kulasek
2016-10-10 14:08 ` Thomas Monjalon
2016-10-13 7:08 ` Thomas Monjalon
2016-10-13 10:47 ` Kulasek, TomaszX
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 2/6] e1000: " Tomasz Kulasek
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 3/6] fm10k: " Tomasz Kulasek
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 4/6] i40e: " Tomasz Kulasek
2016-10-10 14:02 ` Wu, Jingjing
2016-10-10 17:20 ` Kulasek, TomaszX
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 5/6] ixgbe: " Tomasz Kulasek
2016-09-30 9:00 ` [dpdk-dev] [PATCH v4 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-09-30 9:55 ` [dpdk-dev] [PATCH v4 0/6] add Tx preparation Ananyev, Konstantin
2016-10-13 17:36 ` [dpdk-dev] [PATCH v5 " Tomasz Kulasek
2016-10-13 17:36 ` [dpdk-dev] [PATCH v5 1/6] ethdev: " Tomasz Kulasek
2016-10-13 19:21 ` Thomas Monjalon
2016-10-14 14:02 ` Kulasek, TomaszX
2016-10-14 14:20 ` Thomas Monjalon
2016-10-17 16:25 ` Kulasek, TomaszX
2016-10-13 17:36 ` [dpdk-dev] [PATCH v5 2/6] e1000: " Tomasz Kulasek
2016-10-13 17:36 ` [dpdk-dev] [PATCH v5 3/6] fm10k: " Tomasz Kulasek
2016-10-13 17:37 ` [dpdk-dev] [PATCH v5 4/6] i40e: " Tomasz Kulasek
2016-10-13 17:37 ` [dpdk-dev] [PATCH v5 5/6] ixgbe: " Tomasz Kulasek
2016-10-13 17:37 ` [dpdk-dev] [PATCH v5 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 0/6] add Tx preparation Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 1/6] ethdev: " Tomasz Kulasek
2016-10-18 14:57 ` Olivier Matz
2016-10-19 15:42 ` Kulasek, TomaszX
2016-10-19 22:07 ` Ananyev, Konstantin
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 2/6] e1000: " Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 3/6] fm10k: " Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 4/6] i40e: " Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 5/6] ixgbe: " Tomasz Kulasek
2016-10-14 15:05 ` [dpdk-dev] [PATCH v6 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-18 12:28 ` [dpdk-dev] [PATCH v6 0/6] add Tx preparation Ananyev, Konstantin
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 1/6] ethdev: " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 2/6] e1000: " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 3/6] fm10k: " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 4/6] i40e: " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 5/6] ixgbe: " Tomasz Kulasek
2016-10-21 13:42 ` [dpdk-dev] [PATCH v7 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 0/6] add Tx preparation Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 1/6] ethdev: " Tomasz Kulasek
2016-10-24 12:14 ` Ananyev, Konstantin
2016-10-24 12:49 ` Kulasek, TomaszX
2016-10-24 12:56 ` Ananyev, Konstantin
2016-10-24 14:12 ` Kulasek, TomaszX
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 2/6] e1000: " Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 3/6] fm10k: " Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 4/6] i40e: " Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 5/6] ixgbe: " Tomasz Kulasek
2016-10-21 14:46 ` [dpdk-dev] [PATCH v8 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 0/6] add Tx preparation Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 1/6] ethdev: " Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 2/6] e1000: " Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 3/6] fm10k: " Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 4/6] i40e: " Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 5/6] ixgbe: " Tomasz Kulasek
2016-10-24 14:05 ` [dpdk-dev] [PATCH v9 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 0/6] add Tx preparation Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 1/6] ethdev: " Tomasz Kulasek
2016-10-25 14:41 ` Olivier Matz
2016-10-25 17:28 ` Kulasek, TomaszX
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 2/6] e1000: " Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 3/6] fm10k: " Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 4/6] i40e: " Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 5/6] ixgbe: " Tomasz Kulasek
2016-10-24 16:51 ` [dpdk-dev] [PATCH v10 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-10-24 17:26 ` [dpdk-dev] [PATCH v10 0/6] add Tx preparation Ananyev, Konstantin
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 " Tomasz Kulasek
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 1/6] ethdev: " Tomasz Kulasek
2016-10-27 12:38 ` Olivier Matz
2016-10-27 15:01 ` Thomas Monjalon
2016-10-27 15:52 ` Ananyev, Konstantin
2016-10-27 16:02 ` Thomas Monjalon
2016-10-27 16:24 ` Ananyev, Konstantin
2016-10-27 16:39 ` Thomas Monjalon
2016-10-28 11:29 ` Ananyev, Konstantin
2016-10-28 11:34 ` Ananyev, Konstantin
2016-10-28 12:23 ` Thomas Monjalon
2016-10-28 12:59 ` Ananyev, Konstantin
2016-10-28 13:42 ` Thomas Monjalon
2016-11-01 12:57 ` Ananyev, Konstantin
2016-11-04 11:35 ` Thomas Monjalon
2016-10-27 16:39 ` Kulasek, TomaszX
2016-10-28 10:15 ` Ananyev, Konstantin
2016-10-28 10:22 ` Kulasek, TomaszX
2016-10-28 10:22 ` Thomas Monjalon
2016-10-28 10:28 ` Ananyev, Konstantin
2016-10-28 11:02 ` Richardson, Bruce
2016-10-28 11:14 ` Jerin Jacob
2016-10-27 16:29 ` Kulasek, TomaszX
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 2/6] e1000: " Tomasz Kulasek
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 3/6] fm10k: " Tomasz Kulasek
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 4/6] i40e: " Tomasz Kulasek
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 5/6] ixgbe: " Tomasz Kulasek
2016-10-26 12:56 ` [dpdk-dev] [PATCH v11 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 0/6] add Tx preparation Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 1/6] ethdev: " Tomasz Kulasek
2016-11-28 10:54 ` Thomas Monjalon
2016-12-01 16:24 ` Thomas Monjalon
2016-12-01 19:20 ` Kulasek, TomaszX
2016-12-01 19:52 ` Thomas Monjalon
2016-12-01 21:56 ` Jerin Jacob
2016-12-01 22:31 ` Kulasek, TomaszX
2016-12-01 23:50 ` Thomas Monjalon
2016-12-09 13:25 ` Kulasek, TomaszX
2016-12-02 0:10 ` Ananyev, Konstantin
2016-12-22 13:14 ` Thomas Monjalon
2016-12-22 13:37 ` Jerin Jacob
2016-12-01 16:26 ` Thomas Monjalon
2016-12-01 16:28 ` Thomas Monjalon
2016-12-02 1:06 ` Ananyev, Konstantin
2016-12-02 8:24 ` Olivier Matz
2016-12-02 16:17 ` Ananyev, Konstantin
2016-12-08 17:24 ` Olivier Matz [this message]
2016-12-09 17:19 ` Kulasek, TomaszX
2016-12-12 11:51 ` Ananyev, Konstantin
2016-12-22 13:30 ` Thomas Monjalon
2016-12-22 14:11 ` Ananyev, Konstantin
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 2/6] e1000: " Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 3/6] fm10k: " Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 4/6] i40e: " Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 5/6] ixgbe: " Tomasz Kulasek
2016-11-23 17:36 ` [dpdk-dev] [PATCH v12 6/6] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-12-07 11:13 ` Ferruh Yigit
2016-12-07 12:00 ` Mcnamara, John
2016-12-07 12:12 ` Kulasek, TomaszX
2016-12-07 12:49 ` Ananyev, Konstantin
2016-12-07 12:00 ` Kulasek, TomaszX
2016-11-28 11:03 ` [dpdk-dev] [PATCH v12 0/6] add Tx preparation Thomas Monjalon
2016-11-30 5:48 ` John Daley (johndale)
2016-11-30 10:59 ` Ananyev, Konstantin
2016-11-30 7:40 ` Adrien Mazarguil
2016-11-30 8:50 ` Thomas Monjalon
2016-11-30 10:30 ` Kulasek, TomaszX
2016-12-01 7:19 ` Adrien Mazarguil
2016-11-30 10:54 ` Ananyev, Konstantin
2016-12-01 7:15 ` Adrien Mazarguil
2016-12-01 8:58 ` Thomas Monjalon
2016-12-01 22:03 ` Jerin Jacob
2016-12-02 1:00 ` Ananyev, Konstantin
2016-12-05 15:03 ` Adrien Mazarguil
2016-12-05 16:43 ` Ananyev, Konstantin
2016-12-05 18:10 ` Adrien Mazarguil
2016-12-06 10:56 ` Ananyev, Konstantin
2016-12-06 13:59 ` Adrien Mazarguil
2016-12-06 20:31 ` Ananyev, Konstantin
2016-12-07 10:08 ` Adrien Mazarguil
2016-11-30 16:34 ` Harish Patil
2016-11-30 17:42 ` Ananyev, Konstantin
2016-11-30 18:26 ` Thomas Monjalon
2016-11-30 21:01 ` Jerin Jacob
2016-12-01 10:50 ` Ferruh Yigit
2016-12-02 23:55 ` Yong Wang
2016-12-04 12:11 ` Ananyev, Konstantin
2016-12-06 18:25 ` Yong Wang
2016-12-07 9:57 ` Ferruh Yigit
2016-12-07 10:03 ` Ananyev, Konstantin
2016-12-07 14:31 ` Alejandro Lucero
2016-12-08 18:20 ` Yong Wang
2016-12-09 14:40 ` Jan Mędala
2016-12-12 15:02 ` Ananyev, Konstantin
2016-12-16 0:15 ` Ananyev, Konstantin
2016-12-16 13:53 ` Jan Mędala
2016-12-16 15:27 ` Ananyev, Konstantin
2016-12-16 15:37 ` Jan Mędala
2016-12-12 17:29 ` Ananyev, Konstantin
2016-11-30 18:39 ` Harish Patil
2016-11-30 19:37 ` Ajit Khaparde
2016-12-01 8:24 ` Rahul Lakkireddy
2016-12-06 15:53 ` Ferruh Yigit
2016-12-07 7:55 ` Andrew Rybchenko
2016-12-07 8:11 ` Yuanhan Liu
2016-12-07 10:13 ` Ananyev, Konstantin
2016-12-07 10:18 ` Yuanhan Liu
2016-12-07 10:22 ` Ananyev, Konstantin
2016-12-13 11:59 ` Ferruh Yigit
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 0/7] " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 1/7] ethdev: " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 2/7] e1000: " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 3/7] fm10k: " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 4/7] i40e: " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 5/7] ixgbe: " Tomasz Kulasek
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 6/7] vmxnet3: " Tomasz Kulasek
2016-12-13 18:15 ` Yong Wang
2016-12-20 13:36 ` Ferruh Yigit
2016-12-22 13:10 ` Thomas Monjalon
2016-12-13 17:41 ` [dpdk-dev] [PATCH v13 7/7] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 0/8] add Tx preparation Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 1/8] ethdev: " Tomasz Kulasek
2016-12-22 14:24 ` Thomas Monjalon
2016-12-23 18:49 ` Kulasek, TomaszX
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 2/8] e1000: " Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 3/8] fm10k: " Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 4/8] i40e: " Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 5/8] ixgbe: " Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 6/8] vmxnet3: " Tomasz Kulasek
2016-12-22 17:59 ` Yong Wang
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 7/8] ena: " Tomasz Kulasek
2016-12-22 13:05 ` [dpdk-dev] [PATCH v14 8/8] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2016-12-22 14:28 ` Thomas Monjalon
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 0/8] add Tx preparation Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 1/8] ethdev: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 2/8] e1000: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 3/8] fm10k: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 4/8] i40e: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 5/8] ixgbe: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 6/8] vmxnet3: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 7/8] ena: " Tomasz Kulasek
2016-12-23 18:40 ` [dpdk-dev] [PATCH v15 8/8] testpmd: use Tx preparation in csum engine Tomasz Kulasek
2017-01-04 19:41 ` [dpdk-dev] [PATCH v15 0/8] add Tx preparation Thomas Monjalon
2017-01-05 15:43 ` Avi Kivity
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=20161208182417.32ec3933@platinum \
--to=olivier.matz@6wind.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@intel.com \
--cc=thomas.monjalon@6wind.com \
--cc=tomaszx.kulasek@intel.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).