在 2022/7/6 13:04, Xie Yongji 写道:
Taking iotlb lock to access bounce page in page fault
handler is meaningless since vduse_domain_free_bounce_pages()
would only be called during file release.

Signed-off-by: Xie Yongji <[email protected]>
---
  drivers/vdpa/vdpa_user/iova_domain.c | 7 ++-----
  1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/vdpa/vdpa_user/iova_domain.c 
b/drivers/vdpa/vdpa_user/iova_domain.c
index 6daa3978d290..bca1f0b8850c 100644
--- a/drivers/vdpa/vdpa_user/iova_domain.c
+++ b/drivers/vdpa/vdpa_user/iova_domain.c
@@ -211,17 +211,14 @@ static struct page *
  vduse_domain_get_bounce_page(struct vduse_iova_domain *domain, u64 iova)
  {
        struct vduse_bounce_map *map;
-       struct page *page = NULL;
+       struct page *page;
- spin_lock(&domain->iotlb_lock);
        map = &domain->bounce_maps[iova >> PAGE_SHIFT];
        if (!map->bounce_page)
-               goto out;
+               return NULL;


Interesting, I wonder why we don't serialize with vduse_domain_map_bounce_page() with iotlb_lock?

Thanks


page = map->bounce_page;
        get_page(page);
-out:
-       spin_unlock(&domain->iotlb_lock);
return page;
  }

_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to