virtio: fix Rx mbuf initialization
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> Acked-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
This commit is contained in:
parent
6c6a6e337d
commit
c21835fab8
@ -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);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user