# Re: \[PATCH net\] vhost: correctly check the iova range when waking virtqueue

- From: Peter Xu \<peterx@redhat.com\>
- Date: 2018-08-24 09:36:35 
- List: virtualization
- Page: https://ratatoskr.run/virtualization/2018/08/15812830
- Thread: https://ratatoskr.run/virtualization/2018/08/15812830/t.md

```text
On Fri, Aug 24, 2018 at 04:53:13PM +0800, Jason Wang wrote:
> We don't wakeup the virtqueue if the first byte of pending iova range
> is the last byte of the range we just got updated. This will lead a
> virtqueue to wait for IOTLB updating forever. Fixing by correct the
> check and wake up the virtqueue in this case.
> 
> Fixes: 6b1e6cc7855b ("vhost: new device IOTLB API")
> Reported-by: Peter Xu <peterx@redhat.com>
> Signed-off-by: Jason Wang <redacted>

Without this patch, this command will trigger the IO hang merely every
time from host to guest:

  netperf -H 1.2.3.4 -l 5 -t TCP_RR -- -b 100

After applying, I can run it 10 times continuously without a problem.

Reviewed-by: Peter Xu <peterx@redhat.com>
Tested-by: Peter Xu <peterx@redhat.com>

Thanks,

-- 
Peter Xu
```
