On 10/21/2015 2:58 AM, Stephen Hemminger wrote: > On Tue, 20 Oct 2015 23:30:06 +0800 > Huawei Xie <huawei.xie at intel.com> wrote: > >> + desc_idx = (uint16_t)(vq->vq_used_cons_idx & >> + ((vq->vq_nentries >> 1) - 1)); >> + free[0] = (struct rte_mbuf *)vq->vq_descx[desc_idx++].cookie; >> + nb_free = 1; >> + >> + for (i = 1; i < VIRTIO_TX_FREE_NR; i++) { >> + m = (struct rte_mbuf *)vq->vq_descx[desc_idx++].cookie; >> + if (likely(m->pool == free[0]->pool)) >> + free[nb_free++] = m; >> + else { >> + rte_mempool_put_bulk(free[0]->pool, (void **)free, >> + nb_free); >> + free[0] = m; >> + nb_free = 1; >> + } >> + } >> + >> + rte_mempool_put_bulk(free[0]->pool, (void **)free, nb_free); > Might be better to introduce a function in rte_mbuf.h which > does this so other drivers can use same code? > > rte_pktmbuf_free_bulk(pkts[], n) Agree. It would be good to have a generic rte_pktmbuf_free(/alloc)_bulk. Several other drivers and future vhost patches also use the same logic. I prefer to implement this later as this is API change.
- [dpdk-dev] [PATCH v3 0/7] virtio ring layout optimizatio... Huawei Xie
- [dpdk-dev] [PATCH v3 1/7] virtio: add virtio_rxtx.h... Huawei Xie
- [dpdk-dev] [PATCH v3 2/7] virtio: add software rx r... Huawei Xie
- [dpdk-dev] [PATCH v3 3/7] virtio: rx/tx ring layout... Huawei Xie
- [dpdk-dev] [PATCH v3 4/7] virtio: fill RX avail rin... Huawei Xie
- [dpdk-dev] [PATCH v3 5/7] virtio: virtio vec rx Huawei Xie
- [dpdk-dev] [PATCH v3 5/7] virtio: virtio vec rx Wang, Zhihong
- [dpdk-dev] [PATCH v3 5/7] virtio: virtio ve... Xie, Huawei
- [dpdk-dev] [PATCH v3 6/7] virtio: simple tx routine Huawei Xie
- [dpdk-dev] [PATCH v3 6/7] virtio: simple tx rou... Stephen Hemminger
- [dpdk-dev] [PATCH v3 6/7] virtio: simple tx... Xie, Huawei
- [dpdk-dev] [PATCH v3 6/7] virtio: simple tx rou... Tan, Jianfeng
- [dpdk-dev] [PATCH v3 7/7] virtio: pick simple rx/tx... Huawei Xie
- [dpdk-dev] [PATCH v3 7/7] virtio: pick simple r... Tan, Jianfeng
- [dpdk-dev] [PATCH v3 7/7] virtio: pick simp... Xie, Huawei
- [dpdk-dev] [PATCH v4 0/7] virtio ring layout optimizatio... Huawei Xie
- [dpdk-dev] [PATCH v4 1/7] virtio: add virtio_rxtx.h... Huawei Xie
- [dpdk-dev] [PATCH v4 2/7] virtio: add software rx r... Huawei Xie
- [dpdk-dev] [PATCH v4 3/7] virtio: rx/tx ring layout... Huawei Xie
- [dpdk-dev] [PATCH v4 4/7] virtio: fill RX avail rin... Huawei Xie
- [dpdk-dev] [PATCH v4 4/7] virtio: fill RX avail... Tan, Jianfeng