Message ID | 20250306210827.171147-1-jose.souza@intel.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | drm/i915: Increase I915_PARAM_MMAP_GTT_VERSION version to indicate support for partial mmaps | expand |
On 3/6/2025 10:08 PM, José Roberto de Souza wrote: > Commit 255fc1703e42 ("drm/i915/gem: Calculate object page offset for partial memory mapping") > was the last patch of several patches fixing multiple partial mmaps. > But without a bump in I915_PARAM_MMAP_GTT_VERSION there is no clean > way for UMD to know if it can do multiple partial mmaps. > > Fixes: 255fc1703e42 ("drm/i915/gem: Calculate object page offset for partial memory mapping") > Cc: Andi Shyti <andi.shyti@linux.intel.com> > Cc: Nirmoy Das <nirmoy.das@intel.com> > Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Nirmoy Das <nirmoy.das@intel.com> > Signed-off-by: José Roberto de Souza <jose.souza@intel.com> > --- > drivers/gpu/drm/i915/gem/i915_gem_mman.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > index 21274aa9bdddc..c3dabb8579605 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > @@ -164,6 +164,9 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj) > * 4 - Support multiple fault handlers per object depending on object's > * backing storage (a.k.a. MMAP_OFFSET). > * > + * 5 - Support multiple partial mmaps(mmap part of BO + unmap a offset, multiple > + * times with different size and offset). > + * > * Restrictions: > * > * * snoopable objects cannot be accessed via the GTT. It can cause machine > @@ -191,7 +194,7 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj) > */ > int i915_gem_mmap_gtt_version(void) > { > - return 4; > + return 5; > } > > static inline struct i915_gtt_view
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c index 21274aa9bdddc..c3dabb8579605 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c @@ -164,6 +164,9 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj) * 4 - Support multiple fault handlers per object depending on object's * backing storage (a.k.a. MMAP_OFFSET). * + * 5 - Support multiple partial mmaps(mmap part of BO + unmap a offset, multiple + * times with different size and offset). + * * Restrictions: * * * snoopable objects cannot be accessed via the GTT. It can cause machine @@ -191,7 +194,7 @@ static unsigned int tile_row_pages(const struct drm_i915_gem_object *obj) */ int i915_gem_mmap_gtt_version(void) { - return 4; + return 5; } static inline struct i915_gtt_view
Commit 255fc1703e42 ("drm/i915/gem: Calculate object page offset for partial memory mapping") was the last patch of several patches fixing multiple partial mmaps. But without a bump in I915_PARAM_MMAP_GTT_VERSION there is no clean way for UMD to know if it can do multiple partial mmaps. Fixes: 255fc1703e42 ("drm/i915/gem: Calculate object page offset for partial memory mapping") Cc: Andi Shyti <andi.shyti@linux.intel.com> Cc: Nirmoy Das <nirmoy.das@intel.com> Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Signed-off-by: José Roberto de Souza <jose.souza@intel.com> --- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)