[PATCH 21.11] vdpa/mlx5: workaround var offset within page

Kevin Traynor ktraynor at redhat.com
Tue Jun 28 16:58:03 CEST 2022


On 28/06/2022 03:47, Yajun Wu wrote:
> [ upstream commit 95af59b7ad9f6a465de2ead9ef709429678e750d ]
> 
> vDPA driver first uses kernel driver to allocate doorbell(VAR) area for
> each device. Then uses var->mmap_off and var->length to mmap uverbs device
> file as doorbell userspace virtual address.
> 
> Current kernel driver provides var->mmap_off equal to page start of VAR.
> It's fine with x86 4K page server, because VAR physical address is only 4K
> aligned thus locate in 4K page start.
> 
> But with aarch64 64K page server, the actual VAR physical address has
> offset within page(not locate in 64K page start). So vDPA driver need add
> this within page offset(caps.doorbell_bar_offset) to get right VAR virtual
> address.
> 
> Fixes: 62c813706e4 ("vdpa/mlx5: map doorbell")
> 
> Signed-off-by: Yajun Wu <yajunw at nvidia.com>
> Acked-by: Matan Azrad <matan at nvidia.com>
> Reviewed-by: Maxime Coquelin <maxime.coquelin at redhat.com>
> ---

Applied, thanks.



More information about the stable mailing list