25 lines
890 B
Diff
25 lines
890 B
Diff
|
commit f0ca43396ebeb85228f9737a52caa68fc06aa9ee
|
||
|
Author: Nelson Escobar <neescoba@cisco.com>
|
||
|
Date: Mon Jun 13 17:24:41 2016 -0700
|
||
|
|
||
|
enic: fix bug introduced with scatter rx
|
||
|
|
||
|
We did not properly set the rq pointers we pass up to dpdk when
|
||
|
rx scatter was introduced. This resulted in segfaults whenever
|
||
|
more than one rq was being used.
|
||
|
|
||
|
diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
|
||
|
index e5b84e1..66fddb1 100644
|
||
|
--- a/drivers/net/enic/enic_ethdev.c
|
||
|
+++ b/drivers/net/enic/enic_ethdev.c
|
||
|
@@ -279,7 +279,8 @@ static int enicpmd_dev_rx_queue_setup(struct rte_eth_dev *eth_dev,
|
||
|
return -EINVAL;
|
||
|
}
|
||
|
|
||
|
- eth_dev->data->rx_queues[queue_idx] = (void *)&enic->rq[queue_idx];
|
||
|
+ eth_dev->data->rx_queues[queue_idx] =
|
||
|
+ (void *)&enic->rq[enic_sop_rq(enic, queue_idx)];
|
||
|
|
||
|
ret = enic_alloc_rq(enic, queue_idx, socket_id, mp, nb_desc);
|
||
|
if (ret) {
|