[PATCH 1/2] drm/i915/gem: Adjust vma offset for framebuffer mmap offset

Rodrigo Vivi rodrigo.vivi at intel.com
Mon Aug 5 21:12:54 UTC 2024


On Fri, Aug 02, 2024 at 10:38:49AM +0200, Andi Shyti wrote:
> When mapping a framebuffer object, the virtual memory area (VMA)
> offset ('vm_pgoff') should be adjusted by the start of the
> 'vma_node' associated with the object. This ensures that the VMA
> offset is correctly aligned with the corresponding offset within
> the GGTT aperture.
> 
> Increment vm_pgoff by the start of the vma_node with the offset=
> provided by the user.
> 
> Suggested-by: Chris Wilson <chris.p.wilson at linux.intel.com>
> Signed-off-by: Andi Shyti <andi.shyti at linux.intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>

> ---
>  drivers/gpu/drm/i915/gem/i915_gem_mman.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> index a2195e28b625..ce10dd259812 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> @@ -1084,6 +1084,8 @@ int i915_gem_fb_mmap(struct drm_i915_gem_object *obj, struct vm_area_struct *vma
>  		mmo = mmap_offset_attach(obj, mmap_type, NULL);
>  		if (IS_ERR(mmo))
>  			return PTR_ERR(mmo);
> +
> +		vma->vm_pgoff += drm_vma_node_start(&mmo->vma_node);
>  	}
>  
>  	/*
> -- 
> 2.45.2
> 


More information about the dri-devel mailing list