Re: [RFC PATCH V2 5/5] vhost: access vq metadata through kernel virtual address

From: Jason Wang
Date: Wed Mar 06 2019 - 21:46:09 EST



On 2019/3/7 äå12:31, Michael S. Tsirkin wrote:
+static void vhost_set_vmap_dirty(struct vhost_vmap *used)
+{
+ int i;
+
+ for (i = 0; i < used->npages; i++)
+ set_page_dirty_lock(used->pages[i]);
This seems to rely on page lock to mark page dirty.

Could it happen that page writeback will check the
page, find it clean, and then you mark it dirty and then
invalidate callback is called?



Yes. But does this break anything? The page is still there, we just remove a kernel mapping to it.

Thanks