From 017002ae357a05ca1ae1b7d8fbc7bbc8063c9e34 Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Tue, 20 Aug 2019 17:51:22 +0200 Subject: avf: fix init when num_rx_queues > num_tx_queues Type: fix Fixes: ae91180 Change-Id: Id93b0f4d23ad7022e341e305bbd93ef2fff5787d Signed-off-by: Damjan Marion --- src/plugins/avf/device.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/avf/device.c b/src/plugins/avf/device.c index 543a54e60ca..5cdc8b25e61 100644 --- a/src/plugins/avf/device.c +++ b/src/plugins/avf/device.c @@ -661,11 +661,11 @@ avf_op_config_vsi_queues (vlib_main_t * vm, avf_device_t * ad) i, rxq->max_pkt_size, rxq->ring_len, rxq->databuffer_size, rxq->dma_ring_addr); - avf_txq_t *q = vec_elt_at_index (ad->txqs, i); txq->vsi_id = ad->vsi_id; + txq->queue_id = i; if (i < vec_len (ad->txqs)) { - txq->queue_id = i; + avf_txq_t *q = vec_elt_at_index (ad->txqs, i); txq->ring_len = q->size; txq->dma_ring_addr = avf_dma_addr (vm, ad, (void *) q->descs); } @@ -856,8 +856,8 @@ avf_device_init (vlib_main_t * vm, avf_main_t * am, avf_device_t * ad, avf_adminq_init (vm, ad); - /* request more queues only if we need them */ - if ((error = avf_request_queues (vm, ad, tm->n_vlib_mains))) + if ((error = avf_request_queues (vm, ad, clib_max (tm->n_vlib_mains, + args->rxq_num)))) { /* we failed to get more queues, but still we want to proceed */ clib_error_free (error); -- cgit 1.2.3-korg