Thanks for the update. Sounds like you're already using DPDK 17.11?
What about Mellanox driver level? Is the failure the same as you
originally reported?

>From the reported error:

pktio/dpdk.c:1538:dpdk_start():Queue setup failed: err=-12, port=0
odp_l2fwd.c:1671:main():Error: unable to start 0

This is a DPDK PMD driver error reported by rte_eth_rx_queue_setup().
In the Mellanox PMD (drivers/net/mlx5/mlx5_rxq.c) this is the
mlx5_rx_queue_setup() routine. The relevant code seems to be this:

if (rxq != NULL) {
        DEBUG("%p: reusing already allocated queue index %u (%p)",
                      (void *)dev, idx, (void *)rxq);
        if (priv->started) {
                priv_unlock(priv);
                return -EEXIST;
        }
        (*priv->rxqs)[idx] = NULL;
        rxq_cleanup(rxq_ctrl);
        /* Resize if rxq size is changed. */
        if (rxq_ctrl->rxq.elts_n != log2above(desc)) {
                rxq_ctrl = rte_realloc(rxq_ctrl,
                                                  sizeof(*rxq_ctrl) +
                                                  (desc + desc_pad) *
                                                  sizeof(struct rte_mbuf *),
                                                  RTE_CACHE_LINE_SIZE);
                if (!rxq_ctrl) {
                        ERROR("%p: unable to reallocate queue index %u",
                                      (void *)dev, idx);
                                      priv_unlock(priv);
                                      return -ENOMEM;
               }
        }
} else {
        rxq_ctrl = rte_calloc_socket("RXQ", 1, sizeof(*rxq_ctrl) +
                                                    (desc + desc_pad) *
                                                     sizeof(struct rte_mbuf *),
                                                     0, socket);
        if (rxq_ctrl == NULL) {
                 ERROR("%p: unable to allocate queue index %u",
                               (void *)dev, idx);
                               priv_unlock(priv);
                return -ENOMEM;
        }
}

The reported -12 error code is -ENOMEM so I'd say the issue is some
sort of memory allocation failure.


On Wed, Mar 28, 2018 at 8:43 AM, gyanesh patra <pgyanesh.pa...@gmail.com> wrote:
> Hi Bill,
> I tried with Matias' suggestions but without success.
>
> P Gyanesh Kumar Patra
>
> On Mon, Mar 26, 2018 at 4:16 PM, Bill Fischofer <bill.fischo...@linaro.org>
> wrote:
>>
>> Hi Gyanesh,
>>
>> Have you had a chance to look at
>> https://bugs.linaro.org/show_bug.cgi?id=3657 and see if Matias' suggestions
>> are helpful to you?
>>
>> Thanks,
>>
>> Regards,
>> Bill
>
>

Reply via email to