Re: [PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Jason Wang
On 2019/8/1 上午3:32, Jason Gunthorpe wrote: On Wed, Jul 31, 2019 at 09:29:28PM +0800, Jason Wang wrote: On 2019/7/31 下午8:41, Jason Gunthorpe wrote: On Wed, Jul 31, 2019 at 04:46:50AM -0400, Jason Wang wrote: The vhost_set_vring_num_addr() could be called in the middle of

Re: [PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Michael S. Tsirkin
On Wed, Jul 31, 2019 at 04:32:52PM -0300, Jason Gunthorpe wrote: > On Wed, Jul 31, 2019 at 09:29:28PM +0800, Jason Wang wrote: > > > > On 2019/7/31 下午8:41, Jason Gunthorpe wrote: > > > On Wed, Jul 31, 2019 at 04:46:50AM -0400, Jason Wang wrote: > > > > The vhost_set_vring_num_addr() could be

Re: [PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Jason Gunthorpe
On Wed, Jul 31, 2019 at 09:29:28PM +0800, Jason Wang wrote: > > On 2019/7/31 下午8:41, Jason Gunthorpe wrote: > > On Wed, Jul 31, 2019 at 04:46:50AM -0400, Jason Wang wrote: > > > The vhost_set_vring_num_addr() could be called in the middle of > > > invalidate_range_start() and

Re: [PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Jason Wang
On 2019/7/31 下午8:41, Jason Gunthorpe wrote: On Wed, Jul 31, 2019 at 04:46:50AM -0400, Jason Wang wrote: The vhost_set_vring_num_addr() could be called in the middle of invalidate_range_start() and invalidate_range_end(). If we don't reset invalidate_count after the un-registering of MMU

Re: [PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Jason Gunthorpe
On Wed, Jul 31, 2019 at 04:46:50AM -0400, Jason Wang wrote: > The vhost_set_vring_num_addr() could be called in the middle of > invalidate_range_start() and invalidate_range_end(). If we don't reset > invalidate_count after the un-registering of MMU notifier, the > invalidate_cont will run out of

[PATCH V2 4/9] vhost: reset invalidate_count in vhost_set_vring_num_addr()

2019-07-31 Thread Jason Wang
The vhost_set_vring_num_addr() could be called in the middle of invalidate_range_start() and invalidate_range_end(). If we don't reset invalidate_count after the un-registering of MMU notifier, the invalidate_cont will run out of sync (e.g never reach zero). This will in fact disable the fast