net/qede: fix incorrect queue id for 100G
'commit4c4bdadfa9
("net/qede: refactoring multi-queue implementation")' introduced a regression where default RSS configuration is incorrect in the case of 100G mode. Currently we are passing absolute queue ids while creating RX/TX queues. But in CMT mode we need to provide queue id relative to the engine id. So this fix takes into account num_hwfns while creating queues. Fixes:4c4bdadfa9
("net/qede: refactoring multi-queue implementation") Signed-off-by: Harish Patil <harish.patil@cavium.com> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
This commit is contained in:
parent
60c78a5e25
commit
a68a9adf32
@ -552,8 +552,9 @@ qede_rx_queue_start(struct rte_eth_dev *eth_dev, uint16_t rx_queue_id)
|
||||
ecore_sb_ack(fp->sb_info, IGU_INT_DISABLE, 0);
|
||||
/* Prepare ramrod */
|
||||
memset(¶ms, 0, sizeof(params));
|
||||
params.queue_id = rx_queue_id;
|
||||
params.queue_id = rx_queue_id / edev->num_hwfns;
|
||||
params.vport_id = 0;
|
||||
params.stats_id = params.vport_id;
|
||||
params.sb = fp->sb_info->igu_sb_id;
|
||||
DP_INFO(edev, "rxq %u igu_sb_id 0x%x\n",
|
||||
fp->rxq->queue_id, fp->sb_info->igu_sb_id);
|
||||
@ -610,8 +611,9 @@ qede_tx_queue_start(struct rte_eth_dev *eth_dev, uint16_t tx_queue_id)
|
||||
txq = eth_dev->data->tx_queues[tx_queue_id];
|
||||
fp = &qdev->fp_array[tx_queue_id];
|
||||
memset(¶ms, 0, sizeof(params));
|
||||
params.queue_id = tx_queue_id;
|
||||
params.queue_id = tx_queue_id / edev->num_hwfns;
|
||||
params.vport_id = 0;
|
||||
params.stats_id = params.vport_id;
|
||||
params.sb = fp->sb_info->igu_sb_id;
|
||||
DP_INFO(edev, "txq %u igu_sb_id 0x%x\n",
|
||||
fp->txq->queue_id, fp->sb_info->igu_sb_id);
|
||||
|
Loading…
Reference in New Issue
Block a user