On Thu, Jan 20, 2022 at 08:07:36PM +0800, Li, Zhijian wrote: > diff --git a/drivers/infiniband/sw/rxe/rxe_mr.c > b/drivers/infiniband/sw/rxe/rxe_mr.c > index 0621d387ccba..978fdd23665c 100644 > +++ b/drivers/infiniband/sw/rxe/rxe_mr.c > @@ -260,7 +260,8 @@ int rxe_mr_init_user(struct rxe_pd *pd, u64 start, u64 > length, u64 iova, > num_buf = 0; > } > > - vaddr = page_address(sg_page_iter_page(&sg_iter)); > + // FIXME: don't forget to kunmap_local(vaddr) > + vaddr = kmap_local_page(sg_page_iter_page(&sg_iter)); No, you can't leave the kmap open for a long time. The kmap has to just be around the usage. Jason