Jason Wang
2022-Jul-13 05:43 UTC
[PATCH v2 1/5] vduse: Remove unnecessary spin lock protection
? 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 <xieyongji at bytedance.com> > --- > 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; > }