[dpdk-dev] [PATCH] vhost: notify guest to fill buffer when there is no buffer

Xie, Huawei huawei.xie at intel.com
Thu Jan 29 14:00:27 CET 2015



> -----Original Message-----
> From: Linhaifeng [mailto:haifeng.lin at huawei.com]
> Sent: Thursday, January 29, 2015 8:39 PM
> To: Xie, Huawei; dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] vhost: notify guest to fill buffer when there is
> no buffer
> 
> 
> 
> On 2015/1/29 18:39, Xie, Huawei wrote:
> 
> >> -		if (count == 0)
> >> +		/* If there is no buffers we should notify guest to fill.
> >> +		* This is need when guest use virtio_net driver(not pmd).
> >> +		*/
> >> +		if (count == 0) {
> >> +			if (!(vq->avail->flags &
> >> VRING_AVAIL_F_NO_INTERRUPT))
> >> +				eventfd_write((int)vq->kickfd, 1);
> >>  			return 0;
> >> +		}
> >
> > Haifeng:
> > Is it the root cause and is it protocol required?
> > Could you give a detailed description for that scenario?
> >
> 
> I use mz to send data from one VM1 to VM2.The two VM use virtio-net driver.
> VM1 execute follow script:
> for((i=0;i<999999999;i++));
> do
> mz eth0 -t udp -A 1.1.1.1 -B 1.1.1.2 -a 00:00:00:00:00:01 -b 00:00:00:00:00:02 -c
> 10000000 -p 512
> sleep 4
> done
> 
> VM2 execute follow command to watch:
> watch -d ifconfig
> 
> After many hours VM2 stop to receive data.
> 
> Could you test it ?


We could try next week after I send the whole patch. 
How many hours? Is it reproducible at your side? I inject packets through packet generator to guest for more than ten hours, haven't met issues. 
As I said in another mail sent  to you, could you dump the status of vring if you still have the spot?
Could you please also reply to that mail?

For the patch, if we have no root cause, I prefer not to apply it, so that we don't send more interrupts than needed to guest to affect performance.
People could temporarily apply this patch as a work around.

Or anyone 


> --
> Regards,
> Haifeng



More information about the dev mailing list