[dpdk-dev] [PATCH v4] Fixes following error on gcc 4.4.7:

Xie, Huawei huawei.xie at intel.com
Wed Dec 9 15:12:52 CET 2015


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?
>



More information about the dev mailing list