[dpdk-dev] [PATCH v3] lib/librte_vhost: update used->idx when allocation of mbuf fails

Xie, Huawei huawei.xie at intel.com
Tue Mar 24 08:14:02 CET 2015


On 3/22/2015 8:08 PM, Ouyang, Changchun wrote:
>
>> -----Original Message-----
>> From: linhaifeng [mailto:haifeng.lin at huawei.com]
>> Sent: Saturday, March 21, 2015 9:47 AM
>> To: dev at dpdk.org
>> Cc: Ouyang, Changchun; Xie, Huawei
>> Subject: [PATCH v3] lib/librte_vhost: update used->idx when allocation of
>> mbuf fails
>>
>> From: Linhaifeng <haifeng.lin at huawei.com>
>>
>> When failed to malloc buffer from mempool we just update last_used_idx
>> but not used->idx so after many times vhost thought have handle all packets
>> but virtio_net thought vhost have not handle all packets and will not update
>> avail->idx.
>>
>> Signed-off-by: Linhaifeng <haifeng.lin at huawei.com>
> Acked-by: Changchun Ouyang <changchun.ouyang at intel.com>
>
>
>
Acked-by: Huawei Xie <huawei.xie at intel.com>

This patch fix the issue.
Simple solution like other PMDs is before processing one descriptor,
ensure allocation of new mbuf is successfull, and then immediately
refill after receiving the packet from the descriptor.
In future, we should consider optimized bulk allocation strategy with
threshold.






More information about the dev mailing list