Re: [Intel-gfx] [PATCH v2 00/17] drm/i915/dg2: Enabling 64k page size and flat ccs

2021-10-25 Thread Robert Beckett
(apologies for not quoting, I wasn't subscribed before now) some quick thoughts: - Can we split these patches in to two series, one for each topic. They don't seem specifically related. - to simplify 64K page support, could we just set minimum allocation size to 64K and round up for allocat

[Intel-gfx] [PATCH v6 00/10] drm/i915: ttm for stolen

2022-06-17 Thread Robert Beckett
whether to mmap - Add new buffer pin alloc flag to allow creation of buffers in their final ttm placement instead of deferring until get_pages. This fixes legacy fallback paths for buffer allocations during stolen memory pressure. Robert Beckett (10):

[Intel-gfx] [PATCH v6 01/10] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-06-17 Thread Robert Beckett
: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9 insertions(+), 3 deletions

[Intel-gfx] [PATCH v6 02/10] drm/i915: limit ttm to dma32 for i965G[M]

2022-06-17 Thread Robert Beckett
i965G[M] cannot relocate objects above 4GiB. Ensure ttm uses dma32 on these systems. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_region_ttm.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_region_ttm.c b/drivers/gpu/drm

[Intel-gfx] [PATCH v6 04/10] drm/i915/gem: selftest should not attempt mmap of private regions

2022-06-17 Thread Robert Beckett
During testing make can_mmap consider whether the region is private. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v6 03/10] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level

2022-06-17 Thread Robert Beckett
-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 4c1de0b4a10f..40249fa28a7a 100644 --- a/drivers/gpu/drm

[Intel-gfx] [PATCH v6 09/10] drm/i915/ttm: add buffer pin on alloc flag

2022-06-17 Thread Robert Beckett
options for stolen backend allocation like create_ring_vma to work as expected. Signed-off-by: Robert Beckett --- .../gpu/drm/i915/gem/i915_gem_object_types.h | 13 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 25 ++- 2 files changed, 32 insertions(+), 6 deletions

[Intel-gfx] [PATCH v6 08/10] drm/i915: allow memory region creators to alloc and free the region

2022-06-17 Thread Robert Beckett
add callbacks for alloc and free. this allows region creators to allocate any extra storage they may require. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_memory_region.c | 16 +--- drivers/gpu/drm/i915/intel_memory_region.h | 2 ++ 2 files changed, 15 insertions

[Intel-gfx] [PATCH v6 07/10] drm/i915: ttm move/clear logic fix

2022-06-17 Thread Robert Beckett
specifically requests it only. Make the logic match the desired behaviour. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 22 +++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v6 06/10] drm/i915: sanitize mem_flags for stolen buffers

2022-06-17 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 675e9ab30396..81c67ca9edda 100644

[Intel-gfx] [PATCH v6 05/10] drm/i915: instantiate ttm ranger manager for stolen memory

2022-06-17 Thread Robert Beckett
prepare for ttm based stolen region by using ttm range manager as the resource manager for stolen region. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 ++-- drivers/gpu/drm/i915/intel_region_ttm.c | 31

[Intel-gfx] [PATCH v6 10/10] drm/i915: stolen memory use ttm backend

2022-06-17 Thread Robert Beckett
refactor stolen memory region to use ttm. this necessitates using ttm resources to track reserved stolen regions instead of drm_mm_nodes. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 78 ++-- .../gpu/drm/i915/gem/i915_gem_object_types.h | 2 - drivers

[Intel-gfx] [PATCH v7 00/10] drm/i915: ttm for stolen

2022-06-20 Thread Robert Beckett
region_get_pages() to correctly handle I915_BO_INVALID_OFFSET Robert Beckett (10): drm/i915/ttm: dont trample cache_level overrides during ttm move drm/i915: limit ttm to dma32 for i965G[M] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level drm/i915/gem: selft

[Intel-gfx] [PATCH v7 02/10] drm/i915: limit ttm to dma32 for i965G[M]

2022-06-20 Thread Robert Beckett
i965G[M] cannot relocate objects above 4GiB. Ensure ttm uses dma32 on these systems. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_region_ttm.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_region_ttm.c b/drivers/gpu/drm

[Intel-gfx] [PATCH v7 01/10] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-06-20 Thread Robert Beckett
: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9 insertions(+), 3 deletions

