diff mbox series

[v3,1/3] drm/i915/gem: Increment vma offset when mapping fb objects

Message ID 20240412004808.288130-2-andi.shyti@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series Add support for partial mapping | expand

Commit Message

Andi Shyti April 12, 2024, 12:48 a.m. UTC
Until now the "vm_pgoff" was not used and there has been no need
to set its offset.

But now, because we want to support partial mappings with a given
offset, we need it to be set.

Suggested-by: Chris Wilson <chris.p.wilson@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
---
 drivers/gpu/drm/i915/gem/i915_gem_mman.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Nirmoy Das April 23, 2024, 9:17 a.m. UTC | #1
Hi Andi,

On 4/12/2024 2:48 AM, Andi Shyti wrote:
> Until now the "vm_pgoff" was not used and there has been no need
> to set its offset.
>
> But now, because we want to support partial mappings with a given
> offset, we need it to be set.
>
> Suggested-by: Chris Wilson <chris.p.wilson@linux.intel.com>
> Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>

Do we have a IGT for partial FB mmap test ? Would be nice to have one 
but this patch looks good to me.


Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>


Regards,

Nirmoy

> ---
>   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);
>   	}
>   
>   	/*
diff mbox series

Patch

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);
 	}
 
 	/*