While the last arg of virtio_tx_route() asks a vlan tag, we currently feed it with device_fh, which is wrong. Fix it.
Fixes: 4796ad63ba1f ("examples/vhost: import userspace vhost application") Reported-by: Qian Xu <qian.q.xu at intel.com> Signed-off-by: Yuanhan Liu <yuanhan.liu at linux.intel.com> --- examples/vhost/main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/vhost/main.c b/examples/vhost/main.c index 86e5c24..28c17af 100644 --- a/examples/vhost/main.c +++ b/examples/vhost/main.c @@ -1396,8 +1396,10 @@ switch_worker(__attribute__((unused)) void *arg) rte_pktmbuf_free(pkts_burst[--tx_count]); } } - for (i = 0; i < tx_count; ++i) - virtio_tx_route(vdev, pkts_burst[i], (uint16_t)dev->device_fh); + for (i = 0; i < tx_count; ++i) { + virtio_tx_route(vdev, pkts_burst[i], + vlan_tags[(uint16_t)dev->device_fh]); + } } /*move to the next device in the list*/ -- 1.9.0