[Intel-gfx] [PATCH v7 05/10] drm/i915: instantiate ttm ranger manager for stolen memory

2022-06-20 Thread Robert Beckett
prepare for ttm based stolen region by using ttm range manager as the resource manager for stolen region. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 ++-- drivers/gpu/drm/i915/intel_region_ttm.c | 31

[Intel-gfx] [PATCH v7 06/10] drm/i915: sanitize mem_flags for stolen buffers

2022-06-20 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 675e9ab30396..81c67ca9edda 100644

[Intel-gfx] [PATCH v7 03/10] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level

2022-06-20 Thread Robert Beckett
-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 4c1de0b4a10f..40249fa28a7a 100644 --- a/drivers/gpu/drm

[Intel-gfx] [PATCH v7 07/10] drm/i915: ttm move/clear logic fix

2022-06-20 Thread Robert Beckett
specifically requests it only. Make the logic match the desired behaviour. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 22 +++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v7 08/10] drm/i915: allow memory region creators to alloc and free the region

2022-06-20 Thread Robert Beckett
add callbacks for alloc and free. this allows region creators to allocate any extra storage they may require. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_memory_region.c | 16 +--- drivers/gpu/drm/i915/intel_memory_region.h | 2 ++ 2 files changed, 15 insertions

[Intel-gfx] [PATCH v7 09/10] drm/i915/ttm: add buffer pin on alloc flag

2022-06-20 Thread Robert Beckett
options for stolen backend allocation like create_ring_vma to work as expected. Signed-off-by: Robert Beckett --- .../gpu/drm/i915/gem/i915_gem_object_types.h | 13 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 25 ++- 2 files changed, 32 insertions(+), 6 deletions

[Intel-gfx] [PATCH v7 04/10] drm/i915/gem: selftest should not attempt mmap of private regions

2022-06-20 Thread Robert Beckett
During testing make can_mmap consider whether the region is private. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v7 10/10] drm/i915: stolen memory use ttm backend

2022-06-20 Thread Robert Beckett
refactor stolen memory region to use ttm. this necessitates using ttm resources to track reserved stolen regions instead of drm_mm_nodes. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 78 ++-- .../gpu/drm/i915/gem/i915_gem_object_types.h | 2 - drivers

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-21 Thread Robert Beckett
On 21/06/2022 18:37, Patchwork wrote: *Patch Details* *Series:* drm/i915: ttm for stolen (rev5) *URL:* https://patchwork.freedesktop.org/series/101396/ *State:*failure *Details:* https://intel-gfx-ci.01.org/tree/drm-tip/Patchw

[Intel-gfx] [PATCH v8 00/10] drm/i915: ttm for stolen

2022-06-21 Thread Robert Beckett
region_get_pages() to correctly handle I915_BO_INVALID_OFFSET v8: - Reserve I915_GEM_STOLEN_BIAS area from stolen Robert Beckett (10): drm/i915/ttm: dont trample cache_level overrides during ttm move drm/i915: limit ttm to dma32 for i965G[M] drm/i915/ttm: only trust snooping for dgfx when

[Intel-gfx] [PATCH v8 03/10] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level

2022-06-21 Thread Robert Beckett
-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 4c1de0b4a10f..40249fa28a7a 100644 --- a/drivers/gpu/drm

[Intel-gfx] [PATCH v8 01/10] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-06-21 Thread Robert Beckett
: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9 insertions(+), 3 deletions

[Intel-gfx] [PATCH v8 05/10] drm/i915: instantiate ttm ranger manager for stolen memory

2022-06-21 Thread Robert Beckett
prepare for ttm based stolen region by using ttm range manager as the resource manager for stolen region. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 ++-- drivers/gpu/drm/i915/intel_region_ttm.c | 31

[Intel-gfx] [PATCH v8 02/10] drm/i915: limit ttm to dma32 for i965G[M]

2022-06-21 Thread Robert Beckett
i965G[M] cannot relocate objects above 4GiB. Ensure ttm uses dma32 on these systems. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_region_ttm.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_region_ttm.c b/drivers/gpu/drm

[Intel-gfx] [PATCH v8 04/10] drm/i915/gem: selftest should not attempt mmap of private regions

2022-06-21 Thread Robert Beckett
During testing make can_mmap consider whether the region is private. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v8 06/10] drm/i915: sanitize mem_flags for stolen buffers

2022-06-21 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 675e9ab30396..81c67ca9edda 100644

