[ovs-dev] [PATCH v6 2/5] netdev-dpdk: skip init for existing mempools.
Fischetti, Antonio
antonio.fischetti at intel.com
Tue Oct 17 17:18:26 UTC 2017
> -----Original Message-----
> From: Kavanagh, Mark B
> Sent: Tuesday, October 17, 2017 2:34 PM
> To: Fischetti, Antonio <antonio.fischetti at intel.com>; dev at openvswitch.org
> Cc: Darrell Ball <dlu998 at gmail.com>; Loftus, Ciara <ciara.loftus at intel.com>;
> Kevin Traynor <ktraynor at redhat.com>; Aaron Conole <aconole at redhat.com>
> Subject: RE: [PATCH v6 2/5] netdev-dpdk: skip init for existing mempools.
>
> >From: Fischetti, Antonio
> >Sent: Monday, October 16, 2017 2:15 PM
> >To: dev at openvswitch.org
> >Cc: Kavanagh, Mark B <mark.b.kavanagh at intel.com>; Darrell Ball
> ><dlu998 at gmail.com>; Loftus, Ciara <ciara.loftus at intel.com>; Kevin Traynor
> ><ktraynor at redhat.com>; Aaron Conole <aconole at redhat.com>; Fischetti, Antonio
> ><antonio.fischetti at intel.com>
> >Subject: [PATCH v6 2/5] netdev-dpdk: skip init for existing mempools.
> >
> >Skip initialization of mempool packet areas if this was already
> >done in a previous call to dpdk_mp_create.
>
> Hi Antonio,
>
> As stated in my previous review, I believe that this could probably be folded
> into patch 1 of the series (it was patch 3 of v5).
> However, I don't object strongly to this patch, so I'll leave it to your
> discretion.
[Antonio]
I'm keeping this change in a separate patch because it is not related
to the fixes for the mempool management.
It's a small improvement, not so much to save CPU cycles, it's actually
a clean up of the code.
>
> Other than that, LGTM.
>
> Thanks,
> Mark
>
> >
> >CC: Mark B Kavanagh <mark.b.kavanagh at intel.com>
> >CC: Darrell Ball <dlu998 at gmail.com>
> >CC: Ciara Loftus <ciara.loftus at intel.com>
> >CC: Kevin Traynor <ktraynor at redhat.com>
> >CC: Aaron Conole <aconole at redhat.com>
> >Signed-off-by: Antonio Fischetti <antonio.fischetti at intel.com>
> >---
> > lib/netdev-dpdk.c | 10 +++++-----
> > 1 file changed, 5 insertions(+), 5 deletions(-)
> >
> >diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> >index 7f2d7ed..07c438a 100644
> >--- a/lib/netdev-dpdk.c
> >+++ b/lib/netdev-dpdk.c
> >@@ -550,6 +550,11 @@ dpdk_mp_create(struct netdev_dpdk *dev, int mtu, bool
> >*mp_exists)
> > if (dmp->mp) {
> > VLOG_DBG("Allocated \"%s\" mempool with %u mbufs", mp_name,
> > dmp->mp_size);
> >+ /* rte_pktmbuf_pool_create has done some initialization of the
> >+ * rte_mbuf part of each dp_packet. Some OvS specific fields
> >+ * of the packet still need to be initialized by
> >+ * ovs_rte_pktmbuf_init. */
> >+ rte_mempool_obj_iter(dmp->mp, ovs_rte_pktmbuf_init, NULL);
> > } else if (rte_errno == EEXIST) {
> > /* A mempool with the same name already exists. We just
> > * retrieve its pointer to be returned to the caller. */
> >@@ -566,11 +571,6 @@ dpdk_mp_create(struct netdev_dpdk *dev, int mtu, bool
> >*mp_exists)
> > }
> > free(mp_name);
> > if (dmp->mp) {
> >- /* rte_pktmbuf_pool_create has done some initialization of the
> >- * rte_mbuf part of each dp_packet, while ovs_rte_pktmbuf_init
> >- * initializes some OVS specific fields of dp_packet.
> >- */
> >- rte_mempool_obj_iter(dmp->mp, ovs_rte_pktmbuf_init, NULL);
> > return dmp;
> > }
> > } while (!(*mp_exists) &&
> >--
> >2.4.11
More information about the dev
mailing list