net/memif: support multiple Tx

When Multiple slave/master Memif's interfaces are created in single
process data transmission over second connection is not successful.

Issue is because of "mq->in_port" is not initialized with
"dev->data->port_id" in memif_tx_queue_setup() function, and while
transmitting packets over second connection in eth_memif_tx function
it refer "mq->in_port" which is always zero, which leads to data
transmission always in 0th port.

To mitigate the issue,"mq->in_port" is initialized with
"dev->data->port_id" in memif_tx_queue_setup() function.

Signed-off-by: Anand Sunkad <anand.sunkad@benisontech.com>
Reviewed-by: Jakub Grajciar <jgrajcia@cisco.com>
This commit is contained in:
Anand Sunkad 2019-10-17 13:20:50 +00:00 committed by Ferruh Yigit
parent d803feec8d
commit ed650f3dd8

View File

@ -873,6 +873,7 @@ memif_tx_queue_setup(struct rte_eth_dev *dev,
mq->n_bytes = 0;
mq->intr_handle.fd = -1;
mq->intr_handle.type = RTE_INTR_HANDLE_EXT;
mq->in_port = dev->data->port_id;
dev->data->tx_queues[qid] = mq;
return 0;