[Intel-gfx] [PATCH v8 07/10] drm/i915: ttm move/clear logic fix

2022-06-21 Thread Robert Beckett
specifically requests it only. Make the logic match the desired behaviour. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 22 +++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v8 08/10] drm/i915: allow memory region creators to alloc and free the region

2022-06-21 Thread Robert Beckett
add callbacks for alloc and free. this allows region creators to allocate any extra storage they may require. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_memory_region.c | 16 +--- drivers/gpu/drm/i915/intel_memory_region.h | 2 ++ 2 files changed, 15 insertions

[Intel-gfx] [PATCH v8 09/10] drm/i915/ttm: add buffer pin on alloc flag

2022-06-21 Thread Robert Beckett
options for stolen backend allocation like create_ring_vma to work as expected. Signed-off-by: Robert Beckett --- .../gpu/drm/i915/gem/i915_gem_object_types.h | 13 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 25 ++- 2 files changed, 32 insertions(+), 6 deletions

[Intel-gfx] [PATCH v8 10/10] drm/i915: stolen memory use ttm backend

2022-06-21 Thread Robert Beckett
refactor stolen memory region to use ttm. this necessitates using ttm resources to track reserved stolen regions instead of drm_mm_nodes. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 78 ++-- .../gpu/drm/i915/gem/i915_gem_object_types.h | 2 - drivers

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-27 Thread Robert Beckett
On 22/06/2022 10:05, Tvrtko Ursulin wrote: On 21/06/2022 20:11, Robert Beckett wrote: On 21/06/2022 18:37, Patchwork wrote: *Patch Details* *Series:*    drm/i915: ttm for stolen (rev5) *URL:*    https://patchwork.freedesktop.org/series/101396/ <https://patchwork.freedesktop.org/ser

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-28 Thread Robert Beckett
On 28/06/2022 09:46, Tvrtko Ursulin wrote: On 27/06/2022 18:08, Robert Beckett wrote: On 22/06/2022 10:05, Tvrtko Ursulin wrote: On 21/06/2022 20:11, Robert Beckett wrote: On 21/06/2022 18:37, Patchwork wrote: *Patch Details* *Series:*    drm/i915: ttm for stolen (rev5) *URL

Re: [Intel-gfx] [PATCH 2/3] drm/i915/ttm: don't overwrite cache_dirty after setting coherency

2022-06-28 Thread Robert Beckett
On 14/06/2022 18:55, Matthew Auld wrote: On Tue, 14 Jun 2022 at 02:14, Adrian Larumbe wrote: When i915_gem_object_set_cache_level sets the GEM object's cache_dirty to true, in the case of TTM that will sometimes be overwritten when getting the object's pages, more specifically for shmem-pla

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-29 Thread Robert Beckett
On 28/06/2022 17:22, Robert Beckett wrote: On 28/06/2022 09:46, Tvrtko Ursulin wrote: On 27/06/2022 18:08, Robert Beckett wrote: On 22/06/2022 10:05, Tvrtko Ursulin wrote: On 21/06/2022 20:11, Robert Beckett wrote: On 21/06/2022 18:37, Patchwork wrote: *Patch Details* *Series

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-30 Thread Robert Beckett
On 29/06/2022 13:51, Robert Beckett wrote: On 28/06/2022 17:22, Robert Beckett wrote: On 28/06/2022 09:46, Tvrtko Ursulin wrote: On 27/06/2022 18:08, Robert Beckett wrote: On 22/06/2022 10:05, Tvrtko Ursulin wrote: On 21/06/2022 20:11, Robert Beckett wrote: On 21/06/2022 18:37

Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: ttm for stolen (rev5)

2022-06-30 Thread Robert Beckett
On 30/06/2022 15:52, Hellstrom, Thomas wrote: Hi! On Thu, 2022-06-30 at 15:20 +0100, Robert Beckett wrote: On 29/06/2022 13:51, Robert Beckett wrote: On 28/06/2022 17:22, Robert Beckett wrote: On 28/06/2022 09:46, Tvrtko Ursulin wrote: On 27/06/2022 18:08, Robert Beckett wrote

[Intel-gfx] [PATCH v9 00/11] drm/i915: ttm for stolen

2022-07-07 Thread Robert Beckett
estrict reset selftest to only test !GuC engines. Resetting individual GuC engines from host is not supported - Wait for outstanding requests in reset selftest This prevents previous engine test context cleanup appearing as false positive stolen corruption check R

