Message ID | 1724875569-12912-2-git-send-email-longli@linuxonhyperv.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [net] RDMA/mana_ib: use the correct page size for mapping user-mode doorbell page | expand |
On Wed, Aug 28, 2024 at 01:06:09PM -0700, longli@linuxonhyperv.com wrote: > From: Long Li <longli@microsoft.com> > > When mapping doorbell page from user-mode, the driver should use the system > page size as the doorbell is allocated via mmap() from user-mode. > > Cc: stable@vger.kernel.org > Fixes: 0266a177631d ("RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter") > Signed-off-by: Long Li <longli@microsoft.com> > --- > drivers/infiniband/hw/mana/main.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/infiniband/hw/mana/main.c b/drivers/infiniband/hw/mana/main.c > index f68f54aea820..b26c4ebec2e0 100644 > --- a/drivers/infiniband/hw/mana/main.c > +++ b/drivers/infiniband/hw/mana/main.c > @@ -511,13 +511,13 @@ int mana_ib_mmap(struct ib_ucontext *ibcontext, struct vm_area_struct *vma) > PAGE_SHIFT; > prot = pgprot_writecombine(vma->vm_page_prot); > > - ret = rdma_user_mmap_io(ibcontext, vma, pfn, gc->db_page_size, prot, > + ret = rdma_user_mmap_io(ibcontext, vma, pfn, PAGE_SIZE, prot, > NULL); > if (ret) > ibdev_dbg(ibdev, "can't rdma_user_mmap_io ret %d\n", ret); > else > ibdev_dbg(ibdev, "mapped I/O pfn 0x%llx page_size %u, ret %d\n", > - pfn, gc->db_page_size, ret); > + pfn, PAGE_SIZE, ret); This is not a full review, but according to both clang-18 and gcc-14, this patch should also update the format specifier from %u to %lu. > > return ret; > } > -- > 2.17.1 > >
> Subject: Re: [PATCH net] RDMA/mana_ib: use the correct page size for > mapping user-mode doorbell page > > On Wed, Aug 28, 2024 at 01:06:09PM -0700, longli@linuxonhyperv.com > wrote: > > From: Long Li <longli@microsoft.com> > > > > When mapping doorbell page from user-mode, the driver should use the > > system page size as the doorbell is allocated via mmap() from user-mode. > > > > Cc: stable@vger.kernel.org > > Fixes: 0266a177631d ("RDMA/mana_ib: Add a driver for Microsoft Azure > > Network Adapter") > > Signed-off-by: Long Li <longli@microsoft.com> > > --- > > drivers/infiniband/hw/mana/main.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/infiniband/hw/mana/main.c > > b/drivers/infiniband/hw/mana/main.c > > index f68f54aea820..b26c4ebec2e0 100644 > > --- a/drivers/infiniband/hw/mana/main.c > > +++ b/drivers/infiniband/hw/mana/main.c > > @@ -511,13 +511,13 @@ int mana_ib_mmap(struct ib_ucontext > *ibcontext, struct vm_area_struct *vma) > > PAGE_SHIFT; > > prot = pgprot_writecombine(vma->vm_page_prot); > > > > - ret = rdma_user_mmap_io(ibcontext, vma, pfn, gc->db_page_size, > prot, > > + ret = rdma_user_mmap_io(ibcontext, vma, pfn, PAGE_SIZE, prot, > > NULL); > > if (ret) > > ibdev_dbg(ibdev, "can't rdma_user_mmap_io ret %d\n", ret); > > else > > ibdev_dbg(ibdev, "mapped I/O pfn 0x%llx page_size %u, > ret %d\n", > > - pfn, gc->db_page_size, ret); > > + pfn, PAGE_SIZE, ret); > > This is not a full review, but according to both clang-18 and gcc-14, this patch > should also update the format specifier from %u to %lu. Thank you. Will send v2 to fix it. Long
diff --git a/drivers/infiniband/hw/mana/main.c b/drivers/infiniband/hw/mana/main.c index f68f54aea820..b26c4ebec2e0 100644 --- a/drivers/infiniband/hw/mana/main.c +++ b/drivers/infiniband/hw/mana/main.c @@ -511,13 +511,13 @@ int mana_ib_mmap(struct ib_ucontext *ibcontext, struct vm_area_struct *vma) PAGE_SHIFT; prot = pgprot_writecombine(vma->vm_page_prot); - ret = rdma_user_mmap_io(ibcontext, vma, pfn, gc->db_page_size, prot, + ret = rdma_user_mmap_io(ibcontext, vma, pfn, PAGE_SIZE, prot, NULL); if (ret) ibdev_dbg(ibdev, "can't rdma_user_mmap_io ret %d\n", ret); else ibdev_dbg(ibdev, "mapped I/O pfn 0x%llx page_size %u, ret %d\n", - pfn, gc->db_page_size, ret); + pfn, PAGE_SIZE, ret); return ret; }