[dpdk-dev] [PATCH 2/8] net/bnxt: add support for rx_queue_count
Ferruh Yigit
ferruh.yigit at intel.com
Tue Aug 29 18:10:35 CEST 2017
On 8/24/2017 5:29 PM, Ajit Khaparde wrote:
> add support for rx_queue_count dev_op
> Signed-off-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
<...>
> +static uint32_t
> +bnxt_rx_queue_count_op(struct rte_eth_dev *dev, uint16_t rx_queue_id)
> +{
> + uint32_t desc = 0, raw_cons = 0, cons;
> + struct bnxt_cp_ring_info *cpr;
> + struct bnxt_rx_queue *rxq;
> + struct rx_pkt_cmpl *rxcmp;
> +
> + rxq = dev->data->rx_queues[rx_queue_id];
> + cpr = rxq->cp_ring;
> +
> + while (raw_cons < rxq->nb_rx_desc) {
> + cons = RING_CMP(cpr->cp_ring_struct, raw_cons++);
> + rxcmp = (struct rx_pkt_cmpl *)&cpr->cp_desc_ring[cons];
> +
> + if (CMP_VALID(rxcmp, raw_cons, cpr->cp_ring_struct))
"raw_cons" increased above, the "raw_cons" here and the one used to get
"cons" are different. Is this an issue for cmp_valid ?
> + desc++;
> + }
> +
> + return desc;
> +}
<...>
More information about the dev
mailing list