[Intel-gfx] [PATCH v9 01/11] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-07-07 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9

[Intel-gfx] [PATCH v9 03/11] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level

2022-07-07 Thread Robert Beckett
-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 4c1de0b4a10f..40249fa28a7a

[Intel-gfx] [PATCH v9 02/11] drm/i915: limit ttm to dma32 for i965G[M]

2022-07-07 Thread Robert Beckett
i965G[M] cannot relocate objects above 4GiB. Ensure ttm uses dma32 on these systems. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/intel_region_ttm.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915

[Intel-gfx] [PATCH v9 04/11] drm/i915/gem: selftest should not attempt mmap of private regions

2022-07-07 Thread Robert Beckett
During testing make can_mmap consider whether the region is private. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b

[Intel-gfx] [PATCH v9 07/11] drm/i915: ttm move/clear logic fix

2022-07-07 Thread Robert Beckett
specifically requests it only. Make the logic match the desired behaviour. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 22 +++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v9 06/11] drm/i915: sanitize mem_flags for stolen buffers

2022-07-07 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 675e9ab30396..81c67ca9edda 100644

[Intel-gfx] [PATCH v9 05/11] drm/i915: instantiate ttm ranger manager for stolen memory

2022-07-07 Thread Robert Beckett
prepare for ttm based stolen region by using ttm range manager as the resource manager for stolen region. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 ++-- drivers/gpu/drm/i915/intel_region_ttm.c | 31

[Intel-gfx] [PATCH v9 08/11] drm/i915/ttm: add buffer pin on alloc flag

2022-07-07 Thread Robert Beckett
options for stolen backend allocation like create_ring_vma to work as expected. Signed-off-by: Robert Beckett --- .../gpu/drm/i915/gem/i915_gem_object_types.h | 13 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 25 ++- 2 files changed, 32 insertions(+), 6 deletions

[Intel-gfx] [PATCH v9 09/11] drm/i915/selftest: don't attempt engine reset of guc submission engines

2022-07-07 Thread Robert Beckett
x27;s ring occurs while the next engine is under test. This is seen as a stolen memory corruption as the ring buffer was busy initially, but free during the confirmation check and had been poisoned during cleanup. Fix this by not testing GuC submission using engines. Signed-off-by: Robert Be

[Intel-gfx] [PATCH v9 10/11] drm/i915/selftest: wait for requests during engine reset selftest

2022-07-07 Thread Robert Beckett
While looping around each engine and testing for corrupted solen memory during engine reset, the old requests from the previous engine can still be yet to retire. To prevent false positive corruption tests, wait for the outstanding requests at the end of the test Signed-off-by: Robert Beckett

[Intel-gfx] [PATCH v9 11/11] drm/i915: stolen memory use ttm backend

2022-07-07 Thread Robert Beckett
refactor stolen memory region to use ttm. this necessitates using ttm resources to track reserved stolen regions instead of drm_mm_nodes. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 78 ++-- .../gpu/drm/i915/gem/i915_gem_object_types.h | 2 - drivers

[Intel-gfx] [PATCH v10 00/11] drm/i915: ttm for stolen

2022-07-07 Thread Robert Beckett
0:- Fix wiating on requests early error path during reset selftest If a single request fails to complete, the others would not be put, resulting in leaks. Make sure all requests are put before test exit. Robert Beckett (11): drm/i915/ttm: dont trample cache_level ov

[Intel-gfx] [PATCH v10 01/11] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-07-07 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9

[Intel-gfx] [PATCH v10 07/11] drm/i915: ttm move/clear logic fix

2022-07-07 Thread Robert Beckett
specifically requests it only. Make the logic match the desired behaviour. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 22 +++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[Intel-gfx] [PATCH v10 05/11] drm/i915: instantiate ttm ranger manager for stolen memory

2022-07-07 Thread Robert Beckett
prepare for ttm based stolen region by using ttm range manager as the resource manager for stolen region. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 ++-- drivers/gpu/drm/i915/intel_region_ttm.c | 31

[Intel-gfx] [PATCH v10 04/11] drm/i915/gem: selftest should not attempt mmap of private regions

2022-07-07 Thread Robert Beckett
During testing make can_mmap consider whether the region is private. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b

[Intel-gfx] [PATCH v10 09/11] drm/i915/selftest: don't attempt engine reset of guc submission engines

