[dpdk-dev,1/2] virtio: make sure rcv mbuf initialized correctly
Commit Message
The virtio driver was not initializing all the fields in
the receive mbuf. This would cause bugs where previous usage
of mbuf would leave stale TCI and offload flags.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
drivers/net/virtio/virtio_rxtx.c | 4 ++++
1 file changed, 4 insertions(+)
Comments
On Thu, Dec 03, 2015 at 05:12:53PM -0800, Stephen Hemminger wrote:
> The virtio driver was not initializing all the fields in
> the receive mbuf. This would cause bugs where previous usage
> of mbuf would leave stale TCI and offload flags.
Acked-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Thanks.
--yliu
@@ -611,6 +611,8 @@ virtio_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t nb_pkts)
rxm->port = rxvq->port_id;
rxm->data_off = RTE_PKTMBUF_HEADROOM;
+ rxm->ol_flags = 0;
+ rxm->vlan_tci = 0;
rxm->nb_segs = 1;
rxm->next = NULL;
@@ -731,6 +733,8 @@ virtio_recv_mergeable_pkts(void *rx_queue,
rxm->data_off = RTE_PKTMBUF_HEADROOM;
rxm->nb_segs = seg_num;
rxm->next = NULL;
+ rxm->ol_flags = 0;
+ rxm->vlan_tci = 0;
rxm->pkt_len = (uint32_t)(len[0] - hdr_size);
rxm->data_len = (uint16_t)(len[0] - hdr_size);