On 12/9/2015 10:01 PM, De Lara Guarch, Pablo wrote:
>
>> -----Original Message-----
>> From: Xie, Huawei
>> Sent: Wednesday, December 09, 2015 1:29 PM
>> To: De Lara Guarch, Pablo; dev at dpdk.org
>> Cc: yuanhan.liu at linux.intel.com
>> Subject: Re: [PATCH v4] Fixes following error on gcc 4.4.7:
>>
>> On 12/9/2015 8:20 PM, De Lara Guarch, Pablo wrote:
>>> make: Entering directory `/tmp/dpdk-tmp/examples/vhost'
>>>   CC main.o
>> [...]
>>> -   rte_ring_sc_dequeue(vpool->ring, (void **)&mbuf);
>>> +   rte_ring_sc_dequeue(vpool->ring, (void *)mbuf);
>> Here we are expecting the address of &mbuf, not mbuf, which is NULL.
>>>     if (unlikely(mbuf == NULL)) {
>>>             LOG_DEBUG(VHOST_DATA,
>>>                     "(%"PRIu64") in attach_rxmbuf_zcp: "
>>> @@ -1801,7 +1801,7 @@ virtio_tx_route_zcp(struct virtio_net *dev,
>> struct rte_mbuf *m,
>>>     /* Allocate an mbuf and populate the structure. */
>>>     vpool = &vpool_array[MAX_QUEUES + vmdq_rx_q];
>>> -   rte_ring_sc_dequeue(vpool->ring, (void **)&mbuf);
>>> +   rte_ring_sc_dequeue(vpool->ring, (void *)mbuf);
>> Same as above.
>>>     if (unlikely(mbuf == NULL)) {
>>>             struct vhost_virtqueue *vq = dev->virtqueue[VIRTIO_TXQ];
>>>             RTE_LOG(ERR, VHOST_DATA,
> Right, I will revert to v3 (and fix the title as well, sorry about that).
Actually we could try defining mbufs[1], and use (void **)mbufs as
parameter, like in examples/qos_sched to save a variable, but weird it
failed. For the time being, this fix is OK.
Another thing is would you fix examples/ip_pipeline as well?
>

Reply via email to