2022-07-07 Thread Robert Beckett
x27;s ring occurs while the next engine is under test. This is seen as a stolen memory corruption as the ring buffer was busy initially, but free during the confirmation check and had been poisoned during cleanup. Fix this by not testing GuC submission using engines. Signed-off-by: Robert Be

[Intel-gfx] [PATCH v10 06/11] drm/i915: sanitize mem_flags for stolen buffers

2022-07-07 Thread Robert Beckett
: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 675e9ab30396..81c67ca9edda 100644

[Intel-gfx] [PATCH v10 10/11] drm/i915/selftest: wait for requests during engine reset selftest

2022-07-07 Thread Robert Beckett
While looping around each engine and testing for corrupted solen memory during engine reset, the old requests from the previous engine can still be yet to retire. To prevent false positive corruption tests, wait for the outstanding requests at the end of the test Signed-off-by: Robert Beckett

[Intel-gfx] [PATCH v10 03/11] drm/i915/ttm: only trust snooping for dgfx when deciding default cache_level

2022-07-07 Thread Robert Beckett
-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c index 4c1de0b4a10f..40249fa28a7a

[Intel-gfx] [PATCH v10 08/11] drm/i915/ttm: add buffer pin on alloc flag

2022-07-07 Thread Robert Beckett
options for stolen backend allocation like create_ring_vma to work as expected. Signed-off-by: Robert Beckett --- .../gpu/drm/i915/gem/i915_gem_object_types.h | 13 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 25 ++- 2 files changed, 32 insertions(+), 6 deletions

[Intel-gfx] [PATCH v10 02/11] drm/i915: limit ttm to dma32 for i965G[M]

2022-07-07 Thread Robert Beckett
i965G[M] cannot relocate objects above 4GiB. Ensure ttm uses dma32 on these systems. Signed-off-by: Robert Beckett Reviewed-by: Thomas Hellström --- drivers/gpu/drm/i915/intel_region_ttm.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915

[Intel-gfx] [PATCH v10 11/11] drm/i915: stolen memory use ttm backend

2022-07-07 Thread Robert Beckett
refactor stolen memory region to use ttm. this necessitates using ttm resources to track reserved stolen regions instead of drm_mm_nodes. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 78 ++-- .../gpu/drm/i915/gem/i915_gem_object_types.h | 2 - drivers

Re: [Intel-gfx] [PATCH v10 04/11] drm/i915/gem: selftest should not attempt mmap of private regions

2022-07-08 Thread Robert Beckett
On 08/07/2022 08:53, Matthew Auld wrote: On 07/07/2022 21:02, Robert Beckett wrote: During testing make can_mmap consider whether the region is private. Do we still need this with: 938d2fd17d17 ("drm/i915/selftests: skip the mman tests for stolen") ? huh, I guess not. That wa

Re: [Intel-gfx] [PATCH v10 04/11] drm/i915/gem: selftest should not attempt mmap of private regions

