[dpdk-dev] [PATCH v2 3/4] vhost: allocate and free packets in bulk
David Marchand
david.marchand at redhat.com
Thu Apr 15 17:45:06 CEST 2021
On Thu, Apr 15, 2021 at 5:33 PM Maxime Coquelin
<maxime.coquelin at redhat.com> wrote:
> On 4/7/21 12:17 PM, Balazs Nemeth wrote:
> > Now that all allocation and freeing has been moved together, use the
> > faster bulk versions instead of handling packets one by one.
> >
> > Signed-off-by: Balazs Nemeth <bnemeth at redhat.com>
> > ---
> > lib/librte_vhost/virtio_net.c | 11 ++++++-----
> > 1 file changed, 6 insertions(+), 5 deletions(-)
> >
> > diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c
> > index 496f750e3..2f0c97b91 100644
> > --- a/lib/librte_vhost/virtio_net.c
> > +++ b/lib/librte_vhost/virtio_net.c
> > @@ -2469,10 +2469,10 @@ virtio_dev_tx_packed(struct virtio_net *dev,
> > {
> > uint32_t pkt_idx = 0;
> > uint32_t remained = count;
> > - uint16_t i;
> >
> > - for (i = 0; i < count; ++i)
> > - pkts[i] = rte_pktmbuf_alloc(mbuf_pool);
> > + if (rte_pktmbuf_alloc_bulk(mbuf_pool, pkts, count)) {
> > + return 0;
> > + }
>
> OK, get it now :)
> Maybe just add a comment in previous patches that it is going to be
> handled when moving to bulk allocation.
Looking at the whole series, it is easy to read and understand as a
single patch.
And it avoids this intermediate issue.
--
David Marchand
More information about the dev
mailing list