diff options
author | Damjan Marion <damarion@cisco.com> | 2019-08-20 17:51:22 +0200 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2019-08-21 14:22:40 +0000 |
commit | 017002ae357a05ca1ae1b7d8fbc7bbc8063c9e34 (patch) | |
tree | a73602962ecb711bd11d3f1a61c6c57e96f8c704 /src | |
parent | 2d9520eb85c6785a4a0e242373cd328c48565545 (diff) |
avf: fix init when num_rx_queues > num_tx_queues
Type: fix
Fixes: ae91180
Change-Id: Id93b0f4d23ad7022e341e305bbd93ef2fff5787d
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/avf/device.c | 8 |
1 files 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); |