2022-07-08 Thread Robert Beckett
On 08/07/2022 14:27, Matthew Auld wrote: On 08/07/2022 14:22, Robert Beckett wrote: On 08/07/2022 08:53, Matthew Auld wrote: On 07/07/2022 21:02, Robert Beckett wrote: During testing make can_mmap consider whether the region is private. Do we still need this with: 938d2fd17d17 (&quo

Re: [Intel-gfx] [PATCH] drm/i915/dg2: make GuC FW a requirement for Gen12 and beyond devices

2021-12-08 Thread Robert Beckett
On 07/12/2021 23:15, John Harrison wrote: On 12/7/2021 09:53, Adrian Larumbe wrote: Beginning with DG2, all successive devices will require GuC FW to be present and loaded at probe() time. This change alters error handling in the FW init and load functions so that the driver's probe() functio

Re: [Intel-gfx] [PATCH] drm/i915/dg2: make GuC FW a requirement for Gen12 and beyond devices

2021-12-09 Thread Robert Beckett
On 09/12/2021 00:24, John Harrison wrote: On 12/8/2021 09:58, Robert Beckett wrote: On 07/12/2021 23:15, John Harrison wrote: On 12/7/2021 09:53, Adrian Larumbe wrote: Beginning with DG2, all successive devices will require GuC FW to be present and loaded at probe() time. This change

[Intel-gfx] [PATCH] drm/i915/ttm: fix large buffer population trucation

2021-12-10 Thread Robert Beckett
ttm->num_pages is uint32_t which was causing very large buffers to only populate a truncated size. This fixes gem_create@create-clear igt test on large memory systems. Fixes: 7ae034590cea ("drm/i915/ttm: add tt shmem backend") Signed-off-by: Robert Beckett --- drivers/gpu

Re: [Intel-gfx] [PATCH v4 06/16] drm/i915/gt: Clear compress metadata for Xe_HP platforms

2021-12-15 Thread Robert Beckett
The fixes below fix gem_lmem_swapping@basic igt test On 09/12/2021 15:45, Ramalingam C wrote: From: Ayaz A Siddiqui Xe-HP and latest devices support Flat CCS which reserved a portion of the device memory to store compression metadata, during the clearing of device memory buffer object we also

[Intel-gfx] [PATCH 0/4] dicsrete card 64K page support

2022-01-11 Thread Robert Beckett
for discrete cards drm/i915/uapi: document behaviour for DG2 64K support Robert Beckett (1): drm/i915: add gtt misalignment test .../gpu/drm/i915/gem/selftests/huge_pages.c | 60 + .../i915/gem/selftests/i915_gem_client_blt.c | 23 +- drivers/gpu/drm/i915/gt/gen8_ppgtt.c

[Intel-gfx] [PATCH 1/4] drm/i915: enforce min GTT alignment for discrete cards

2022-01-11 Thread Robert Beckett
ccount. For DG2 we further align and pad lmem object GTT addresses to 2MB to ensure PDEs contain consistent page sizes as required by the HW. Signed-off-by: Matthew Auld Signed-off-by: Ramalingam C Signed-off-by: Robert Beckett Cc: Joonas Lahtinen Cc: Rodrigo Vivi --- .../i915/gem/sel

[Intel-gfx] [PATCH 2/4] drm/i915: support 64K GTT pages for discrete cards

2022-01-11 Thread Robert Beckett
From: Matthew Auld discrete cards optimise 64K GTT pages for local-memory, since everything should be allocated at 64K granularity. We say goodbye to sparse entries, and instead get a compact 256B page-table for 64K pages, which should be more cache friendly. 4K pages for local-memory are no long

[Intel-gfx] [PATCH 3/4] drm/i915: add gtt misalignment test

2022-01-11 Thread Robert Beckett
add test to check handling of misaligned offsets and sizes Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 130 ++ 1 file changed, 130 insertions(+) diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests

[Intel-gfx] [PATCH 4/4] drm/i915/uapi: document behaviour for DG2 64K support

2022-01-11 Thread Robert Beckett
: Matthew Auld Signed-off-by: Ramalingam C Signed-off-by: Robert Beckett cc: Simon Ser cc: Pekka Paalanen Cc: Jordan Justen Cc: Kenneth Graunke Cc: mesa-...@lists.freedesktop.org Cc: Tony Ye Cc: Slawomir Milczarek --- include/uapi/drm/i915_drm.h | 44 - 1 file

Re: [Intel-gfx] [PATCH v7 4/6] drm/i915: Use vma resources for async unbinding

2022-01-17 Thread Robert Beckett
On 10/01/2022 17:22, Thomas Hellström wrote: Implement async (non-blocking) unbinding by not syncing the vma before calling unbind on the vma_resource. Add the resulting unbind fence to the object's dma_resv from where it is picked up by the ttm migration code. Ideally these unbind fences shou

[Intel-gfx] [PATCH v2 0/4] discsrete card 64K page support

2022-01-18 Thread Robert Beckett
discrete cards drm/i915: support 64K GTT pages for discrete cards drm/i915/uapi: document behaviour for DG2 64K support Robert Beckett (1): drm/i915: add gtt misalignment test .../gpu/drm/i915/gem/selftests/huge_pages.c | 60 + .../i915/gem/selftests/i915_gem_client_blt.c | 23

[Intel-gfx] [PATCH v2 1/4] drm/i915: enforce min GTT alignment for discrete cards

2022-01-18 Thread Robert Beckett
ccount. For DG2 we further align and pad lmem object GTT addresses to 2MB to ensure PDEs contain consistent page sizes as required by the HW. Signed-off-by: Matthew Auld Signed-off-by: Ramalingam C Signed-off-by: Robert Beckett Cc: Joonas Lahtinen Cc: Rodrigo Vivi --- .../i915/gem/sel

[Intel-gfx] [PATCH v2 4/4] drm/i915/uapi: document behaviour for DG2 64K support

2022-01-18 Thread Robert Beckett
: Matthew Auld Signed-off-by: Ramalingam C Signed-off-by: Robert Beckett cc: Simon Ser cc: Pekka Paalanen Cc: Jordan Justen Cc: Kenneth Graunke Cc: mesa-...@lists.freedesktop.org Cc: Tony Ye Cc: Slawomir Milczarek --- include/uapi/drm/i915_drm.h | 44 - 1 file

[Intel-gfx] [PATCH v2 2/4] drm/i915: support 64K GTT pages for discrete cards

2022-01-18 Thread Robert Beckett
From: Matthew Auld discrete cards optimise 64K GTT pages for local-memory, since everything should be allocated at 64K granularity. We say goodbye to sparse entries, and instead get a compact 256B page-table for 64K pages, which should be more cache friendly. 4K pages for local-memory are no long

[Intel-gfx] [PATCH v2 3/4] drm/i915: add gtt misalignment test

2022-01-18 Thread Robert Beckett
add test to check handling of misaligned offsets and sizes Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 130 ++ 1 file changed, 130 insertions(+) diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests

Re: [Intel-gfx] [PATCH v2 4/4] drm/i915/uapi: document behaviour for DG2 64K support

2022-01-19 Thread Robert Beckett
On 19/01/2022 18:36, Jordan Justen wrote: Robert Beckett writes: From: Matthew Auld On discrete platforms like DG2, we need to support a minimum page size of 64K when dealing with device local-memory. This is quite tricky for various reasons, so try to document the new implicit uapi for

[Intel-gfx] [RFC PATCH 1/7] drm/i915: instantiate ttm ranger manager for stolen memory

2022-03-15 Thread Robert Beckett
Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_region_ttm.c | 29 +++-- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_region_ttm.c b/drivers/gpu/drm/i915/intel_region_ttm.c index 737ef3f4ab54..bb564b830c96 100644

[Intel-gfx] [RFC PATCH 0/7] drm/i915: ttm for stolen

2022-03-15 Thread Robert Beckett
ithin the range. Robert Beckett (7): drm/i915: instantiate ttm ranger manager for stolen memory drm/i915: add ability to create memory region object in place drm/i915: use gem objects to track stolen nodes drm/i915: stolen memory use ttm backend drm/ttm: add range busy check for range ma

[Intel-gfx] [RFC PATCH 2/7] drm/i915: add ability to create memory region object in place

2022-03-15 Thread Robert Beckett
Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_region.c | 55 ++ drivers/gpu/drm/i915/gem/i915_gem_region.h | 6 ++ drivers/gpu/drm/i915/gem/i915_gem_ttm.c| 84 ++ drivers/gpu/drm/i915/intel_memory_region.h | 6 ++ 4 files changed, 136

[Intel-gfx] [RFC PATCH 6/7] drm/i915: add range busy check for ttm region

2022-03-15 Thread Robert Beckett
RFC: should this become a generic interface in intel_memory_region_ops? RFC: would we prefer an different interface? e.g. for_each_obj_in_range Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/intel_region_ttm.c | 19 +++ drivers/gpu/drm/i915/intel_region_ttm.h | 3

[Intel-gfx] [RFC PATCH 3/7] drm/i915: use gem objects to track stolen nodes

2022-03-15 Thread Robert Beckett
Construct gem objects around stolen nodes. This stops the abuse of interfaces and aids future patches that done use drm nodes for stolen areas. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 72 -- drivers/gpu/drm/i915/gem/i915_gem_stolen.c

[Intel-gfx] [RFC PATCH 5/7] drm/ttm: add range busy check for range manager

2022-03-15 Thread Robert Beckett
RFC: do we want this to become a generic interface in ttm_resource_manager_func? RFC: would we prefer a different interface? e.g. for_each_resource_in_range or for_each_bo_in_range Signed-off-by: Robert Beckett --- drivers/gpu/drm/ttm/ttm_range_manager.c | 21 + include/drm

[Intel-gfx] [RFC PATCH 4/7] drm/i915: stolen memory use ttm backend

2022-03-15 Thread Robert Beckett
Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 385 ++--- drivers/gpu/drm/i915/gem/i915_gem_stolen.h | 9 - drivers/gpu/drm/i915/gem/i915_gem_ttm.c| 14 +- drivers/gpu/drm/i915/gem/i915_gem_ttm.h| 7 + 4 files changed, 40 insertions

[Intel-gfx] [RFC PATCH 7/7] drm/i915: cleanup old stolen state

2022-03-15 Thread Robert Beckett
remove i915->mm.stolen remove i915->mm.stolen_lock they are no longer needed. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/display/intel_fbc.c | 4 ++-- drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 -- drivers/gpu/drm/i915/gt/selftest_reset.c | 16 +--- d

Re: [Intel-gfx] [RFC PATCH 5/7] drm/ttm: add range busy check for range manager

2022-03-16 Thread Robert Beckett
On 16/03/2022 09:54, Christian König wrote: Am 15.03.22 um 19:04 schrieb Robert Beckett: RFC: do we want this to become a generic interface in ttm_resource_manager_func? RFC: would we prefer a different interface? e.g. for_each_resource_in_range or for_each_bo_in_range Well completely NAK

Re: [Intel-gfx] [RFC PATCH 5/7] drm/ttm: add range busy check for range manager

2022-03-16 Thread Robert Beckett
On 16/03/2022 13:43, Christian König wrote: Am 16.03.22 um 14:19 schrieb Robert Beckett: On 16/03/2022 09:54, Christian König wrote: Am 15.03.22 um 19:04 schrieb Robert Beckett: RFC: do we want this to become a generic interface in ttm_resource_manager_func? RFC: would we prefer a

Re: [Intel-gfx] [RFC PATCH 5/7] drm/ttm: add range busy check for range manager

2022-03-16 Thread Robert Beckett
On 16/03/2022 14:39, Christian König wrote: Am 16.03.22 um 15:26 schrieb Robert Beckett: [SNIP] this is where I replace an existing range check via drm_mm with the range check I added in this patch. Mhm, I still don't get the use case from the code, but I don't think it matter

Re: [Intel-gfx] [PATCH 1/4] drm/i915: add gen6 ppgtt dummy creation function

2022-05-23 Thread Robert Beckett
On 11/05/2022 11:13, Thomas Hellström wrote: Hi, On Tue, 2022-05-03 at 19:13 +, Robert Beckett wrote: Internal gem objects will soon just be volatile system memory region objects. To enable this, create a separate dummy object creation function for gen6 ppgtt It's not clear fro

Re: [Intel-gfx] [PATCH 4/4] drm/i915: internal buffers use ttm backend

2022-05-23 Thread Robert Beckett
On 11/05/2022 15:14, Thomas Hellström wrote: On Tue, 2022-05-03 at 19:13 +, Robert Beckett wrote: refactor internal buffer backend to allocate volatile pages via ttm pool allocator Signed-off-by: Robert Beckett ---  drivers/gpu/drm/i915/gem/i915_gem_internal.c | 264

Re: [Intel-gfx] [PATCH 3/4] drm/i915: allow volatile buffers to use ttm pool allocator

2022-05-23 Thread Robert Beckett
On 11/05/2022 13:42, Thomas Hellström wrote: Hi, Bob, On Tue, 2022-05-03 at 19:13 +, Robert Beckett wrote: internal buffers should be shmem backed. if a volatile buffer is requested, allow ttm to use the pool allocator to provide volatile pages as backing Signed-off-by: Robert Beckett

[Intel-gfx] [PATCH v2 0/8] drm/i915: ttm for internal

2022-06-08 Thread Robert Beckett
nal region - Fixed various issues with tests and i915 ttm usage as a result of supporting regions other than lmem via ttm. Robert Beckett (8): drm/i915/ttm: dont trample cache_level overrides during ttm move drm/i915: add gen6 ppgtt dummy creation function drm/i915: setup ggtt sc

[Intel-gfx] [PATCH v2 1/8] drm/i915/ttm: dont trample cache_level overrides during ttm move

2022-06-08 Thread Robert Beckett
: Robert Beckett --- drivers/gpu/drm/i915/gem/i915_gem_object.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_object_types.h | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 9 ++--- 4 files changed, 9 insertions(+), 3 deletions

[Intel-gfx] [PATCH v2 2/8] drm/i915: add gen6 ppgtt dummy creation function

2022-06-08 Thread Robert Beckett
gem object and avoid having to maintain a custom ops api in the internal backend, which makes later refactoring easier. Signed-off-by: Robert Beckett --- drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 43 ++-- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/drivers

  1   2   3   >