* [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups
@ 2023-06-27 15:13 Jani Nikula
2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula
` (9 more replies)
0 siblings, 10 replies; 19+ messages in thread
From: Jani Nikula @ 2023-06-27 15:13 UTC (permalink / raw)
To: intel-gfx; +Cc: jani.nikula
This is v2 of [1], fixing mock device init to not modify rodata.
BR,
Jani.
[1] https://patchwork.freedesktop.org/series/119086/
Jani Nikula (6):
drm/i915: use mock device info for creating mock device
drm/i915: move platform_engine_mask and memory_regions to device info
drm/i915: separate display info printing from the rest
drm/i915: fix display info usage
drm/i915: move display device and runtime info to struct intel_display
drm/i915: make device info a const pointer to rodata
drivers/gpu/drm/i915/display/intel_display.h | 2 +-
.../gpu/drm/i915/display/intel_display_core.h | 9 +++
.../drm/i915/display/intel_display_device.c | 21 ++++++
.../drm/i915/display/intel_display_device.h | 5 ++
drivers/gpu/drm/i915/gt/intel_gt.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_huc.c | 2 +-
drivers/gpu/drm/i915/i915_debugfs.c | 1 +
drivers/gpu/drm/i915/i915_driver.c | 2 +
drivers/gpu/drm/i915/i915_drv.h | 11 ++--
drivers/gpu/drm/i915/i915_gpu_error.c | 6 ++
drivers/gpu/drm/i915/i915_gpu_error.h | 3 +
drivers/gpu/drm/i915/i915_pci.c | 64 +++++++++----------
drivers/gpu/drm/i915/intel_device_info.c | 44 ++-----------
drivers/gpu/drm/i915/intel_device_info.h | 11 +---
.../gpu/drm/i915/selftests/mock_gem_device.c | 45 +++++++------
16 files changed, 122 insertions(+), 108 deletions(-)
--
2.39.2
^ permalink raw reply [flat|nested] 19+ messages in thread* [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula @ 2023-06-27 15:13 ` Jani Nikula 2023-06-29 11:00 ` Tvrtko Ursulin ` (3 more replies) 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info Jani Nikula ` (8 subsequent siblings) 9 siblings, 4 replies; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:13 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula, Andrzej Hajda, Matt Roper Instead of modifying the device info on the fly, use static const mock device info. It's not okay to modify device info at runtime; we've added separate runtime info for info that needs to be modified at runtime. We've added safeguards to device info to prevent it from being modified, but commit 5e352e32aec2 ("drm/i915: preparation for using PAT index") just cast the const away and modified it anyway. This prevents device info from being moved to rodata. Fixes: 5e352e32aec2 ("drm/i915: preparation for using PAT index") Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Cc: Fei Yang <fei.yang@intel.com> Cc: Andi Shyti <andi.shyti@linux.intel.com> Cc: Andrzej Hajda <andrzej.hajda@intel.com> Cc: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- .../gpu/drm/i915/selftests/mock_gem_device.c | 45 ++++++++++--------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c index 09d4bbcdcdbf..4de6a4e8280d 100644 --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c @@ -118,15 +118,31 @@ static void mock_gt_probe(struct drm_i915_private *i915) i915->gt[0]->name = "Mock GT"; } +static const struct intel_device_info mock_info = { + .__runtime.graphics.ip.ver = -1, + .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | + I915_GTT_PAGE_SIZE_64K | + I915_GTT_PAGE_SIZE_2M), + .__runtime.memory_regions = REGION_SMEM, + .__runtime.platform_engine_mask = BIT(0), + + /* simply use legacy cache level for mock device */ + .max_pat_index = 3, + .cachelevel_to_pat = { + [I915_CACHE_NONE] = 0, + [I915_CACHE_LLC] = 1, + [I915_CACHE_L3_LLC] = 2, + [I915_CACHE_WT] = 3, + }, +}; + struct drm_i915_private *mock_gem_device(void) { #if IS_ENABLED(CONFIG_IOMMU_API) && defined(CONFIG_INTEL_IOMMU) static struct dev_iommu fake_iommu = { .priv = (void *)-1 }; #endif struct drm_i915_private *i915; - struct intel_device_info *i915_info; struct pci_dev *pdev; - unsigned int i; int ret; pdev = kzalloc(sizeof(*pdev), GFP_KERNEL); @@ -159,15 +175,18 @@ struct drm_i915_private *mock_gem_device(void) pci_set_drvdata(pdev, i915); + /* Device parameters start as a copy of module parameters. */ + i915_params_copy(&i915->params, &i915_modparams); + + /* Set up device info and initial runtime info. */ + intel_device_info_driver_create(i915, pdev->device, &mock_info); + dev_pm_domain_set(&pdev->dev, &pm_domain); pm_runtime_enable(&pdev->dev); pm_runtime_dont_use_autosuspend(&pdev->dev); if (pm_runtime_enabled(&pdev->dev)) WARN_ON(pm_runtime_get_sync(&pdev->dev)); - - i915_params_copy(&i915->params, &i915_modparams); - intel_runtime_pm_init_early(&i915->runtime_pm); /* wakeref tracking has significant overhead */ i915->runtime_pm.no_wakeref_tracking = true; @@ -175,21 +194,6 @@ struct drm_i915_private *mock_gem_device(void) /* Using the global GTT may ask questions about KMS users, so prepare */ drm_mode_config_init(&i915->drm); - RUNTIME_INFO(i915)->graphics.ip.ver = -1; - - RUNTIME_INFO(i915)->page_sizes = - I915_GTT_PAGE_SIZE_4K | - I915_GTT_PAGE_SIZE_64K | - I915_GTT_PAGE_SIZE_2M; - - RUNTIME_INFO(i915)->memory_regions = REGION_SMEM; - - /* simply use legacy cache level for mock device */ - i915_info = (struct intel_device_info *)INTEL_INFO(i915); - i915_info->max_pat_index = 3; - for (i = 0; i < I915_MAX_CACHE_LEVEL; i++) - i915_info->cachelevel_to_pat[i] = i; - intel_memory_regions_hw_probe(i915); spin_lock_init(&i915->gpu_error.lock); @@ -223,7 +227,6 @@ struct drm_i915_private *mock_gem_device(void) mock_init_ggtt(to_gt(i915)); to_gt(i915)->vm = i915_vm_get(&to_gt(i915)->ggtt->vm); - RUNTIME_INFO(i915)->platform_engine_mask = BIT(0); to_gt(i915)->info.engine_mask = BIT(0); to_gt(i915)->engine[RCS0] = mock_engine(i915, "mock", RCS0); -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula @ 2023-06-29 11:00 ` Tvrtko Ursulin 2023-06-29 11:53 ` Andi Shyti ` (2 subsequent siblings) 3 siblings, 0 replies; 19+ messages in thread From: Tvrtko Ursulin @ 2023-06-29 11:00 UTC (permalink / raw) To: Jani Nikula, intel-gfx; +Cc: Andrzej Hajda, Matt Roper On 27/06/2023 16:13, Jani Nikula wrote: > Instead of modifying the device info on the fly, use static const mock > device info. > > It's not okay to modify device info at runtime; we've added separate > runtime info for info that needs to be modified at runtime. We've added > safeguards to device info to prevent it from being modified, but commit > 5e352e32aec2 ("drm/i915: preparation for using PAT index") just cast the > const away and modified it anyway. This prevents device info from being > moved to rodata. > > Fixes: 5e352e32aec2 ("drm/i915: preparation for using PAT index") > Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > Cc: Fei Yang <fei.yang@intel.com> > Cc: Andi Shyti <andi.shyti@linux.intel.com> > Cc: Andrzej Hajda <andrzej.hajda@intel.com> > Cc: Matt Roper <matthew.d.roper@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> > --- > .../gpu/drm/i915/selftests/mock_gem_device.c | 45 ++++++++++--------- > 1 file changed, 24 insertions(+), 21 deletions(-) > > diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > index 09d4bbcdcdbf..4de6a4e8280d 100644 > --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c > +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > @@ -118,15 +118,31 @@ static void mock_gt_probe(struct drm_i915_private *i915) > i915->gt[0]->name = "Mock GT"; > } > > +static const struct intel_device_info mock_info = { > + .__runtime.graphics.ip.ver = -1, > + .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | > + I915_GTT_PAGE_SIZE_64K | > + I915_GTT_PAGE_SIZE_2M), > + .__runtime.memory_regions = REGION_SMEM, > + .__runtime.platform_engine_mask = BIT(0), > + > + /* simply use legacy cache level for mock device */ > + .max_pat_index = 3, > + .cachelevel_to_pat = { > + [I915_CACHE_NONE] = 0, > + [I915_CACHE_LLC] = 1, > + [I915_CACHE_L3_LLC] = 2, > + [I915_CACHE_WT] = 3, > + }, > +}; > + > struct drm_i915_private *mock_gem_device(void) > { > #if IS_ENABLED(CONFIG_IOMMU_API) && defined(CONFIG_INTEL_IOMMU) > static struct dev_iommu fake_iommu = { .priv = (void *)-1 }; > #endif > struct drm_i915_private *i915; > - struct intel_device_info *i915_info; > struct pci_dev *pdev; > - unsigned int i; > int ret; > > pdev = kzalloc(sizeof(*pdev), GFP_KERNEL); > @@ -159,15 +175,18 @@ struct drm_i915_private *mock_gem_device(void) > > pci_set_drvdata(pdev, i915); > > + /* Device parameters start as a copy of module parameters. */ > + i915_params_copy(&i915->params, &i915_modparams); > + > + /* Set up device info and initial runtime info. */ > + intel_device_info_driver_create(i915, pdev->device, &mock_info); This one was new to me but figuring out what will dev->device contain, or if it could have any unintended consequences was too time consuming. If something breaks it will break loudly in testing. Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko > + > dev_pm_domain_set(&pdev->dev, &pm_domain); > pm_runtime_enable(&pdev->dev); > pm_runtime_dont_use_autosuspend(&pdev->dev); > if (pm_runtime_enabled(&pdev->dev)) > WARN_ON(pm_runtime_get_sync(&pdev->dev)); > > - > - i915_params_copy(&i915->params, &i915_modparams); > - > intel_runtime_pm_init_early(&i915->runtime_pm); > /* wakeref tracking has significant overhead */ > i915->runtime_pm.no_wakeref_tracking = true; > @@ -175,21 +194,6 @@ struct drm_i915_private *mock_gem_device(void) > /* Using the global GTT may ask questions about KMS users, so prepare */ > drm_mode_config_init(&i915->drm); > > - RUNTIME_INFO(i915)->graphics.ip.ver = -1; > - > - RUNTIME_INFO(i915)->page_sizes = > - I915_GTT_PAGE_SIZE_4K | > - I915_GTT_PAGE_SIZE_64K | > - I915_GTT_PAGE_SIZE_2M; > - > - RUNTIME_INFO(i915)->memory_regions = REGION_SMEM; > - > - /* simply use legacy cache level for mock device */ > - i915_info = (struct intel_device_info *)INTEL_INFO(i915); > - i915_info->max_pat_index = 3; > - for (i = 0; i < I915_MAX_CACHE_LEVEL; i++) > - i915_info->cachelevel_to_pat[i] = i; > - > intel_memory_regions_hw_probe(i915); > > spin_lock_init(&i915->gpu_error.lock); > @@ -223,7 +227,6 @@ struct drm_i915_private *mock_gem_device(void) > mock_init_ggtt(to_gt(i915)); > to_gt(i915)->vm = i915_vm_get(&to_gt(i915)->ggtt->vm); > > - RUNTIME_INFO(i915)->platform_engine_mask = BIT(0); > to_gt(i915)->info.engine_mask = BIT(0); > > to_gt(i915)->engine[RCS0] = mock_engine(i915, "mock", RCS0); ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula 2023-06-29 11:00 ` Tvrtko Ursulin @ 2023-06-29 11:53 ` Andi Shyti 2023-06-29 12:57 ` Andrzej Hajda 2023-06-29 16:12 ` Yang, Fei 3 siblings, 0 replies; 19+ messages in thread From: Andi Shyti @ 2023-06-29 11:53 UTC (permalink / raw) To: Jani Nikula; +Cc: intel-gfx, Andrzej Hajda, Matt Roper Hi Jani, On Tue, Jun 27, 2023 at 06:13:58PM +0300, Jani Nikula wrote: > Instead of modifying the device info on the fly, use static const mock > device info. > > It's not okay to modify device info at runtime; we've added separate > runtime info for info that needs to be modified at runtime. We've added > safeguards to device info to prevent it from being modified, but commit > 5e352e32aec2 ("drm/i915: preparation for using PAT index") just cast the > const away and modified it anyway. This prevents device info from being > moved to rodata. > > Fixes: 5e352e32aec2 ("drm/i915: preparation for using PAT index") > Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > Cc: Fei Yang <fei.yang@intel.com> > Cc: Andi Shyti <andi.shyti@linux.intel.com> > Cc: Andrzej Hajda <andrzej.hajda@intel.com> > Cc: Matt Roper <matthew.d.roper@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> thanks for fixing this! Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> Andi ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula 2023-06-29 11:00 ` Tvrtko Ursulin 2023-06-29 11:53 ` Andi Shyti @ 2023-06-29 12:57 ` Andrzej Hajda 2023-06-29 16:12 ` Yang, Fei 3 siblings, 0 replies; 19+ messages in thread From: Andrzej Hajda @ 2023-06-29 12:57 UTC (permalink / raw) To: Jani Nikula, intel-gfx; +Cc: Matt Roper On 27.06.2023 17:13, Jani Nikula wrote: > Instead of modifying the device info on the fly, use static const mock > device info. > > It's not okay to modify device info at runtime; we've added separate > runtime info for info that needs to be modified at runtime. We've added > safeguards to device info to prevent it from being modified, but commit > 5e352e32aec2 ("drm/i915: preparation for using PAT index") just cast the > const away and modified it anyway. This prevents device info from being > moved to rodata. > > Fixes: 5e352e32aec2 ("drm/i915: preparation for using PAT index") > Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > Cc: Fei Yang <fei.yang@intel.com> > Cc: Andi Shyti <andi.shyti@linux.intel.com> > Cc: Andrzej Hajda <andrzej.hajda@intel.com> > Cc: Matt Roper <matthew.d.roper@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com> Regards Andrzej > --- > .../gpu/drm/i915/selftests/mock_gem_device.c | 45 ++++++++++--------- > 1 file changed, 24 insertions(+), 21 deletions(-) > > diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > index 09d4bbcdcdbf..4de6a4e8280d 100644 > --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c > +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > @@ -118,15 +118,31 @@ static void mock_gt_probe(struct drm_i915_private *i915) > i915->gt[0]->name = "Mock GT"; > } > > +static const struct intel_device_info mock_info = { > + .__runtime.graphics.ip.ver = -1, > + .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | > + I915_GTT_PAGE_SIZE_64K | > + I915_GTT_PAGE_SIZE_2M), > + .__runtime.memory_regions = REGION_SMEM, > + .__runtime.platform_engine_mask = BIT(0), > + > + /* simply use legacy cache level for mock device */ > + .max_pat_index = 3, > + .cachelevel_to_pat = { > + [I915_CACHE_NONE] = 0, > + [I915_CACHE_LLC] = 1, > + [I915_CACHE_L3_LLC] = 2, > + [I915_CACHE_WT] = 3, > + }, > +}; > + > struct drm_i915_private *mock_gem_device(void) > { > #if IS_ENABLED(CONFIG_IOMMU_API) && defined(CONFIG_INTEL_IOMMU) > static struct dev_iommu fake_iommu = { .priv = (void *)-1 }; > #endif > struct drm_i915_private *i915; > - struct intel_device_info *i915_info; > struct pci_dev *pdev; > - unsigned int i; > int ret; > > pdev = kzalloc(sizeof(*pdev), GFP_KERNEL); > @@ -159,15 +175,18 @@ struct drm_i915_private *mock_gem_device(void) > > pci_set_drvdata(pdev, i915); > > + /* Device parameters start as a copy of module parameters. */ > + i915_params_copy(&i915->params, &i915_modparams); > + > + /* Set up device info and initial runtime info. */ > + intel_device_info_driver_create(i915, pdev->device, &mock_info); > + > dev_pm_domain_set(&pdev->dev, &pm_domain); > pm_runtime_enable(&pdev->dev); > pm_runtime_dont_use_autosuspend(&pdev->dev); > if (pm_runtime_enabled(&pdev->dev)) > WARN_ON(pm_runtime_get_sync(&pdev->dev)); > > - > - i915_params_copy(&i915->params, &i915_modparams); > - > intel_runtime_pm_init_early(&i915->runtime_pm); > /* wakeref tracking has significant overhead */ > i915->runtime_pm.no_wakeref_tracking = true; > @@ -175,21 +194,6 @@ struct drm_i915_private *mock_gem_device(void) > /* Using the global GTT may ask questions about KMS users, so prepare */ > drm_mode_config_init(&i915->drm); > > - RUNTIME_INFO(i915)->graphics.ip.ver = -1; > - > - RUNTIME_INFO(i915)->page_sizes = > - I915_GTT_PAGE_SIZE_4K | > - I915_GTT_PAGE_SIZE_64K | > - I915_GTT_PAGE_SIZE_2M; > - > - RUNTIME_INFO(i915)->memory_regions = REGION_SMEM; > - > - /* simply use legacy cache level for mock device */ > - i915_info = (struct intel_device_info *)INTEL_INFO(i915); > - i915_info->max_pat_index = 3; > - for (i = 0; i < I915_MAX_CACHE_LEVEL; i++) > - i915_info->cachelevel_to_pat[i] = i; > - > intel_memory_regions_hw_probe(i915); > > spin_lock_init(&i915->gpu_error.lock); > @@ -223,7 +227,6 @@ struct drm_i915_private *mock_gem_device(void) > mock_init_ggtt(to_gt(i915)); > to_gt(i915)->vm = i915_vm_get(&to_gt(i915)->ggtt->vm); > > - RUNTIME_INFO(i915)->platform_engine_mask = BIT(0); > to_gt(i915)->info.engine_mask = BIT(0); > > to_gt(i915)->engine[RCS0] = mock_engine(i915, "mock", RCS0); ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula ` (2 preceding siblings ...) 2023-06-29 12:57 ` Andrzej Hajda @ 2023-06-29 16:12 ` Yang, Fei 3 siblings, 0 replies; 19+ messages in thread From: Yang, Fei @ 2023-06-29 16:12 UTC (permalink / raw) To: Nikula, Jani, intel-gfx@lists.freedesktop.org Cc: Roper, Matthew D, Hajda, Andrzej > Instead of modifying the device info on the fly, use static const > mock device info. > > It's not okay to modify device info at runtime; we've added separate > runtime info for info that needs to be modified at runtime. We've > added safeguards to device info to prevent it from being modified, > but commit 5e352e32aec2 ("drm/i915: preparation for using PAT index") > just cast the const away and modified it anyway. This prevents device > info from being moved to rodata. > > Fixes: 5e352e32aec2 ("drm/i915: preparation for using PAT index") > Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> > Cc: Fei Yang <fei.yang@intel.com> > Cc: Andi Shyti <andi.shyti@linux.intel.com> > Cc: Andrzej Hajda <andrzej.hajda@intel.com> > Cc: Matt Roper <matthew.d.roper@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> Thanks for fixing this. Reviewed-by: Fei Yang <fei.yang@intel.com> > --- > .../gpu/drm/i915/selftests/mock_gem_device.c | 45 ++++++++++--------- > 1 file changed, 24 insertions(+), 21 deletions(-) > > diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > index 09d4bbcdcdbf..4de6a4e8280d 100644 > --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c > +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > @@ -118,15 +118,31 @@ static void mock_gt_probe(struct drm_i915_private *i915) > i915->gt[0]->name = "Mock GT"; > } > > +static const struct intel_device_info mock_info = { > + .__runtime.graphics.ip.ver = -1, > + .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | > + I915_GTT_PAGE_SIZE_64K | > + I915_GTT_PAGE_SIZE_2M), > + .__runtime.memory_regions = REGION_SMEM, > + .__runtime.platform_engine_mask = BIT(0), > + > + /* simply use legacy cache level for mock device */ > + .max_pat_index = 3, > + .cachelevel_to_pat = { > + [I915_CACHE_NONE] = 0, > + [I915_CACHE_LLC] = 1, > + [I915_CACHE_L3_LLC] = 2, > + [I915_CACHE_WT] = 3, > + }, > +}; > + > struct drm_i915_private *mock_gem_device(void) { #if IS_ENABLED(CONFIG_IOMMU_API) && defined(CONFIG_INTEL_IOMMU) > static struct dev_iommu fake_iommu = { .priv = (void *)-1 }; #endif > struct drm_i915_private *i915; > - struct intel_device_info *i915_info; > struct pci_dev *pdev; > - unsigned int i; > int ret; > > pdev = kzalloc(sizeof(*pdev), GFP_KERNEL); @@ -159,15 +175,18 @@ struct drm_i915_private *mock_gem_device(void) > > pci_set_drvdata(pdev, i915); > > + /* Device parameters start as a copy of module parameters. */ > + i915_params_copy(&i915->params, &i915_modparams); > + > + /* Set up device info and initial runtime info. */ > + intel_device_info_driver_create(i915, pdev->device, &mock_info); > + > dev_pm_domain_set(&pdev->dev, &pm_domain); > pm_runtime_enable(&pdev->dev); > pm_runtime_dont_use_autosuspend(&pdev->dev); > if (pm_runtime_enabled(&pdev->dev)) > WARN_ON(pm_runtime_get_sync(&pdev->dev)); > > - > - i915_params_copy(&i915->params, &i915_modparams); > - > intel_runtime_pm_init_early(&i915->runtime_pm); > /* wakeref tracking has significant overhead */ > i915->runtime_pm.no_wakeref_tracking = true; > @@ -175,21 +194,6 @@ struct drm_i915_private *mock_gem_device(void) > /* Using the global GTT may ask questions about KMS users, so prepare */ > drm_mode_config_init(&i915->drm); > > - RUNTIME_INFO(i915)->graphics.ip.ver = -1; > - > - RUNTIME_INFO(i915)->page_sizes = > - I915_GTT_PAGE_SIZE_4K | > - I915_GTT_PAGE_SIZE_64K | > - I915_GTT_PAGE_SIZE_2M; > - > - RUNTIME_INFO(i915)->memory_regions = REGION_SMEM; > - > - /* simply use legacy cache level for mock device */ > - i915_info = (struct intel_device_info *)INTEL_INFO(i915); > - i915_info->max_pat_index = 3; > - for (i = 0; i < I915_MAX_CACHE_LEVEL; i++) > - i915_info->cachelevel_to_pat[i] = i; > - > intel_memory_regions_hw_probe(i915); > > spin_lock_init(&i915->gpu_error.lock); > @@ -223,7 +227,6 @@ struct drm_i915_private *mock_gem_device(void) > mock_init_ggtt(to_gt(i915)); > to_gt(i915)->vm = i915_vm_get(&to_gt(i915)->ggtt->vm); > > - RUNTIME_INFO(i915)->platform_engine_mask = BIT(0); > to_gt(i915)->info.engine_mask = BIT(0); > > to_gt(i915)->engine[RCS0] = mock_engine(i915, "mock", RCS0); > -- > 2.39.2 ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula @ 2023-06-27 15:13 ` Jani Nikula 2023-06-29 11:06 ` Tvrtko Ursulin 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 3/6] drm/i915: separate display info printing from the rest Jani Nikula ` (7 subsequent siblings) 9 siblings, 1 reply; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:13 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula The mock device creation was the only place that needed to modify platform_engine_mask and memory_regions runtime. With mock_info in place for mock devices, we can move them to device info. Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/i915/gt/intel_gt.c | 2 +- drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c | 2 +- drivers/gpu/drm/i915/gt/uc/intel_huc.c | 2 +- drivers/gpu/drm/i915/i915_drv.h | 2 +- drivers/gpu/drm/i915/i915_pci.c | 64 +++++++++---------- drivers/gpu/drm/i915/intel_device_info.c | 2 +- drivers/gpu/drm/i915/intel_device_info.h | 7 +- .../gpu/drm/i915/selftests/mock_gem_device.c | 4 +- 8 files changed, 42 insertions(+), 43 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt.c b/drivers/gpu/drm/i915/gt/intel_gt.c index 7a008e829d4d..33a61046ba58 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt.c +++ b/drivers/gpu/drm/i915/gt/intel_gt.c @@ -904,7 +904,7 @@ int intel_gt_probe_all(struct drm_i915_private *i915) */ gt->i915 = i915; gt->name = "Primary GT"; - gt->info.engine_mask = RUNTIME_INFO(i915)->platform_engine_mask; + gt->info.engine_mask = INTEL_INFO(i915)->platform_engine_mask; gt_dbg(gt, "Setting up %s\n", gt->name); ret = intel_gt_tile_setup(gt, phys_addr); diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c index 75a3a0790ef3..034b53a71541 100644 --- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c +++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c @@ -99,7 +99,7 @@ static bool gsc_engine_supported(struct intel_gt *gt) GEM_BUG_ON(!gt_is_root(gt) && !gt->info.engine_mask); if (gt_is_root(gt)) - mask = RUNTIME_INFO(gt->i915)->platform_engine_mask; + mask = INTEL_INFO(gt->i915)->platform_engine_mask; else mask = gt->info.engine_mask; diff --git a/drivers/gpu/drm/i915/gt/uc/intel_huc.c b/drivers/gpu/drm/i915/gt/uc/intel_huc.c index 23aa1b0e0166..ba9e07fc2b57 100644 --- a/drivers/gpu/drm/i915/gt/uc/intel_huc.c +++ b/drivers/gpu/drm/i915/gt/uc/intel_huc.c @@ -267,7 +267,7 @@ static bool vcs_supported(struct intel_gt *gt) GEM_BUG_ON(!gt_is_root(gt) && !gt->info.engine_mask); if (gt_is_root(gt)) - mask = RUNTIME_INFO(gt->i915)->platform_engine_mask; + mask = INTEL_INFO(gt->i915)->platform_engine_mask; else mask = gt->info.engine_mask; diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index b4cf6f0f636d..078720a52322 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -839,7 +839,7 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, */ #define HAS_64K_PAGES(i915) (INTEL_INFO(i915)->has_64k_pages) -#define HAS_REGION(i915, i) (RUNTIME_INFO(i915)->memory_regions & (i)) +#define HAS_REGION(i915, i) (INTEL_INFO(i915)->memory_regions & (i)) #define HAS_LMEM(i915) HAS_REGION(i915, REGION_LMEM) #define HAS_EXTRA_GT_LIST(i915) (INTEL_INFO(i915)->extra_gt_list) diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c index 3d7a5db9833b..dea3609fc496 100644 --- a/drivers/gpu/drm/i915/i915_pci.c +++ b/drivers/gpu/drm/i915/i915_pci.c @@ -84,7 +84,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); .__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K #define GEN_DEFAULT_REGIONS \ - .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_SMEM + .memory_regions = REGION_SMEM | REGION_STOLEN_SMEM #define I830_FEATURES \ GEN(2), \ @@ -93,7 +93,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); .has_3d_pipeline = 1, \ .hws_needs_physical = 1, \ .unfenced_needs_alignment = 1, \ - .__runtime.platform_engine_mask = BIT(RCS0), \ + .platform_engine_mask = BIT(RCS0), \ .has_snoop = true, \ .has_coherent_ggtt = false, \ .dma_mask_size = 32, \ @@ -108,7 +108,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); .gpu_reset_clobbers_display = true, \ .hws_needs_physical = 1, \ .unfenced_needs_alignment = 1, \ - .__runtime.platform_engine_mask = BIT(RCS0), \ + .platform_engine_mask = BIT(RCS0), \ .has_snoop = true, \ .has_coherent_ggtt = false, \ .dma_mask_size = 32, \ @@ -140,7 +140,7 @@ static const struct intel_device_info i865g_info = { #define GEN3_FEATURES \ GEN(3), \ .gpu_reset_clobbers_display = true, \ - .__runtime.platform_engine_mask = BIT(RCS0), \ + .platform_engine_mask = BIT(RCS0), \ .has_3d_pipeline = 1, \ .has_snoop = true, \ .has_coherent_ggtt = true, \ @@ -203,7 +203,7 @@ static const struct intel_device_info pnv_m_info = { #define GEN4_FEATURES \ GEN(4), \ .gpu_reset_clobbers_display = true, \ - .__runtime.platform_engine_mask = BIT(RCS0), \ + .platform_engine_mask = BIT(RCS0), \ .has_3d_pipeline = 1, \ .has_snoop = true, \ .has_coherent_ggtt = true, \ @@ -231,7 +231,7 @@ static const struct intel_device_info i965gm_info = { static const struct intel_device_info g45_info = { GEN4_FEATURES, PLATFORM(INTEL_G45), - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), .gpu_reset_clobbers_display = false, }; @@ -239,13 +239,13 @@ static const struct intel_device_info gm45_info = { GEN4_FEATURES, PLATFORM(INTEL_GM45), .is_mobile = 1, - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), .gpu_reset_clobbers_display = false, }; #define GEN5_FEATURES \ GEN(5), \ - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), \ + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), \ .has_3d_pipeline = 1, \ .has_snoop = true, \ .has_coherent_ggtt = true, \ @@ -271,7 +271,7 @@ static const struct intel_device_info ilk_m_info = { #define GEN6_FEATURES \ GEN(6), \ - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ .has_3d_pipeline = 1, \ .has_coherent_ggtt = true, \ .has_llc = 1, \ @@ -319,7 +319,7 @@ static const struct intel_device_info snb_m_gt2_info = { #define GEN7_FEATURES \ GEN(7), \ - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ .has_3d_pipeline = 1, \ .has_coherent_ggtt = true, \ .has_llc = 1, \ @@ -387,7 +387,7 @@ static const struct intel_device_info vlv_info = { .__runtime.ppgtt_size = 31, .has_snoop = true, .has_coherent_ggtt = false, - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), GEN_DEFAULT_PAGE_SIZES, GEN_DEFAULT_REGIONS, LEGACY_CACHELEVEL, @@ -395,7 +395,7 @@ static const struct intel_device_info vlv_info = { #define G75_FEATURES \ GEN7_FEATURES, \ - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ .has_rc6p = 0 /* RC6p removed-by HSW */, \ .has_runtime_pm = 1 @@ -453,7 +453,7 @@ static const struct intel_device_info bdw_rsvd_info = { static const struct intel_device_info bdw_gt3_info = { BDW_PLATFORM, .gt = 3, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), }; @@ -461,7 +461,7 @@ static const struct intel_device_info chv_info = { PLATFORM(INTEL_CHERRYVIEW), GEN(8), .is_lp = 1, - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), .has_64bit_reloc = 1, .has_runtime_pm = 1, .has_rc6 = 1, @@ -505,7 +505,7 @@ static const struct intel_device_info skl_gt2_info = { #define SKL_GT3_PLUS_PLATFORM \ SKL_PLATFORM, \ - .__runtime.platform_engine_mask = \ + .platform_engine_mask = \ BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1) @@ -522,7 +522,7 @@ static const struct intel_device_info skl_gt4_info = { #define GEN9_LP_FEATURES \ GEN(9), \ .is_lp = 1, \ - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ .has_3d_pipeline = 1, \ .has_64bit_reloc = 1, \ .has_runtime_pm = 1, \ @@ -568,7 +568,7 @@ static const struct intel_device_info kbl_gt2_info = { static const struct intel_device_info kbl_gt3_info = { KBL_PLATFORM, .gt = 3, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), }; @@ -589,7 +589,7 @@ static const struct intel_device_info cfl_gt2_info = { static const struct intel_device_info cfl_gt3_info = { CFL_PLATFORM, .gt = 3, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), }; @@ -622,21 +622,21 @@ static const struct intel_device_info cml_gt2_info = { static const struct intel_device_info icl_info = { GEN11_FEATURES, PLATFORM(INTEL_ICELAKE), - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), }; static const struct intel_device_info ehl_info = { GEN11_FEATURES, PLATFORM(INTEL_ELKHARTLAKE), - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), .__runtime.ppgtt_size = 36, }; static const struct intel_device_info jsl_info = { GEN11_FEATURES, PLATFORM(INTEL_JASPERLAKE), - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), .__runtime.ppgtt_size = 36, }; @@ -651,19 +651,19 @@ static const struct intel_device_info jsl_info = { static const struct intel_device_info tgl_info = { GEN12_FEATURES, PLATFORM(INTEL_TIGERLAKE), - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), }; static const struct intel_device_info rkl_info = { GEN12_FEATURES, PLATFORM(INTEL_ROCKETLAKE), - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0), }; #define DGFX_FEATURES \ - .__runtime.memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \ + .memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \ .has_llc = 0, \ .has_pxp = 0, \ .has_snoop = 1, \ @@ -676,7 +676,7 @@ static const struct intel_device_info dg1_info = { .__runtime.graphics.ip.rel = 10, PLATFORM(INTEL_DG1), .require_force_probe = 1, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), /* Wa_16011227922 */ @@ -686,7 +686,7 @@ static const struct intel_device_info dg1_info = { static const struct intel_device_info adl_s_info = { GEN12_FEATURES, PLATFORM(INTEL_ALDERLAKE_S), - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), .dma_mask_size = 39, }; @@ -694,7 +694,7 @@ static const struct intel_device_info adl_s_info = { static const struct intel_device_info adl_p_info = { GEN12_FEATURES, PLATFORM(INTEL_ALDERLAKE_P), - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), .__runtime.ppgtt_size = 48, .dma_mask_size = 39, @@ -746,7 +746,7 @@ static const struct intel_device_info xehpsdv_info = { PLATFORM(INTEL_XEHPSDV), .has_64k_pages = 1, .has_media_ratio_mode = 1, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VECS1) | BIT(VECS2) | BIT(VECS3) | BIT(VCS0) | BIT(VCS1) | BIT(VCS2) | BIT(VCS3) | @@ -766,7 +766,7 @@ static const struct intel_device_info xehpsdv_info = { .has_guc_deprivilege = 1, \ .has_heci_pxp = 1, \ .has_media_ratio_mode = 1, \ - .__runtime.platform_engine_mask = \ + .platform_engine_mask = \ BIT(RCS0) | BIT(BCS0) | \ BIT(VECS0) | BIT(VECS1) | \ BIT(VCS0) | BIT(VCS2) | \ @@ -801,7 +801,7 @@ static const struct intel_device_info pvc_info = { PLATFORM(INTEL_PONTEVECCHIO), .has_flat_ccs = 0, .max_pat_index = 7, - .__runtime.platform_engine_mask = + .platform_engine_mask = BIT(BCS0) | BIT(VCS0) | BIT(CCS0) | BIT(CCS1) | BIT(CCS2) | BIT(CCS3), @@ -838,8 +838,8 @@ static const struct intel_device_info mtl_info = { .has_snoop = 1, .max_pat_index = 4, .has_pxp = 1, - .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_LMEM, - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(CCS0), + .memory_regions = REGION_SMEM | REGION_STOLEN_LMEM, + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(CCS0), .require_force_probe = 1, MTL_CACHELEVEL, }; diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c index 9c0f02faa0d7..9e7e33fbca6e 100644 --- a/drivers/gpu/drm/i915/intel_device_info.c +++ b/drivers/gpu/drm/i915/intel_device_info.c @@ -126,7 +126,7 @@ void intel_device_info_print(const struct intel_device_info *info, drm_printf(p, "base die stepping: %s\n", intel_step_name(runtime->step.basedie_step)); drm_printf(p, "gt: %d\n", info->gt); - drm_printf(p, "memory-regions: 0x%x\n", runtime->memory_regions); + drm_printf(p, "memory-regions: 0x%x\n", info->memory_regions); drm_printf(p, "page-sizes: 0x%x\n", runtime->page_sizes); drm_printf(p, "platform: %s\n", intel_platform_name(info->platform)); drm_printf(p, "ppgtt-size: %d\n", runtime->ppgtt_size); diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h index 069291b3bd37..81bfd64717cf 100644 --- a/drivers/gpu/drm/i915/intel_device_info.h +++ b/drivers/gpu/drm/i915/intel_device_info.h @@ -212,8 +212,6 @@ struct intel_runtime_info { u16 device_id; - intel_engine_mask_t platform_engine_mask; /* Engines supported by the HW */ - u32 rawclk_freq; struct intel_step_info step; @@ -223,8 +221,6 @@ struct intel_runtime_info { enum intel_ppgtt_type ppgtt_type; unsigned int ppgtt_size; /* log2, e.g. 31/32/48 bits */ - u32 memory_regions; /* regions supported by the HW */ - bool has_pooled_eu; }; @@ -237,6 +233,9 @@ struct intel_device_info { u8 gt; /* GT number, 0 if undefined */ + intel_engine_mask_t platform_engine_mask; /* Engines supported by the HW */ + u32 memory_regions; /* regions supported by the HW */ + #define DEFINE_FLAG(name) u8 name:1 DEV_INFO_FOR_EACH_FLAG(DEFINE_FLAG); #undef DEFINE_FLAG diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c index 4de6a4e8280d..12aa7fbb0748 100644 --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c @@ -123,8 +123,8 @@ static const struct intel_device_info mock_info = { .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | I915_GTT_PAGE_SIZE_64K | I915_GTT_PAGE_SIZE_2M), - .__runtime.memory_regions = REGION_SMEM, - .__runtime.platform_engine_mask = BIT(0), + .memory_regions = REGION_SMEM, + .platform_engine_mask = BIT(0), /* simply use legacy cache level for mock device */ .max_pat_index = 3, -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info Jani Nikula @ 2023-06-29 11:06 ` Tvrtko Ursulin 0 siblings, 0 replies; 19+ messages in thread From: Tvrtko Ursulin @ 2023-06-29 11:06 UTC (permalink / raw) To: Jani Nikula, intel-gfx On 27/06/2023 16:13, Jani Nikula wrote: > The mock device creation was the only place that needed to modify > platform_engine_mask and memory_regions runtime. With mock_info in place > for mock devices, we can move them to device info. > > Signed-off-by: Jani Nikula <jani.nikula@intel.com> > --- > drivers/gpu/drm/i915/gt/intel_gt.c | 2 +- > drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c | 2 +- > drivers/gpu/drm/i915/gt/uc/intel_huc.c | 2 +- > drivers/gpu/drm/i915/i915_drv.h | 2 +- > drivers/gpu/drm/i915/i915_pci.c | 64 +++++++++---------- > drivers/gpu/drm/i915/intel_device_info.c | 2 +- > drivers/gpu/drm/i915/intel_device_info.h | 7 +- > .../gpu/drm/i915/selftests/mock_gem_device.c | 4 +- > 8 files changed, 42 insertions(+), 43 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gt/intel_gt.c b/drivers/gpu/drm/i915/gt/intel_gt.c > index 7a008e829d4d..33a61046ba58 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gt.c > +++ b/drivers/gpu/drm/i915/gt/intel_gt.c > @@ -904,7 +904,7 @@ int intel_gt_probe_all(struct drm_i915_private *i915) > */ > gt->i915 = i915; > gt->name = "Primary GT"; > - gt->info.engine_mask = RUNTIME_INFO(i915)->platform_engine_mask; > + gt->info.engine_mask = INTEL_INFO(i915)->platform_engine_mask; > > gt_dbg(gt, "Setting up %s\n", gt->name); > ret = intel_gt_tile_setup(gt, phys_addr); > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c > index 75a3a0790ef3..034b53a71541 100644 > --- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c > +++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c > @@ -99,7 +99,7 @@ static bool gsc_engine_supported(struct intel_gt *gt) > GEM_BUG_ON(!gt_is_root(gt) && !gt->info.engine_mask); > > if (gt_is_root(gt)) > - mask = RUNTIME_INFO(gt->i915)->platform_engine_mask; > + mask = INTEL_INFO(gt->i915)->platform_engine_mask; > else > mask = gt->info.engine_mask; > > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_huc.c b/drivers/gpu/drm/i915/gt/uc/intel_huc.c > index 23aa1b0e0166..ba9e07fc2b57 100644 > --- a/drivers/gpu/drm/i915/gt/uc/intel_huc.c > +++ b/drivers/gpu/drm/i915/gt/uc/intel_huc.c > @@ -267,7 +267,7 @@ static bool vcs_supported(struct intel_gt *gt) > GEM_BUG_ON(!gt_is_root(gt) && !gt->info.engine_mask); > > if (gt_is_root(gt)) > - mask = RUNTIME_INFO(gt->i915)->platform_engine_mask; > + mask = INTEL_INFO(gt->i915)->platform_engine_mask; > else > mask = gt->info.engine_mask; > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index b4cf6f0f636d..078720a52322 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -839,7 +839,7 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, > */ > #define HAS_64K_PAGES(i915) (INTEL_INFO(i915)->has_64k_pages) > > -#define HAS_REGION(i915, i) (RUNTIME_INFO(i915)->memory_regions & (i)) > +#define HAS_REGION(i915, i) (INTEL_INFO(i915)->memory_regions & (i)) > #define HAS_LMEM(i915) HAS_REGION(i915, REGION_LMEM) > > #define HAS_EXTRA_GT_LIST(i915) (INTEL_INFO(i915)->extra_gt_list) > diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c > index 3d7a5db9833b..dea3609fc496 100644 > --- a/drivers/gpu/drm/i915/i915_pci.c > +++ b/drivers/gpu/drm/i915/i915_pci.c > @@ -84,7 +84,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); > .__runtime.page_sizes = I915_GTT_PAGE_SIZE_4K > > #define GEN_DEFAULT_REGIONS \ > - .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_SMEM > + .memory_regions = REGION_SMEM | REGION_STOLEN_SMEM > > #define I830_FEATURES \ > GEN(2), \ > @@ -93,7 +93,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); > .has_3d_pipeline = 1, \ > .hws_needs_physical = 1, \ > .unfenced_needs_alignment = 1, \ > - .__runtime.platform_engine_mask = BIT(RCS0), \ > + .platform_engine_mask = BIT(RCS0), \ > .has_snoop = true, \ > .has_coherent_ggtt = false, \ > .dma_mask_size = 32, \ > @@ -108,7 +108,7 @@ __diag_ignore_all("-Woverride-init", "Allow overriding inherited members"); > .gpu_reset_clobbers_display = true, \ > .hws_needs_physical = 1, \ > .unfenced_needs_alignment = 1, \ > - .__runtime.platform_engine_mask = BIT(RCS0), \ > + .platform_engine_mask = BIT(RCS0), \ > .has_snoop = true, \ > .has_coherent_ggtt = false, \ > .dma_mask_size = 32, \ > @@ -140,7 +140,7 @@ static const struct intel_device_info i865g_info = { > #define GEN3_FEATURES \ > GEN(3), \ > .gpu_reset_clobbers_display = true, \ > - .__runtime.platform_engine_mask = BIT(RCS0), \ > + .platform_engine_mask = BIT(RCS0), \ > .has_3d_pipeline = 1, \ > .has_snoop = true, \ > .has_coherent_ggtt = true, \ > @@ -203,7 +203,7 @@ static const struct intel_device_info pnv_m_info = { > #define GEN4_FEATURES \ > GEN(4), \ > .gpu_reset_clobbers_display = true, \ > - .__runtime.platform_engine_mask = BIT(RCS0), \ > + .platform_engine_mask = BIT(RCS0), \ > .has_3d_pipeline = 1, \ > .has_snoop = true, \ > .has_coherent_ggtt = true, \ > @@ -231,7 +231,7 @@ static const struct intel_device_info i965gm_info = { > static const struct intel_device_info g45_info = { > GEN4_FEATURES, > PLATFORM(INTEL_G45), > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), > .gpu_reset_clobbers_display = false, > }; > > @@ -239,13 +239,13 @@ static const struct intel_device_info gm45_info = { > GEN4_FEATURES, > PLATFORM(INTEL_GM45), > .is_mobile = 1, > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), > .gpu_reset_clobbers_display = false, > }; > > #define GEN5_FEATURES \ > GEN(5), \ > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0), \ > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0), \ > .has_3d_pipeline = 1, \ > .has_snoop = true, \ > .has_coherent_ggtt = true, \ > @@ -271,7 +271,7 @@ static const struct intel_device_info ilk_m_info = { > > #define GEN6_FEATURES \ > GEN(6), \ > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ > .has_3d_pipeline = 1, \ > .has_coherent_ggtt = true, \ > .has_llc = 1, \ > @@ -319,7 +319,7 @@ static const struct intel_device_info snb_m_gt2_info = { > > #define GEN7_FEATURES \ > GEN(7), \ > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \ > .has_3d_pipeline = 1, \ > .has_coherent_ggtt = true, \ > .has_llc = 1, \ > @@ -387,7 +387,7 @@ static const struct intel_device_info vlv_info = { > .__runtime.ppgtt_size = 31, > .has_snoop = true, > .has_coherent_ggtt = false, > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), > GEN_DEFAULT_PAGE_SIZES, > GEN_DEFAULT_REGIONS, > LEGACY_CACHELEVEL, > @@ -395,7 +395,7 @@ static const struct intel_device_info vlv_info = { > > #define G75_FEATURES \ > GEN7_FEATURES, \ > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ > .has_rc6p = 0 /* RC6p removed-by HSW */, \ > .has_runtime_pm = 1 > > @@ -453,7 +453,7 @@ static const struct intel_device_info bdw_rsvd_info = { > static const struct intel_device_info bdw_gt3_info = { > BDW_PLATFORM, > .gt = 3, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), > }; > > @@ -461,7 +461,7 @@ static const struct intel_device_info chv_info = { > PLATFORM(INTEL_CHERRYVIEW), > GEN(8), > .is_lp = 1, > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), > .has_64bit_reloc = 1, > .has_runtime_pm = 1, > .has_rc6 = 1, > @@ -505,7 +505,7 @@ static const struct intel_device_info skl_gt2_info = { > > #define SKL_GT3_PLUS_PLATFORM \ > SKL_PLATFORM, \ > - .__runtime.platform_engine_mask = \ > + .platform_engine_mask = \ > BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1) > > > @@ -522,7 +522,7 @@ static const struct intel_device_info skl_gt4_info = { > #define GEN9_LP_FEATURES \ > GEN(9), \ > .is_lp = 1, \ > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ > + .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \ > .has_3d_pipeline = 1, \ > .has_64bit_reloc = 1, \ > .has_runtime_pm = 1, \ > @@ -568,7 +568,7 @@ static const struct intel_device_info kbl_gt2_info = { > static const struct intel_device_info kbl_gt3_info = { > KBL_PLATFORM, > .gt = 3, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), > }; > > @@ -589,7 +589,7 @@ static const struct intel_device_info cfl_gt2_info = { > static const struct intel_device_info cfl_gt3_info = { > CFL_PLATFORM, > .gt = 3, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1), > }; > > @@ -622,21 +622,21 @@ static const struct intel_device_info cml_gt2_info = { > static const struct intel_device_info icl_info = { > GEN11_FEATURES, > PLATFORM(INTEL_ICELAKE), > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), > }; > > static const struct intel_device_info ehl_info = { > GEN11_FEATURES, > PLATFORM(INTEL_ELKHARTLAKE), > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), > + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), > .__runtime.ppgtt_size = 36, > }; > > static const struct intel_device_info jsl_info = { > GEN11_FEATURES, > PLATFORM(INTEL_JASPERLAKE), > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), > + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), > .__runtime.ppgtt_size = 36, > }; > > @@ -651,19 +651,19 @@ static const struct intel_device_info jsl_info = { > static const struct intel_device_info tgl_info = { > GEN12_FEATURES, > PLATFORM(INTEL_TIGERLAKE), > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), > }; > > static const struct intel_device_info rkl_info = { > GEN12_FEATURES, > PLATFORM(INTEL_ROCKETLAKE), > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0), > }; > > #define DGFX_FEATURES \ > - .__runtime.memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \ > + .memory_regions = REGION_SMEM | REGION_LMEM | REGION_STOLEN_LMEM, \ > .has_llc = 0, \ > .has_pxp = 0, \ > .has_snoop = 1, \ > @@ -676,7 +676,7 @@ static const struct intel_device_info dg1_info = { > .__runtime.graphics.ip.rel = 10, > PLATFORM(INTEL_DG1), > .require_force_probe = 1, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | > BIT(VCS0) | BIT(VCS2), > /* Wa_16011227922 */ > @@ -686,7 +686,7 @@ static const struct intel_device_info dg1_info = { > static const struct intel_device_info adl_s_info = { > GEN12_FEATURES, > PLATFORM(INTEL_ALDERLAKE_S), > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), > .dma_mask_size = 39, > }; > @@ -694,7 +694,7 @@ static const struct intel_device_info adl_s_info = { > static const struct intel_device_info adl_p_info = { > GEN12_FEATURES, > PLATFORM(INTEL_ALDERLAKE_P), > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2), > .__runtime.ppgtt_size = 48, > .dma_mask_size = 39, > @@ -746,7 +746,7 @@ static const struct intel_device_info xehpsdv_info = { > PLATFORM(INTEL_XEHPSDV), > .has_64k_pages = 1, > .has_media_ratio_mode = 1, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(RCS0) | BIT(BCS0) | > BIT(VECS0) | BIT(VECS1) | BIT(VECS2) | BIT(VECS3) | > BIT(VCS0) | BIT(VCS1) | BIT(VCS2) | BIT(VCS3) | > @@ -766,7 +766,7 @@ static const struct intel_device_info xehpsdv_info = { > .has_guc_deprivilege = 1, \ > .has_heci_pxp = 1, \ > .has_media_ratio_mode = 1, \ > - .__runtime.platform_engine_mask = \ > + .platform_engine_mask = \ > BIT(RCS0) | BIT(BCS0) | \ > BIT(VECS0) | BIT(VECS1) | \ > BIT(VCS0) | BIT(VCS2) | \ > @@ -801,7 +801,7 @@ static const struct intel_device_info pvc_info = { > PLATFORM(INTEL_PONTEVECCHIO), > .has_flat_ccs = 0, > .max_pat_index = 7, > - .__runtime.platform_engine_mask = > + .platform_engine_mask = > BIT(BCS0) | > BIT(VCS0) | > BIT(CCS0) | BIT(CCS1) | BIT(CCS2) | BIT(CCS3), > @@ -838,8 +838,8 @@ static const struct intel_device_info mtl_info = { > .has_snoop = 1, > .max_pat_index = 4, > .has_pxp = 1, > - .__runtime.memory_regions = REGION_SMEM | REGION_STOLEN_LMEM, > - .__runtime.platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(CCS0), > + .memory_regions = REGION_SMEM | REGION_STOLEN_LMEM, > + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(CCS0), > .require_force_probe = 1, > MTL_CACHELEVEL, > }; > diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c > index 9c0f02faa0d7..9e7e33fbca6e 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.c > +++ b/drivers/gpu/drm/i915/intel_device_info.c > @@ -126,7 +126,7 @@ void intel_device_info_print(const struct intel_device_info *info, > drm_printf(p, "base die stepping: %s\n", intel_step_name(runtime->step.basedie_step)); > > drm_printf(p, "gt: %d\n", info->gt); > - drm_printf(p, "memory-regions: 0x%x\n", runtime->memory_regions); > + drm_printf(p, "memory-regions: 0x%x\n", info->memory_regions); > drm_printf(p, "page-sizes: 0x%x\n", runtime->page_sizes); > drm_printf(p, "platform: %s\n", intel_platform_name(info->platform)); > drm_printf(p, "ppgtt-size: %d\n", runtime->ppgtt_size); > diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h > index 069291b3bd37..81bfd64717cf 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.h > +++ b/drivers/gpu/drm/i915/intel_device_info.h > @@ -212,8 +212,6 @@ struct intel_runtime_info { > > u16 device_id; > > - intel_engine_mask_t platform_engine_mask; /* Engines supported by the HW */ > - Passing observation - I think a packing hole sneaked in here when we increased intel_engine_mask_t to u32. > u32 rawclk_freq; > > struct intel_step_info step; > @@ -223,8 +221,6 @@ struct intel_runtime_info { > enum intel_ppgtt_type ppgtt_type; > unsigned int ppgtt_size; /* log2, e.g. 31/32/48 bits */ > > - u32 memory_regions; /* regions supported by the HW */ > - > bool has_pooled_eu; > }; > > @@ -237,6 +233,9 @@ struct intel_device_info { > > u8 gt; /* GT number, 0 if undefined */ > > + intel_engine_mask_t platform_engine_mask; /* Engines supported by the HW */ > + u32 memory_regions; /* regions supported by the HW */ > + > #define DEFINE_FLAG(name) u8 name:1 > DEV_INFO_FOR_EACH_FLAG(DEFINE_FLAG); > #undef DEFINE_FLAG > diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > index 4de6a4e8280d..12aa7fbb0748 100644 > --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c > +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c > @@ -123,8 +123,8 @@ static const struct intel_device_info mock_info = { > .__runtime.page_sizes = (I915_GTT_PAGE_SIZE_4K | > I915_GTT_PAGE_SIZE_64K | > I915_GTT_PAGE_SIZE_2M), > - .__runtime.memory_regions = REGION_SMEM, > - .__runtime.platform_engine_mask = BIT(0), > + .memory_regions = REGION_SMEM, > + .platform_engine_mask = BIT(0), > > /* simply use legacy cache level for mock device */ > .max_pat_index = 3, I saw no mistakes. Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] [PATCH v2 3/6] drm/i915: separate display info printing from the rest 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info Jani Nikula @ 2023-06-27 15:14 ` Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 4/6] drm/i915: fix display info usage Jani Nikula ` (6 subsequent siblings) 9 siblings, 0 replies; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:14 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula, Lucas De Marchi, Matt Roper Add new function intel_display_device_info_print() and print the display device info there instead of intel_device_info_print(). This also fixes the display runtime info printing to use the actual runtime info instead of the static defaults. Cc: Matt Roper <matthew.d.roper@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- .../drm/i915/display/intel_display_device.c | 21 +++++++++++++++++++ .../drm/i915/display/intel_display_device.h | 5 +++++ drivers/gpu/drm/i915/i915_debugfs.c | 1 + drivers/gpu/drm/i915/i915_driver.c | 2 ++ drivers/gpu/drm/i915/i915_gpu_error.c | 6 ++++++ drivers/gpu/drm/i915/i915_gpu_error.h | 3 +++ drivers/gpu/drm/i915/intel_device_info.c | 20 ------------------ 7 files changed, 38 insertions(+), 20 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c b/drivers/gpu/drm/i915/display/intel_display_device.c index f87470da25d0..e4afa7334c82 100644 --- a/drivers/gpu/drm/i915/display/intel_display_device.c +++ b/drivers/gpu/drm/i915/display/intel_display_device.c @@ -981,3 +981,24 @@ void intel_display_device_info_runtime_init(struct drm_i915_private *i915) display_fused_off: memset(display_runtime, 0, sizeof(*display_runtime)); } + +void intel_display_device_info_print(const struct intel_display_device_info *info, + const struct intel_display_runtime_info *runtime, + struct drm_printer *p) +{ + if (runtime->ip.rel) + drm_printf(p, "display version: %u.%02u\n", + runtime->ip.ver, + runtime->ip.rel); + else + drm_printf(p, "display version: %u\n", + runtime->ip.ver); + +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->name)) + DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG); +#undef PRINT_FLAG + + drm_printf(p, "has_hdcp: %s\n", str_yes_no(runtime->has_hdcp)); + drm_printf(p, "has_dmc: %s\n", str_yes_no(runtime->has_dmc)); + drm_printf(p, "has_dsc: %s\n", str_yes_no(runtime->has_dsc)); +} diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h index 5b8a46114439..3324bd453ca7 100644 --- a/drivers/gpu/drm/i915/display/intel_display_device.h +++ b/drivers/gpu/drm/i915/display/intel_display_device.h @@ -11,6 +11,7 @@ #include "intel_display_limits.h" struct drm_i915_private; +struct drm_printer; #define DEV_INFO_DISPLAY_FOR_EACH_FLAG(func) \ /* Keep in alphabetical order */ \ @@ -127,4 +128,8 @@ intel_display_device_probe(struct drm_i915_private *i915, bool has_gmdid, u16 *ver, u16 *rel, u16 *step); void intel_display_device_info_runtime_init(struct drm_i915_private *i915); +void intel_display_device_info_print(const struct intel_display_device_info *info, + const struct intel_display_runtime_info *runtime, + struct drm_printer *p); + #endif diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 76ccd4e03e31..4de44cf1026d 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -67,6 +67,7 @@ static int i915_capabilities(struct seq_file *m, void *data) seq_printf(m, "pch: %d\n", INTEL_PCH_TYPE(i915)); intel_device_info_print(INTEL_INFO(i915), RUNTIME_INFO(i915), &p); + intel_display_device_info_print(DISPLAY_INFO(i915), DISPLAY_RUNTIME_INFO(i915), &p); i915_print_iommu_status(i915, &p); intel_gt_info_print(&to_gt(i915)->info, &p); intel_driver_caps_print(&i915->caps, &p); diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c index 222d0a1f3b55..294b022de22b 100644 --- a/drivers/gpu/drm/i915/i915_driver.c +++ b/drivers/gpu/drm/i915/i915_driver.c @@ -711,6 +711,8 @@ static void i915_welcome_messages(struct drm_i915_private *dev_priv) intel_device_info_print(INTEL_INFO(dev_priv), RUNTIME_INFO(dev_priv), &p); + intel_display_device_info_print(DISPLAY_INFO(dev_priv), + DISPLAY_RUNTIME_INFO(dev_priv), &p); i915_print_iommu_status(dev_priv, &p); for_each_gt(gt, dev_priv, i) intel_gt_info_print(>->info, &p); diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c index 4749f99e6320..92ca81f9feab 100644 --- a/drivers/gpu/drm/i915/i915_gpu_error.c +++ b/drivers/gpu/drm/i915/i915_gpu_error.c @@ -649,6 +649,8 @@ static void err_print_capabilities(struct drm_i915_error_state_buf *m, struct drm_printer p = i915_error_printer(m); intel_device_info_print(&error->device_info, &error->runtime_info, &p); + intel_display_device_info_print(&error->display_device_info, + &error->display_runtime_info, &p); intel_driver_caps_print(&error->driver_caps, &p); } @@ -1983,6 +1985,10 @@ static void capture_gen(struct i915_gpu_coredump *error) memcpy(&error->runtime_info, RUNTIME_INFO(i915), sizeof(error->runtime_info)); + memcpy(&error->display_device_info, DISPLAY_INFO(i915), + sizeof(error->display_device_info)); + memcpy(&error->display_runtime_info, DISPLAY_RUNTIME_INFO(i915), + sizeof(error->display_runtime_info)); error->driver_caps = i915->caps; } diff --git a/drivers/gpu/drm/i915/i915_gpu_error.h b/drivers/gpu/drm/i915/i915_gpu_error.h index a78c061ce26f..9f5971f5e980 100644 --- a/drivers/gpu/drm/i915/i915_gpu_error.h +++ b/drivers/gpu/drm/i915/i915_gpu_error.h @@ -14,6 +14,7 @@ #include <drm/drm_mm.h> +#include "display/intel_display_device.h" #include "gt/intel_engine.h" #include "gt/intel_gt_types.h" #include "gt/uc/intel_uc_fw.h" @@ -209,6 +210,8 @@ struct i915_gpu_coredump { struct intel_device_info device_info; struct intel_runtime_info runtime_info; + struct intel_display_device_info display_device_info; + struct intel_display_runtime_info display_runtime_info; struct intel_driver_caps driver_caps; struct i915_params params; diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c index 9e7e33fbca6e..b93ef5fc26f1 100644 --- a/drivers/gpu/drm/i915/intel_device_info.c +++ b/drivers/gpu/drm/i915/intel_device_info.c @@ -93,9 +93,6 @@ void intel_device_info_print(const struct intel_device_info *info, const struct intel_runtime_info *runtime, struct drm_printer *p) { - const struct intel_display_runtime_info *display_runtime = - &info->display->__runtime_defaults; - if (runtime->graphics.ip.rel) drm_printf(p, "graphics version: %u.%02u\n", runtime->graphics.ip.ver, @@ -112,14 +109,6 @@ void intel_device_info_print(const struct intel_device_info *info, drm_printf(p, "media version: %u\n", runtime->media.ip.ver); - if (display_runtime->ip.rel) - drm_printf(p, "display version: %u.%02u\n", - display_runtime->ip.ver, - display_runtime->ip.rel); - else - drm_printf(p, "display version: %u\n", - display_runtime->ip.ver); - drm_printf(p, "graphics stepping: %s\n", intel_step_name(runtime->step.graphics_step)); drm_printf(p, "media stepping: %s\n", intel_step_name(runtime->step.media_step)); drm_printf(p, "display stepping: %s\n", intel_step_name(runtime->step.display_step)); @@ -138,15 +127,6 @@ void intel_device_info_print(const struct intel_device_info *info, #undef PRINT_FLAG drm_printf(p, "has_pooled_eu: %s\n", str_yes_no(runtime->has_pooled_eu)); - -#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->display->name)) - DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG); -#undef PRINT_FLAG - - drm_printf(p, "has_hdcp: %s\n", str_yes_no(display_runtime->has_hdcp)); - drm_printf(p, "has_dmc: %s\n", str_yes_no(display_runtime->has_dmc)); - drm_printf(p, "has_dsc: %s\n", str_yes_no(display_runtime->has_dsc)); - drm_printf(p, "rawclk rate: %u kHz\n", runtime->rawclk_freq); } -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [Intel-gfx] [PATCH v2 4/6] drm/i915: fix display info usage 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (2 preceding siblings ...) 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 3/6] drm/i915: separate display info printing from the rest Jani Nikula @ 2023-06-27 15:14 ` Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 5/6] drm/i915: move display device and runtime info to struct intel_display Jani Nikula ` (5 subsequent siblings) 9 siblings, 0 replies; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:14 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula, Lucas De Marchi, Matt Roper Prefer DISPLAY_INFO() over INTEL_INFO()->display. Cc: Matt Roper <matthew.d.roper@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/i915/display/intel_display.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h index 53ca0e4e2357..49ac8473b988 100644 --- a/drivers/gpu/drm/i915/display/intel_display.h +++ b/drivers/gpu/drm/i915/display/intel_display.h @@ -113,7 +113,7 @@ enum i9xx_plane_id { #define for_each_dbuf_slice(__dev_priv, __slice) \ for ((__slice) = DBUF_S1; (__slice) < I915_MAX_DBUF_SLICES; (__slice)++) \ - for_each_if(INTEL_INFO(__dev_priv)->display->dbuf.slice_mask & BIT(__slice)) + for_each_if(DISPLAY_INFO(__dev_priv)->dbuf.slice_mask & BIT(__slice)) #define for_each_dbuf_slice_in_mask(__dev_priv, __slice, __mask) \ for_each_dbuf_slice((__dev_priv), (__slice)) \ -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [Intel-gfx] [PATCH v2 5/6] drm/i915: move display device and runtime info to struct intel_display 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (3 preceding siblings ...) 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 4/6] drm/i915: fix display info usage Jani Nikula @ 2023-06-27 15:14 ` Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata Jani Nikula ` (4 subsequent siblings) 9 siblings, 0 replies; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:14 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula, Lucas De Marchi, Matt Roper Continue moving all things display further into display files and structures. v2: Sort includes (Matt) Cc: Matt Roper <matthew.d.roper@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/i915/display/intel_display_core.h | 9 +++++++++ drivers/gpu/drm/i915/i915_drv.h | 5 ++--- drivers/gpu/drm/i915/intel_device_info.c | 7 +++---- drivers/gpu/drm/i915/intel_device_info.h | 4 ---- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h index 8d2243c71dd8..c37d2c4bbf76 100644 --- a/drivers/gpu/drm/i915/display/intel_display_core.h +++ b/drivers/gpu/drm/i915/display/intel_display_core.h @@ -17,6 +17,7 @@ #include <drm/drm_modeset_lock.h> #include "intel_cdclk.h" +#include "intel_display_device.h" #include "intel_display_limits.h" #include "intel_display_power.h" #include "intel_dpll_mgr.h" @@ -429,6 +430,14 @@ struct intel_display { u32 state; } hti; + struct { + /* Access with DISPLAY_INFO() */ + const struct intel_display_device_info *__device_info; + + /* Access with DISPLAY_RUNTIME_INFO() */ + struct intel_display_runtime_info __runtime_info; + } info; + struct { bool false_color; } ips; diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 078720a52322..8947d1201298 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -205,7 +205,6 @@ struct drm_i915_private { const struct intel_device_info __info; /* Use INTEL_INFO() to access. */ struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */ - struct intel_display_runtime_info __display_runtime; /* Access with DISPLAY_RUNTIME_INFO() */ struct intel_driver_caps caps; struct i915_dsm dsm; @@ -417,9 +416,9 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915) (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) #define INTEL_INFO(i915) (&(i915)->__info) -#define DISPLAY_INFO(i915) (INTEL_INFO(i915)->display) #define RUNTIME_INFO(i915) (&(i915)->__runtime) -#define DISPLAY_RUNTIME_INFO(i915) (&(i915)->__display_runtime) +#define DISPLAY_INFO(i915) ((i915)->display.info.__device_info) +#define DISPLAY_RUNTIME_INFO(i915) (&(i915)->display.info.__runtime_info) #define DRIVER_CAPS(i915) (&(i915)->caps) #define INTEL_DEVID(i915) (RUNTIME_INFO(i915)->device_id) diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c index b93ef5fc26f1..0740922cd71f 100644 --- a/drivers/gpu/drm/i915/intel_device_info.c +++ b/drivers/gpu/drm/i915/intel_device_info.c @@ -391,7 +391,6 @@ static const struct intel_display_device_info no_display = {}; */ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv) { - struct intel_device_info *info = mkwrite_device_info(dev_priv); struct intel_runtime_info *runtime = RUNTIME_INFO(dev_priv); if (HAS_DISPLAY(dev_priv)) @@ -401,7 +400,7 @@ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv) if (!HAS_DISPLAY(dev_priv)) { dev_priv->drm.driver_features &= ~(DRIVER_MODESET | DRIVER_ATOMIC); - info->display = &no_display; + dev_priv->display.info.__device_info = &no_display; } /* Disable nuclear pageflip by default on pre-g4x */ @@ -444,8 +443,8 @@ void intel_device_info_driver_create(struct drm_i915_private *i915, memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime)); /* Probe display support */ - info->display = intel_display_device_probe(i915, info->has_gmd_id, - &ver, &rel, &step); + i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id, + &ver, &rel, &step); memcpy(DISPLAY_RUNTIME_INFO(i915), &DISPLAY_INFO(i915)->__runtime_defaults, sizeof(*DISPLAY_RUNTIME_INFO(i915))); diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h index 81bfd64717cf..dbfe6443457b 100644 --- a/drivers/gpu/drm/i915/intel_device_info.h +++ b/drivers/gpu/drm/i915/intel_device_info.h @@ -29,8 +29,6 @@ #include "intel_step.h" -#include "display/intel_display_device.h" - #include "gt/intel_engine_types.h" #include "gt/intel_context_types.h" #include "gt/intel_sseu.h" @@ -240,8 +238,6 @@ struct intel_device_info { DEV_INFO_FOR_EACH_FLAG(DEFINE_FLAG); #undef DEFINE_FLAG - const struct intel_display_device_info *display; - /* * Initial runtime info. Do not access outside of i915_driver_create(). */ -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (4 preceding siblings ...) 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 5/6] drm/i915: move display device and runtime info to struct intel_display Jani Nikula @ 2023-06-27 15:14 ` Jani Nikula 2023-06-29 11:10 ` Tvrtko Ursulin 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: further device info fixes and cleanups Patchwork ` (3 subsequent siblings) 9 siblings, 1 reply; 19+ messages in thread From: Jani Nikula @ 2023-06-27 15:14 UTC (permalink / raw) To: intel-gfx; +Cc: jani.nikula, Lucas De Marchi, Matt Roper Finally we can get rid of the pseudo-const write-once device info, and convert it into a const pointer to device info in rodata. Cc: Matt Roper <matthew.d.roper@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- drivers/gpu/drm/i915/i915_drv.h | 4 ++-- drivers/gpu/drm/i915/intel_device_info.c | 17 ++++------------- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 8947d1201298..682ef2b5c7d5 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -203,7 +203,7 @@ struct drm_i915_private { /* i915 device parameters */ struct i915_params params; - const struct intel_device_info __info; /* Use INTEL_INFO() to access. */ + const struct intel_device_info *__info; /* Use INTEL_INFO() to access. */ struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */ struct intel_driver_caps caps; @@ -415,7 +415,7 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915) (engine__) && (engine__)->uabi_class == (class__); \ (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) -#define INTEL_INFO(i915) (&(i915)->__info) +#define INTEL_INFO(i915) ((i915)->__info) #define RUNTIME_INFO(i915) (&(i915)->__runtime) #define DISPLAY_INFO(i915) ((i915)->display.info.__device_info) #define DISPLAY_RUNTIME_INFO(i915) (&(i915)->display.info.__runtime_info) diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c index 0740922cd71f..ea0ec6174ce5 100644 --- a/drivers/gpu/drm/i915/intel_device_info.c +++ b/drivers/gpu/drm/i915/intel_device_info.c @@ -364,13 +364,6 @@ void intel_device_info_runtime_init_early(struct drm_i915_private *i915) intel_device_info_subplatform_init(i915); } -/* FIXME: Remove this, and make device info a const pointer to rodata. */ -static struct intel_device_info * -mkwrite_device_info(struct drm_i915_private *i915) -{ - return (struct intel_device_info *)INTEL_INFO(i915); -} - static const struct intel_display_device_info no_display = {}; /** @@ -430,26 +423,24 @@ void intel_device_info_driver_create(struct drm_i915_private *i915, u16 device_id, const struct intel_device_info *match_info) { - struct intel_device_info *info; struct intel_runtime_info *runtime; u16 ver, rel, step; - /* Setup the write-once "constant" device info */ - info = mkwrite_device_info(i915); - memcpy(info, match_info, sizeof(*info)); + /* Setup INTEL_INFO() */ + i915->__info = match_info; /* Initialize initial runtime info from static const data and pdev. */ runtime = RUNTIME_INFO(i915); memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime)); /* Probe display support */ - i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id, + i915->display.info.__device_info = intel_display_device_probe(i915, HAS_GMD_ID(i915), &ver, &rel, &step); memcpy(DISPLAY_RUNTIME_INFO(i915), &DISPLAY_INFO(i915)->__runtime_defaults, sizeof(*DISPLAY_RUNTIME_INFO(i915))); - if (info->has_gmd_id) { + if (HAS_GMD_ID(i915)) { DISPLAY_RUNTIME_INFO(i915)->ip.ver = ver; DISPLAY_RUNTIME_INFO(i915)->ip.rel = rel; DISPLAY_RUNTIME_INFO(i915)->ip.step = step; -- 2.39.2 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata Jani Nikula @ 2023-06-29 11:10 ` Tvrtko Ursulin 2023-06-29 11:29 ` Jani Nikula 0 siblings, 1 reply; 19+ messages in thread From: Tvrtko Ursulin @ 2023-06-29 11:10 UTC (permalink / raw) To: Jani Nikula, intel-gfx; +Cc: Matt Roper, Lucas De Marchi On 27/06/2023 16:14, Jani Nikula wrote: > Finally we can get rid of the pseudo-const write-once device info, and > convert it into a const pointer to device info in rodata. > > Cc: Matt Roper <matthew.d.roper@intel.com> > Cc: Lucas De Marchi <lucas.demarchi@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> > --- > drivers/gpu/drm/i915/i915_drv.h | 4 ++-- > drivers/gpu/drm/i915/intel_device_info.c | 17 ++++------------- > 2 files changed, 6 insertions(+), 15 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 8947d1201298..682ef2b5c7d5 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -203,7 +203,7 @@ struct drm_i915_private { > /* i915 device parameters */ > struct i915_params params; > > - const struct intel_device_info __info; /* Use INTEL_INFO() to access. */ > + const struct intel_device_info *__info; /* Use INTEL_INFO() to access. */ > struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */ > struct intel_driver_caps caps; > > @@ -415,7 +415,7 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915) > (engine__) && (engine__)->uabi_class == (class__); \ > (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) > > -#define INTEL_INFO(i915) (&(i915)->__info) > +#define INTEL_INFO(i915) ((i915)->__info) > #define RUNTIME_INFO(i915) (&(i915)->__runtime) > #define DISPLAY_INFO(i915) ((i915)->display.info.__device_info) > #define DISPLAY_RUNTIME_INFO(i915) (&(i915)->display.info.__runtime_info) > diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c > index 0740922cd71f..ea0ec6174ce5 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.c > +++ b/drivers/gpu/drm/i915/intel_device_info.c > @@ -364,13 +364,6 @@ void intel_device_info_runtime_init_early(struct drm_i915_private *i915) > intel_device_info_subplatform_init(i915); > } > > -/* FIXME: Remove this, and make device info a const pointer to rodata. */ > -static struct intel_device_info * > -mkwrite_device_info(struct drm_i915_private *i915) > -{ > - return (struct intel_device_info *)INTEL_INFO(i915); > -} > - > static const struct intel_display_device_info no_display = {}; > > /** > @@ -430,26 +423,24 @@ void intel_device_info_driver_create(struct drm_i915_private *i915, > u16 device_id, > const struct intel_device_info *match_info) > { > - struct intel_device_info *info; > struct intel_runtime_info *runtime; > u16 ver, rel, step; > > - /* Setup the write-once "constant" device info */ > - info = mkwrite_device_info(i915); > - memcpy(info, match_info, sizeof(*info)); > + /* Setup INTEL_INFO() */ > + i915->__info = match_info; > > /* Initialize initial runtime info from static const data and pdev. */ > runtime = RUNTIME_INFO(i915); > memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime)); > > /* Probe display support */ > - i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id, > + i915->display.info.__device_info = intel_display_device_probe(i915, HAS_GMD_ID(i915), Why does intel_display_device_probe need an explicit has_gmdid when it could use HAS_GMD_ID itself? But anyway, LGTM. If it saves you some time before the other time zone comes online: Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Regards, Tvrtko > &ver, &rel, &step); > memcpy(DISPLAY_RUNTIME_INFO(i915), > &DISPLAY_INFO(i915)->__runtime_defaults, > sizeof(*DISPLAY_RUNTIME_INFO(i915))); > > - if (info->has_gmd_id) { > + if (HAS_GMD_ID(i915)) { > DISPLAY_RUNTIME_INFO(i915)->ip.ver = ver; > DISPLAY_RUNTIME_INFO(i915)->ip.rel = rel; > DISPLAY_RUNTIME_INFO(i915)->ip.step = step; ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata 2023-06-29 11:10 ` Tvrtko Ursulin @ 2023-06-29 11:29 ` Jani Nikula 2023-06-29 13:30 ` Jani Nikula 0 siblings, 1 reply; 19+ messages in thread From: Jani Nikula @ 2023-06-29 11:29 UTC (permalink / raw) To: Tvrtko Ursulin, intel-gfx; +Cc: Matt Roper, Lucas De Marchi On Thu, 29 Jun 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: > On 27/06/2023 16:14, Jani Nikula wrote: >> Finally we can get rid of the pseudo-const write-once device info, and >> convert it into a const pointer to device info in rodata. >> >> Cc: Matt Roper <matthew.d.roper@intel.com> >> Cc: Lucas De Marchi <lucas.demarchi@intel.com> >> Signed-off-by: Jani Nikula <jani.nikula@intel.com> >> --- >> drivers/gpu/drm/i915/i915_drv.h | 4 ++-- >> drivers/gpu/drm/i915/intel_device_info.c | 17 ++++------------- >> 2 files changed, 6 insertions(+), 15 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 8947d1201298..682ef2b5c7d5 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -203,7 +203,7 @@ struct drm_i915_private { >> /* i915 device parameters */ >> struct i915_params params; >> >> - const struct intel_device_info __info; /* Use INTEL_INFO() to access. */ >> + const struct intel_device_info *__info; /* Use INTEL_INFO() to access. */ >> struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */ >> struct intel_driver_caps caps; >> >> @@ -415,7 +415,7 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915) >> (engine__) && (engine__)->uabi_class == (class__); \ >> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >> >> -#define INTEL_INFO(i915) (&(i915)->__info) >> +#define INTEL_INFO(i915) ((i915)->__info) >> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >> #define DISPLAY_INFO(i915) ((i915)->display.info.__device_info) >> #define DISPLAY_RUNTIME_INFO(i915) (&(i915)->display.info.__runtime_info) >> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c >> index 0740922cd71f..ea0ec6174ce5 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.c >> +++ b/drivers/gpu/drm/i915/intel_device_info.c >> @@ -364,13 +364,6 @@ void intel_device_info_runtime_init_early(struct drm_i915_private *i915) >> intel_device_info_subplatform_init(i915); >> } >> >> -/* FIXME: Remove this, and make device info a const pointer to rodata. */ >> -static struct intel_device_info * >> -mkwrite_device_info(struct drm_i915_private *i915) >> -{ >> - return (struct intel_device_info *)INTEL_INFO(i915); >> -} >> - >> static const struct intel_display_device_info no_display = {}; >> >> /** >> @@ -430,26 +423,24 @@ void intel_device_info_driver_create(struct drm_i915_private *i915, >> u16 device_id, >> const struct intel_device_info *match_info) >> { >> - struct intel_device_info *info; >> struct intel_runtime_info *runtime; >> u16 ver, rel, step; >> >> - /* Setup the write-once "constant" device info */ >> - info = mkwrite_device_info(i915); >> - memcpy(info, match_info, sizeof(*info)); >> + /* Setup INTEL_INFO() */ >> + i915->__info = match_info; >> >> /* Initialize initial runtime info from static const data and pdev. */ >> runtime = RUNTIME_INFO(i915); >> memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime)); >> >> /* Probe display support */ >> - i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id, >> + i915->display.info.__device_info = intel_display_device_probe(i915, HAS_GMD_ID(i915), > > Why does intel_display_device_probe need an explicit has_gmdid when it > could use HAS_GMD_ID itself? I think all of the display related initialization from this function should be moved within intel_display_device_probe() in follow-up. > But anyway, LGTM. If it saves you some time before the other time zone > comes online: > > Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Thanks, Jani. > > Regards, > > Tvrtko > >> &ver, &rel, &step); >> memcpy(DISPLAY_RUNTIME_INFO(i915), >> &DISPLAY_INFO(i915)->__runtime_defaults, >> sizeof(*DISPLAY_RUNTIME_INFO(i915))); >> >> - if (info->has_gmd_id) { >> + if (HAS_GMD_ID(i915)) { >> DISPLAY_RUNTIME_INFO(i915)->ip.ver = ver; >> DISPLAY_RUNTIME_INFO(i915)->ip.rel = rel; >> DISPLAY_RUNTIME_INFO(i915)->ip.step = step; -- Jani Nikula, Intel Open Source Graphics Center ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata 2023-06-29 11:29 ` Jani Nikula @ 2023-06-29 13:30 ` Jani Nikula 0 siblings, 0 replies; 19+ messages in thread From: Jani Nikula @ 2023-06-29 13:30 UTC (permalink / raw) To: Tvrtko Ursulin, intel-gfx; +Cc: Lucas De Marchi, Matt Roper On Thu, 29 Jun 2023, Jani Nikula <jani.nikula@intel.com> wrote: > On Thu, 29 Jun 2023, Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> wrote: >> On 27/06/2023 16:14, Jani Nikula wrote: >>> Finally we can get rid of the pseudo-const write-once device info, and >>> convert it into a const pointer to device info in rodata. >>> >>> Cc: Matt Roper <matthew.d.roper@intel.com> >>> Cc: Lucas De Marchi <lucas.demarchi@intel.com> >>> Signed-off-by: Jani Nikula <jani.nikula@intel.com> >>> --- >>> drivers/gpu/drm/i915/i915_drv.h | 4 ++-- >>> drivers/gpu/drm/i915/intel_device_info.c | 17 ++++------------- >>> 2 files changed, 6 insertions(+), 15 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >>> index 8947d1201298..682ef2b5c7d5 100644 >>> --- a/drivers/gpu/drm/i915/i915_drv.h >>> +++ b/drivers/gpu/drm/i915/i915_drv.h >>> @@ -203,7 +203,7 @@ struct drm_i915_private { >>> /* i915 device parameters */ >>> struct i915_params params; >>> >>> - const struct intel_device_info __info; /* Use INTEL_INFO() to access. */ >>> + const struct intel_device_info *__info; /* Use INTEL_INFO() to access. */ >>> struct intel_runtime_info __runtime; /* Use RUNTIME_INFO() to access. */ >>> struct intel_driver_caps caps; >>> >>> @@ -415,7 +415,7 @@ static inline struct intel_gt *to_gt(struct drm_i915_private *i915) >>> (engine__) && (engine__)->uabi_class == (class__); \ >>> (engine__) = rb_to_uabi_engine(rb_next(&(engine__)->uabi_node))) >>> >>> -#define INTEL_INFO(i915) (&(i915)->__info) >>> +#define INTEL_INFO(i915) ((i915)->__info) >>> #define RUNTIME_INFO(i915) (&(i915)->__runtime) >>> #define DISPLAY_INFO(i915) ((i915)->display.info.__device_info) >>> #define DISPLAY_RUNTIME_INFO(i915) (&(i915)->display.info.__runtime_info) >>> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c >>> index 0740922cd71f..ea0ec6174ce5 100644 >>> --- a/drivers/gpu/drm/i915/intel_device_info.c >>> +++ b/drivers/gpu/drm/i915/intel_device_info.c >>> @@ -364,13 +364,6 @@ void intel_device_info_runtime_init_early(struct drm_i915_private *i915) >>> intel_device_info_subplatform_init(i915); >>> } >>> >>> -/* FIXME: Remove this, and make device info a const pointer to rodata. */ >>> -static struct intel_device_info * >>> -mkwrite_device_info(struct drm_i915_private *i915) >>> -{ >>> - return (struct intel_device_info *)INTEL_INFO(i915); >>> -} >>> - >>> static const struct intel_display_device_info no_display = {}; >>> >>> /** >>> @@ -430,26 +423,24 @@ void intel_device_info_driver_create(struct drm_i915_private *i915, >>> u16 device_id, >>> const struct intel_device_info *match_info) >>> { >>> - struct intel_device_info *info; >>> struct intel_runtime_info *runtime; >>> u16 ver, rel, step; >>> >>> - /* Setup the write-once "constant" device info */ >>> - info = mkwrite_device_info(i915); >>> - memcpy(info, match_info, sizeof(*info)); >>> + /* Setup INTEL_INFO() */ >>> + i915->__info = match_info; >>> >>> /* Initialize initial runtime info from static const data and pdev. */ >>> runtime = RUNTIME_INFO(i915); >>> memcpy(runtime, &INTEL_INFO(i915)->__runtime, sizeof(*runtime)); >>> >>> /* Probe display support */ >>> - i915->display.info.__device_info = intel_display_device_probe(i915, info->has_gmd_id, >>> + i915->display.info.__device_info = intel_display_device_probe(i915, HAS_GMD_ID(i915), >> >> Why does intel_display_device_probe need an explicit has_gmdid when it >> could use HAS_GMD_ID itself? > > I think all of the display related initialization from this function > should be moved within intel_display_device_probe() in follow-up. > >> But anyway, LGTM. If it saves you some time before the other time zone >> comes online: >> >> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> And pushed the series to drm-intel-next, thanks for the reviews everyone! BR, Jani. > > Thanks, > Jani. > >> >> Regards, >> >> Tvrtko >> >>> &ver, &rel, &step); >>> memcpy(DISPLAY_RUNTIME_INFO(i915), >>> &DISPLAY_INFO(i915)->__runtime_defaults, >>> sizeof(*DISPLAY_RUNTIME_INFO(i915))); >>> >>> - if (info->has_gmd_id) { >>> + if (HAS_GMD_ID(i915)) { >>> DISPLAY_RUNTIME_INFO(i915)->ip.ver = ver; >>> DISPLAY_RUNTIME_INFO(i915)->ip.rel = rel; >>> DISPLAY_RUNTIME_INFO(i915)->ip.step = step; -- Jani Nikula, Intel Open Source Graphics Center ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: further device info fixes and cleanups 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (5 preceding siblings ...) 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata Jani Nikula @ 2023-06-27 20:28 ` Patchwork 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork ` (2 subsequent siblings) 9 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2023-06-27 20:28 UTC (permalink / raw) To: Jani Nikula; +Cc: intel-gfx == Series Details == Series: drm/i915: further device info fixes and cleanups URL : https://patchwork.freedesktop.org/series/119933/ State : warning == Summary == Error: dim checkpatch failed b9423c209dc0 drm/i915: use mock device info for creating mock device 93df845dfc05 drm/i915: move platform_engine_mask and memory_regions to device info 74e0bd21bc35 drm/i915: separate display info printing from the rest -:37: CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'name' may be better as '(name)' to avoid precedence issues #37: FILE: drivers/gpu/drm/i915/display/intel_display_device.c:997: +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->name)) total: 0 errors, 0 warnings, 1 checks, 125 lines checked baa649ba6f62 drm/i915: fix display info usage 9dc8f7006e55 drm/i915: move display device and runtime info to struct intel_display 6543bcf56ae9 drm/i915: make device info a const pointer to rodata ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: further device info fixes and cleanups 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (6 preceding siblings ...) 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: further device info fixes and cleanups Patchwork @ 2023-06-27 20:28 ` Patchwork 2023-06-27 20:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2023-06-28 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 9 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2023-06-27 20:28 UTC (permalink / raw) To: Jani Nikula; +Cc: intel-gfx == Series Details == Series: drm/i915: further device info fixes and cleanups URL : https://patchwork.freedesktop.org/series/119933/ State : warning == Summary == Error: dim sparse failed Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately. ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: further device info fixes and cleanups 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (7 preceding siblings ...) 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork @ 2023-06-27 20:43 ` Patchwork 2023-06-28 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 9 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2023-06-27 20:43 UTC (permalink / raw) To: Jani Nikula; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 8716 bytes --] == Series Details == Series: drm/i915: further device info fixes and cleanups URL : https://patchwork.freedesktop.org/series/119933/ State : success == Summary == CI Bug Log - changes from CI_DRM_13328 -> Patchwork_119933v1 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/index.html Participating hosts (40 -> 40) ------------------------------ Additional (2): fi-apl-guc fi-pnv-d510 Missing (2): fi-kbl-soraka fi-snb-2520m Known issues ------------ Here are the changes found in Patchwork_119933v1 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@core_auth@basic-auth: - bat-adlp-11: [PASS][1] -> [ABORT][2] ([i915#8011]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-adlp-11/igt@core_auth@basic-auth.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-adlp-11/igt@core_auth@basic-auth.html * igt@gem_lmem_swapping@basic: - fi-apl-guc: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#4613]) +3 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/fi-apl-guc/igt@gem_lmem_swapping@basic.html * igt@i915_module_load@load: - bat-adlp-11: [PASS][4] -> [DMESG-WARN][5] ([i915#4423]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-adlp-11/igt@i915_module_load@load.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-adlp-11/igt@i915_module_load@load.html * igt@i915_pm_rpm@basic-pci-d3-state: - bat-mtlp-8: [PASS][6] -> [ABORT][7] ([i915#7077] / [i915#7977]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-mtlp-8/igt@i915_pm_rpm@basic-pci-d3-state.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-mtlp-8/igt@i915_pm_rpm@basic-pci-d3-state.html * igt@i915_selftest@live@gt_lrc: - bat-dg2-11: [PASS][8] -> [INCOMPLETE][9] ([i915#7609] / [i915#7913]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-dg2-11/igt@i915_selftest@live@gt_lrc.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-dg2-11/igt@i915_selftest@live@gt_lrc.html * igt@i915_selftest@live@requests: - bat-adlp-9: [PASS][10] -> [ABORT][11] ([i915#7913] / [i915#7982]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-adlp-9/igt@i915_selftest@live@requests.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-adlp-9/igt@i915_selftest@live@requests.html - bat-rpls-2: [PASS][12] -> [ABORT][13] ([i915#7913] / [i915#7982]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-rpls-2/igt@i915_selftest@live@requests.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-rpls-2/igt@i915_selftest@live@requests.html * igt@kms_chamelium_hpd@vga-hpd-fast: - fi-apl-guc: NOTRUN -> [SKIP][14] ([fdo#109271]) +21 similar issues [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/fi-apl-guc/igt@kms_chamelium_hpd@vga-hpd-fast.html * igt@kms_pipe_crc_basic@nonblocking-crc: - bat-adlp-9: NOTRUN -> [SKIP][15] ([i915#3546]) +3 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-adlp-9/igt@kms_pipe_crc_basic@nonblocking-crc.html * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence: - bat-dg2-11: NOTRUN -> [SKIP][16] ([i915#1845] / [i915#5354]) +3 similar issues [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html * igt@kms_psr@primary_mmap_gtt: - bat-rplp-1: NOTRUN -> [ABORT][17] ([i915#8442]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-rplp-1/igt@kms_psr@primary_mmap_gtt.html * igt@kms_psr@primary_page_flip: - fi-pnv-d510: NOTRUN -> [SKIP][18] ([fdo#109271]) +37 similar issues [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/fi-pnv-d510/igt@kms_psr@primary_page_flip.html * igt@kms_setmode@basic-clone-single-crtc: - fi-apl-guc: NOTRUN -> [SKIP][19] ([fdo#109271] / [i915#4579]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/fi-apl-guc/igt@kms_setmode@basic-clone-single-crtc.html - fi-pnv-d510: NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4579]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/fi-pnv-d510/igt@kms_setmode@basic-clone-single-crtc.html #### Possible fixes #### * igt@i915_selftest@live@gt_mocs: - bat-mtlp-6: [DMESG-FAIL][21] ([i915#7059]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html * igt@i915_selftest@live@slpc: - bat-mtlp-6: [DMESG-WARN][23] ([i915#6367]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-mtlp-6/igt@i915_selftest@live@slpc.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-mtlp-6/igt@i915_selftest@live@slpc.html - bat-rpls-1: [DMESG-WARN][25] ([i915#6367]) -> [PASS][26] [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-rpls-1/igt@i915_selftest@live@slpc.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-rpls-1/igt@i915_selftest@live@slpc.html * igt@i915_selftest@live@workarounds: - bat-mtlp-6: [DMESG-FAIL][27] ([i915#6763]) -> [PASS][28] [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-mtlp-6/igt@i915_selftest@live@workarounds.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-mtlp-6/igt@i915_selftest@live@workarounds.html #### Warnings #### * igt@kms_psr@sprite_plane_onoff: - bat-rplp-1: [ABORT][29] ([i915#8712]) -> [SKIP][30] ([i915#1072]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/bat-rplp-1/igt@kms_psr@sprite_plane_onoff.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/bat-rplp-1/igt@kms_psr@sprite_plane_onoff.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423 [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367 [i915#6763]: https://gitlab.freedesktop.org/drm/intel/issues/6763 [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059 [i915#7077]: https://gitlab.freedesktop.org/drm/intel/issues/7077 [i915#7609]: https://gitlab.freedesktop.org/drm/intel/issues/7609 [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913 [i915#7977]: https://gitlab.freedesktop.org/drm/intel/issues/7977 [i915#7982]: https://gitlab.freedesktop.org/drm/intel/issues/7982 [i915#8011]: https://gitlab.freedesktop.org/drm/intel/issues/8011 [i915#8442]: https://gitlab.freedesktop.org/drm/intel/issues/8442 [i915#8712]: https://gitlab.freedesktop.org/drm/intel/issues/8712 Build changes ------------- * Linux: CI_DRM_13328 -> Patchwork_119933v1 CI-20190529: 20190529 CI_DRM_13328: 12cd6b2d321d9c034f3d4ba14788d68cb8da4eac @ git://anongit.freedesktop.org/gfx-ci/linux IGT_7351: d8dc96b95c60e4737fdfa1664ce9b1dcebfdef60 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git Patchwork_119933v1: 12cd6b2d321d9c034f3d4ba14788d68cb8da4eac @ git://anongit.freedesktop.org/gfx-ci/linux ### Linux commits 138c8f42bc57 drm/i915: make device info a const pointer to rodata d3fce33fad86 drm/i915: move display device and runtime info to struct intel_display f56656e9b84f drm/i915: fix display info usage 5611e33988e2 drm/i915: separate display info printing from the rest ca8bdc91f235 drm/i915: move platform_engine_mask and memory_regions to device info c8ceec722efc drm/i915: use mock device info for creating mock device == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/index.html [-- Attachment #2: Type: text/html, Size: 10403 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: further device info fixes and cleanups 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula ` (8 preceding siblings ...) 2023-06-27 20:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork @ 2023-06-28 14:05 ` Patchwork 9 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2023-06-28 14:05 UTC (permalink / raw) To: Jani Nikula; +Cc: intel-gfx [-- Attachment #1: Type: text/plain, Size: 47601 bytes --] == Series Details == Series: drm/i915: further device info fixes and cleanups URL : https://patchwork.freedesktop.org/series/119933/ State : success == Summary == CI Bug Log - changes from CI_DRM_13328_full -> Patchwork_119933v1_full ==================================================== Summary ------- **WARNING** Minor unknown changes coming with Patchwork_119933v1_full need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_119933v1_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (9 -> 9) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_119933v1_full: ### IGT changes ### #### Warnings #### * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt: - shard-tglu: [SKIP][1] ([fdo#109280]) -> [ABORT][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-tglu-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html New tests --------- New tests have been introduced between CI_DRM_13328_full and Patchwork_119933v1_full: ### New IGT tests (1) ### * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-d-hdmi-a-1: - Statuses : 1 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in Patchwork_119933v1_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@drm_fdinfo@most-busy-idle-check-all@rcs0: - shard-rkl: [PASS][3] -> [FAIL][4] ([i915#7742]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-2/igt@drm_fdinfo@most-busy-idle-check-all@rcs0.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-1/igt@drm_fdinfo@most-busy-idle-check-all@rcs0.html * igt@gem_create@create-ext-set-pat: - shard-glk: NOTRUN -> [FAIL][5] ([i915#8621]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@gem_create@create-ext-set-pat.html * igt@gem_eio@in-flight-contexts-1us: - shard-mtlp: [PASS][6] -> [ABORT][7] ([i915#8503]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-7/igt@gem_eio@in-flight-contexts-1us.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-2/igt@gem_eio@in-flight-contexts-1us.html * igt@gem_exec_balancer@bonded-pair: - shard-mtlp: NOTRUN -> [SKIP][8] ([i915#4771]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-3/igt@gem_exec_balancer@bonded-pair.html * igt@gem_exec_balancer@invalid-bonds: - shard-mtlp: NOTRUN -> [SKIP][9] ([i915#4036]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_exec_balancer@invalid-bonds.html * igt@gem_exec_fair@basic-none@vecs0: - shard-rkl: [PASS][10] -> [FAIL][11] ([i915#2842]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-2/igt@gem_exec_fair@basic-none@vecs0.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@gem_exec_fair@basic-none@vecs0.html * igt@gem_exec_reloc@basic-gtt-wc-active: - shard-dg2: NOTRUN -> [SKIP][12] ([i915#3281]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@gem_exec_reloc@basic-gtt-wc-active.html * igt@gem_exec_reloc@basic-wc-cpu-active: - shard-mtlp: NOTRUN -> [SKIP][13] ([i915#3281]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@gem_exec_reloc@basic-wc-cpu-active.html * igt@gem_exec_schedule@deep@vcs1: - shard-mtlp: [PASS][14] -> [FAIL][15] ([i915#8545]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@gem_exec_schedule@deep@vcs1.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_exec_schedule@deep@vcs1.html * igt@gem_exec_schedule@semaphore-power: - shard-mtlp: NOTRUN -> [SKIP][16] ([i915#4812]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_exec_schedule@semaphore-power.html * igt@gem_exec_suspend@basic-s3@lmem0: - shard-dg2: [PASS][17] -> [FAIL][18] ([fdo#103375]) +2 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-8/igt@gem_exec_suspend@basic-s3@lmem0.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-5/igt@gem_exec_suspend@basic-s3@lmem0.html * igt@gem_exec_whisper@basic-contexts-forked-all: - shard-mtlp: [PASS][19] -> [TIMEOUT][20] ([i915#8628]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-2/igt@gem_exec_whisper@basic-contexts-forked-all.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-4/igt@gem_exec_whisper@basic-contexts-forked-all.html * igt@gem_exec_whisper@basic-fds-all: - shard-mtlp: [PASS][21] -> [FAIL][22] ([i915#6363]) +1 similar issue [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-4/igt@gem_exec_whisper@basic-fds-all.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-5/igt@gem_exec_whisper@basic-fds-all.html * igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible: - shard-dg2: NOTRUN -> [SKIP][23] ([i915#4860]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@gem_fenced_exec_thrash@no-spare-fences-busy-interruptible.html * igt@gem_lmem_swapping@heavy-verify-multi: - shard-glk: NOTRUN -> [SKIP][24] ([fdo#109271] / [i915#4613]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@gem_lmem_swapping@heavy-verify-multi.html * igt@gem_lmem_swapping@smem-oom@lmem0: - shard-dg2: [PASS][25] -> [DMESG-WARN][26] ([i915#4936] / [i915#5493]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-1/igt@gem_lmem_swapping@smem-oom@lmem0.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-8/igt@gem_lmem_swapping@smem-oom@lmem0.html * igt@gem_mmap_wc@bad-offset: - shard-mtlp: NOTRUN -> [SKIP][27] ([i915#4083]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@gem_mmap_wc@bad-offset.html * igt@gem_render_copy@yf-tiled-to-vebox-linear: - shard-mtlp: NOTRUN -> [SKIP][28] ([i915#8428]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_render_copy@yf-tiled-to-vebox-linear.html * igt@gem_userptr_blits@coherency-sync: - shard-mtlp: NOTRUN -> [SKIP][29] ([i915#3297]) +1 similar issue [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_userptr_blits@coherency-sync.html * igt@gem_userptr_blits@vma-merge: - shard-glk: NOTRUN -> [FAIL][30] ([i915#3318]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@gem_userptr_blits@vma-merge.html * igt@gen9_exec_parse@allowed-single: - shard-apl: [PASS][31] -> [ABORT][32] ([i915#5566]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-apl3/igt@gen9_exec_parse@allowed-single.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-apl1/igt@gen9_exec_parse@allowed-single.html * igt@i915_pm_rc6_residency@rc6-accuracy: - shard-mtlp: NOTRUN -> [SKIP][33] ([fdo#109289] / [i915#8403]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-5/igt@i915_pm_rc6_residency@rc6-accuracy.html * igt@i915_pm_rpm@gem-evict-pwrite: - shard-dg2: NOTRUN -> [SKIP][34] ([i915#4077]) +1 similar issue [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@i915_pm_rpm@gem-evict-pwrite.html * igt@i915_pm_rpm@modeset-lpsp: - shard-dg2: [PASS][35] -> [SKIP][36] ([i915#1397]) +1 similar issue [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-12/igt@i915_pm_rpm@modeset-lpsp.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-7/igt@i915_pm_rpm@modeset-lpsp.html * igt@i915_pm_rpm@modeset-non-lpsp-stress: - shard-rkl: [PASS][37] -> [SKIP][38] ([i915#1397]) +1 similar issue [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-6/igt@i915_pm_rpm@modeset-non-lpsp-stress.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@i915_pm_rpm@modeset-non-lpsp-stress.html * igt@i915_pm_rps@min-max-config-idle: - shard-dg2: NOTRUN -> [SKIP][39] ([i915#6621]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@i915_pm_rps@min-max-config-idle.html * igt@i915_selftest@live@gt_pm: - shard-rkl: [PASS][40] -> [DMESG-FAIL][41] ([i915#4258]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-4/igt@i915_selftest@live@gt_pm.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-4/igt@i915_selftest@live@gt_pm.html * igt@i915_suspend@basic-s3-without-i915: - shard-rkl: [PASS][42] -> [FAIL][43] ([fdo#103375]) [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-2/igt@i915_suspend@basic-s3-without-i915.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@i915_suspend@basic-s3-without-i915.html * igt@i915_suspend@fence-restore-tiled2untiled: - shard-mtlp: NOTRUN -> [SKIP][44] ([i915#4077]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@i915_suspend@fence-restore-tiled2untiled.html * igt@kms_addfb_basic@addfb25-x-tiled-legacy: - shard-dg2: NOTRUN -> [SKIP][45] ([i915#4212]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_addfb_basic@addfb25-x-tiled-legacy.html * igt@kms_big_fb@4-tiled-16bpp-rotate-270: - shard-mtlp: NOTRUN -> [SKIP][46] ([fdo#111614]) +1 similar issue [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip: - shard-tglu: NOTRUN -> [SKIP][47] ([fdo#111615] / [i915#5286]) [47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip: - shard-mtlp: NOTRUN -> [SKIP][48] ([fdo#111615]) +1 similar issue [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html * igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs: - shard-dg2: NOTRUN -> [SKIP][49] ([i915#3689] / [i915#5354]) +1 similar issue [49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs.html - shard-tglu: NOTRUN -> [SKIP][50] ([i915#3689] / [i915#5354] / [i915#6095]) [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs.html * igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs: - shard-mtlp: NOTRUN -> [SKIP][51] ([i915#6095]) +5 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs.html * igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_mc_ccs: - shard-mtlp: NOTRUN -> [SKIP][52] ([i915#3886] / [i915#6095]) [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs_cc: - shard-glk: NOTRUN -> [SKIP][53] ([fdo#109271] / [i915#3886]) +1 similar issue [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html * igt@kms_ccs@pipe-b-crc-primary-rotation-180-yf_tiled_ccs: - shard-tglu: NOTRUN -> [SKIP][54] ([fdo#111615] / [i915#3689] / [i915#5354] / [i915#6095]) [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_ccs@pipe-b-crc-primary-rotation-180-yf_tiled_ccs.html * igt@kms_ccs@pipe-c-random-ccs-data-4_tiled_mtl_rc_ccs_cc: - shard-tglu: NOTRUN -> [SKIP][55] ([i915#5354] / [i915#6095]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_ccs@pipe-c-random-ccs-data-4_tiled_mtl_rc_ccs_cc.html * igt@kms_cdclk@mode-transition: - shard-glk: NOTRUN -> [SKIP][56] ([fdo#109271]) +48 similar issues [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@kms_cdclk@mode-transition.html * igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3: - shard-dg2: NOTRUN -> [SKIP][57] ([i915#4087]) +2 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-3/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html * igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-3: - shard-dg2: NOTRUN -> [SKIP][58] ([i915#4087] / [i915#4579]) [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-3/igt@kms_cdclk@plane-scaling@pipe-d-hdmi-a-3.html * igt@kms_chamelium_color@ctm-0-75: - shard-tglu: NOTRUN -> [SKIP][59] ([fdo#111827]) [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_chamelium_color@ctm-0-75.html - shard-dg2: NOTRUN -> [SKIP][60] ([fdo#111827]) [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_chamelium_color@ctm-0-75.html * igt@kms_content_protection@srm: - shard-dg2: NOTRUN -> [SKIP][61] ([i915#4579] / [i915#7118]) +2 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-1/igt@kms_content_protection@srm.html * igt@kms_cursor_crc@cursor-onscreen-512x170: - shard-mtlp: NOTRUN -> [SKIP][62] ([i915#3359]) [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-5/igt@kms_cursor_crc@cursor-onscreen-512x170.html * igt@kms_cursor_legacy@cursor-vs-flip-toggle: - shard-mtlp: [PASS][63] -> [FAIL][64] ([i915#8248]) [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-3/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size: - shard-mtlp: NOTRUN -> [SKIP][65] ([i915#3546]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions: - shard-glk: NOTRUN -> [FAIL][66] ([i915#2346]) [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html * igt@kms_cursor_legacy@single-move@all-pipes: - shard-mtlp: [PASS][67] -> [DMESG-WARN][68] ([i915#2017]) [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-2/igt@kms_cursor_legacy@single-move@all-pipes.html [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-4/igt@kms_cursor_legacy@single-move@all-pipes.html * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1: - shard-rkl: NOTRUN -> [SKIP][69] ([i915#3804] / [i915#4579]) [69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1.html * igt@kms_flip@2x-flip-vs-wf_vblank-interruptible: - shard-dg2: NOTRUN -> [SKIP][70] ([fdo#109274]) [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html - shard-tglu: NOTRUN -> [SKIP][71] ([fdo#109274] / [i915#3637]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-default-mode: - shard-mtlp: NOTRUN -> [SKIP][72] ([i915#4579]) +4 similar issues [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-default-mode.html * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-valid-mode: - shard-glk: NOTRUN -> [SKIP][73] ([fdo#109271] / [i915#4579]) +3 similar issues [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-valid-mode.html * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode: - shard-dg2: NOTRUN -> [SKIP][74] ([i915#2672] / [i915#4579]) [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html * igt@kms_force_connector_basic@prune-stale-modes: - shard-mtlp: NOTRUN -> [SKIP][75] ([i915#5274]) [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@kms_force_connector_basic@prune-stale-modes.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt: - shard-mtlp: NOTRUN -> [SKIP][76] ([i915#8708]) +1 similar issue [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move: - shard-dg2: [PASS][77] -> [FAIL][78] ([i915#6880]) +1 similar issue [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw: - shard-tglu: NOTRUN -> [SKIP][79] ([fdo#110189]) [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-pgflip-blt: - shard-dg2: NOTRUN -> [SKIP][80] ([i915#5354]) +4 similar issues [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc: - shard-mtlp: NOTRUN -> [SKIP][81] ([i915#1825]) +1 similar issue [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-plflip-blt: - shard-dg2: NOTRUN -> [SKIP][82] ([i915#3458]) +1 similar issue [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-plflip-blt.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-pwrite: - shard-tglu: NOTRUN -> [SKIP][83] ([fdo#109280]) +3 similar issues [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-pwrite.html * igt@kms_hdr@static-toggle-suspend: - shard-dg2: NOTRUN -> [SKIP][84] ([i915#3555] / [i915#4579]) +2 similar issues [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-7/igt@kms_hdr@static-toggle-suspend.html * igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-hdmi-a-1: - shard-glk: NOTRUN -> [FAIL][85] ([i915#4573]) +1 similar issue [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk4/igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-a-hdmi-a-1.html * igt@kms_plane_scaling@invalid-num-scalers@pipe-a-hdmi-a-1-invalid-num-scalers: - shard-snb: NOTRUN -> [SKIP][86] ([fdo#109271]) +7 similar issues [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-snb1/igt@kms_plane_scaling@invalid-num-scalers@pipe-a-hdmi-a-1-invalid-num-scalers.html * igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-a-hdmi-a-2: - shard-rkl: NOTRUN -> [SKIP][87] ([i915#5176]) +1 similar issue [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-1/igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-a-hdmi-a-2.html * igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-b-hdmi-a-2: - shard-rkl: NOTRUN -> [SKIP][88] ([i915#4579] / [i915#5176]) +1 similar issue [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-1/igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-b-hdmi-a-2.html * igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-d-dp-2: - shard-dg2: NOTRUN -> [SKIP][89] ([i915#4579] / [i915#5176]) +1 similar issue [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-12/igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-d-dp-2.html * igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-25@pipe-b-hdmi-a-3: - shard-dg2: NOTRUN -> [SKIP][90] ([i915#5176]) +5 similar issues [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-7/igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-25@pipe-b-hdmi-a-3.html * igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-1: - shard-rkl: NOTRUN -> [SKIP][91] ([i915#5235]) +1 similar issue [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-1.html * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-dp-4: - shard-dg2: NOTRUN -> [SKIP][92] ([i915#5235]) +8 similar issues [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-dp-4.html * igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b-vga-1: - shard-snb: NOTRUN -> [SKIP][93] ([fdo#109271] / [i915#4579]) +5 similar issues [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-snb4/igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b-vga-1.html * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-a-edp-1: - shard-mtlp: NOTRUN -> [SKIP][94] ([i915#5235]) +2 similar issues [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-a-edp-1.html * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-dp-2: - shard-dg2: NOTRUN -> [SKIP][95] ([i915#4579] / [i915#5235]) +2 similar issues [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-12/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-dp-2.html * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-edp-1: - shard-mtlp: NOTRUN -> [SKIP][96] ([i915#4579] / [i915#5235]) [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-d-edp-1.html * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-b-hdmi-a-2: - shard-rkl: NOTRUN -> [SKIP][97] ([i915#4579] / [i915#5235]) +1 similar issue [97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-4/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-b-hdmi-a-2.html * igt@kms_rotation_crc@primary-y-tiled-reflect-x-0: - shard-dg2: NOTRUN -> [SKIP][98] ([i915#5190]) [98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html * igt@perf_pmu@busy-double-start@ccs0: - shard-dg2: [PASS][99] -> [FAIL][100] ([i915#4349]) [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-10/igt@perf_pmu@busy-double-start@ccs0.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-3/igt@perf_pmu@busy-double-start@ccs0.html * igt@sysfs_heartbeat_interval@nopreempt@rcs0: - shard-mtlp: [PASS][101] -> [FAIL][102] ([i915#6015]) [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-2/igt@sysfs_heartbeat_interval@nopreempt@rcs0.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-4/igt@sysfs_heartbeat_interval@nopreempt@rcs0.html * igt@v3d/v3d_job_submission@array-job-submission: - shard-dg2: NOTRUN -> [SKIP][103] ([i915#2575]) [103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@v3d/v3d_job_submission@array-job-submission.html - shard-tglu: NOTRUN -> [SKIP][104] ([fdo#109315] / [i915#2575]) [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@v3d/v3d_job_submission@array-job-submission.html * igt@v3d/v3d_perfmon@create-single-perfmon: - shard-mtlp: NOTRUN -> [SKIP][105] ([i915#2575]) +1 similar issue [105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-5/igt@v3d/v3d_perfmon@create-single-perfmon.html * igt@vc4/vc4_tiling@get-after-free: - shard-mtlp: NOTRUN -> [SKIP][106] ([i915#7711]) [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@vc4/vc4_tiling@get-after-free.html #### Possible fixes #### * igt@drm_fdinfo@most-busy-check-all@rcs0: - shard-rkl: [FAIL][107] ([i915#7742]) -> [PASS][108] [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-2/igt@drm_fdinfo@most-busy-check-all@rcs0.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@drm_fdinfo@most-busy-check-all@rcs0.html * igt@gem_ctx_exec@basic-nohangcheck: - shard-tglu: [FAIL][109] ([i915#6268]) -> [PASS][110] [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-tglu-2/igt@gem_ctx_exec@basic-nohangcheck.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@gem_ctx_exec@basic-nohangcheck.html * igt@gem_ctx_persistence@smoketest: - shard-mtlp: [FAIL][111] ([i915#8663]) -> [PASS][112] [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@gem_ctx_persistence@smoketest.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_ctx_persistence@smoketest.html * igt@gem_eio@in-flight-10ms: - shard-mtlp: [ABORT][113] ([i915#8503]) -> [PASS][114] [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@gem_eio@in-flight-10ms.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-7/igt@gem_eio@in-flight-10ms.html * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-rkl: [FAIL][115] ([i915#2842]) -> [PASS][116] +1 similar issue [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-4/igt@gem_exec_fair@basic-pace-share@rcs0.html [116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-6/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_suspend@basic-s4-devices@lmem0: - shard-dg2: [ABORT][117] ([i915#7975] / [i915#8213] / [i915#8682]) -> [PASS][118] [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-6/igt@gem_exec_suspend@basic-s4-devices@lmem0.html [118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@gem_exec_suspend@basic-s4-devices@lmem0.html * igt@gem_exec_suspend@basic-s4-devices@smem: - shard-tglu: [ABORT][119] ([i915#7975] / [i915#8213]) -> [PASS][120] [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-tglu-10/igt@gem_exec_suspend@basic-s4-devices@smem.html [120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-9/igt@gem_exec_suspend@basic-s4-devices@smem.html * igt@gem_exec_whisper@basic-contexts-all: - shard-mtlp: [FAIL][121] ([i915#6363]) -> [PASS][122] [121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-1/igt@gem_exec_whisper@basic-contexts-all.html [122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-2/igt@gem_exec_whisper@basic-contexts-all.html * igt@gem_lmem_swapping@smem-oom@lmem0: - {shard-dg1}: [TIMEOUT][123] ([i915#5493]) -> [PASS][124] [123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg1-18/igt@gem_lmem_swapping@smem-oom@lmem0.html [124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg1-16/igt@gem_lmem_swapping@smem-oom@lmem0.html * igt@gem_mmap_offset@clear@smem0: - shard-dg2: [DMESG-WARN][125] ([i915#8304]) -> [PASS][126] [125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-6/igt@gem_mmap_offset@clear@smem0.html [126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@gem_mmap_offset@clear@smem0.html * igt@gem_workarounds@suspend-resume: - {shard-dg1}: [FAIL][127] ([fdo#103375]) -> [PASS][128] [127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg1-19/igt@gem_workarounds@suspend-resume.html [128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg1-17/igt@gem_workarounds@suspend-resume.html * igt@i915_module_load@reload-with-fault-injection: - shard-dg2: [DMESG-WARN][129] ([i915#7061]) -> [PASS][130] [129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-3/igt@i915_module_load@reload-with-fault-injection.html [130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-12/igt@i915_module_load@reload-with-fault-injection.html * igt@i915_pm_rc6_residency@rc6-idle@rcs0: - {shard-dg1}: [FAIL][131] ([i915#3591]) -> [PASS][132] +1 similar issue [131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html [132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg1-19/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html * igt@i915_pm_rpm@dpms-lpsp: - {shard-dg1}: [SKIP][133] ([i915#1397]) -> [PASS][134] +2 similar issues [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg1-12/igt@i915_pm_rpm@dpms-lpsp.html [134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg1-19/igt@i915_pm_rpm@dpms-lpsp.html * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp: - shard-dg2: [SKIP][135] ([i915#1397]) -> [PASS][136] +2 similar issues [135]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-10/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html [136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-3/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html * igt@i915_pm_rpm@dpms-non-lpsp: - shard-rkl: [SKIP][137] ([i915#1397]) -> [PASS][138] +2 similar issues [137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-7/igt@i915_pm_rpm@dpms-non-lpsp.html [138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-2/igt@i915_pm_rpm@dpms-non-lpsp.html * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip: - shard-mtlp: [FAIL][139] ([i915#5138]) -> [PASS][140] [139]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html [140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html * igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip: - shard-mtlp: [FAIL][141] ([i915#3743]) -> [PASS][142] [141]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-2/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html [142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-4/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic: - shard-glk: [FAIL][143] ([i915#72]) -> [PASS][144] [143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-glk9/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html [144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk2/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions: - shard-apl: [FAIL][145] ([i915#2346]) -> [PASS][146] [145]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-apl3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html [146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html * igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1: - shard-glk: [FAIL][147] ([i915#79]) -> [PASS][148] [147]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-glk4/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html [148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-glk9/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite: - shard-dg2: [FAIL][149] ([i915#6880]) -> [PASS][150] [149]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html [150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html * igt@kms_frontbuffer_tracking@fbc-suspend: - shard-dg2: [FAIL][151] ([fdo#103375]) -> [PASS][152] [151]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-suspend.html [152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-suspend.html - shard-mtlp: [FAIL][153] ([fdo#103375]) -> [PASS][154] [153]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-4/igt@kms_frontbuffer_tracking@fbc-suspend.html [154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbc-suspend.html * igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1: - shard-tglu: [FAIL][155] ([i915#8292]) -> [PASS][156] [155]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-tglu-6/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html [156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-tglu-4/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html * igt@perf_pmu@busy-double-start@ccs1: - shard-dg2: [FAIL][157] ([i915#4349]) -> [PASS][158] +8 similar issues [157]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-10/igt@perf_pmu@busy-double-start@ccs1.html [158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-3/igt@perf_pmu@busy-double-start@ccs1.html * igt@perf_pmu@most-busy-idle-check-all@bcs0: - {shard-dg1}: [FAIL][159] ([i915#5234]) -> [PASS][160] [159]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg1-14/igt@perf_pmu@most-busy-idle-check-all@bcs0.html [160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg1-13/igt@perf_pmu@most-busy-idle-check-all@bcs0.html #### Warnings #### * igt@kms_async_flips@crc@pipe-a-edp-1: - shard-mtlp: [FAIL][161] ([i915#8247]) -> [DMESG-FAIL][162] ([i915#1982] / [i915#8561]) [161]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-3/igt@kms_async_flips@crc@pipe-a-edp-1.html [162]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-8/igt@kms_async_flips@crc@pipe-a-edp-1.html * igt@kms_async_flips@crc@pipe-c-edp-1: - shard-mtlp: [FAIL][163] ([i915#8247]) -> [DMESG-FAIL][164] ([i915#8561]) [163]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-3/igt@kms_async_flips@crc@pipe-c-edp-1.html [164]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-8/igt@kms_async_flips@crc@pipe-c-edp-1.html * igt@kms_async_flips@crc@pipe-d-edp-1: - shard-mtlp: [DMESG-FAIL][165] ([i915#8561]) -> [FAIL][166] ([i915#8247]) [165]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-3/igt@kms_async_flips@crc@pipe-d-edp-1.html [166]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-8/igt@kms_async_flips@crc@pipe-d-edp-1.html * igt@kms_content_protection@content_type_change: - shard-dg2: [SKIP][167] ([i915#4579] / [i915#7118]) -> [SKIP][168] ([i915#4579] / [i915#7118] / [i915#7162]) [167]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-6/igt@kms_content_protection@content_type_change.html [168]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-11/igt@kms_content_protection@content_type_change.html * igt@kms_content_protection@mei_interface: - shard-dg2: [SKIP][169] ([i915#4579] / [i915#7118] / [i915#7162]) -> [SKIP][170] ([i915#4579] / [i915#7118]) [169]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-dg2-11/igt@kms_content_protection@mei_interface.html [170]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-dg2-5/igt@kms_content_protection@mei_interface.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size: - shard-mtlp: [DMESG-FAIL][171] ([i915#5954]) -> [DMESG-FAIL][172] ([i915#2017] / [i915#5954]) [171]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html [172]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html * igt@kms_fbcon_fbt@psr-suspend: - shard-rkl: [SKIP][173] ([fdo#110189] / [i915#3955]) -> [SKIP][174] ([i915#3955]) [173]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-2/igt@kms_fbcon_fbt@psr-suspend.html [174]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-6/igt@kms_fbcon_fbt@psr-suspend.html * igt@kms_multipipe_modeset@basic-max-pipe-crc-check: - shard-rkl: [SKIP][175] ([i915#4070] / [i915#4816]) -> [SKIP][176] ([i915#4816]) [175]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-rkl-1/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html [176]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-rkl-7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html * igt@kms_vblank@pipe-c-wait-busy-hang: - shard-mtlp: [DMESG-WARN][177] -> [DMESG-WARN][178] ([i915#2017]) [177]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13328/shard-mtlp-6/igt@kms_vblank@pipe-c-wait-busy-hang.html [178]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/shard-mtlp-1/igt@kms_vblank@pipe-c-wait-busy-hang.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289 [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189 [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614 [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397 [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017 [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346 [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575 [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281 [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297 [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318 [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359 [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458 [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546 [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555 [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591 [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637 [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689 [i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743 [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804 [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886 [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955 [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036 [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070 [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077 [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078 [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083 [i915#4087]: https://gitlab.freedesktop.org/drm/intel/issues/4087 [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212 [i915#4258]: https://gitlab.freedesktop.org/drm/intel/issues/4258 [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349 [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573 [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579 [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613 [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771 [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812 [i915#4816]: https://gitlab.freedesktop.org/drm/intel/issues/4816 [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860 [i915#4936]: https://gitlab.freedesktop.org/drm/intel/issues/4936 [i915#5138]: https://gitlab.freedesktop.org/drm/intel/issues/5138 [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176 [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190 [i915#5234]: https://gitlab.freedesktop.org/drm/intel/issues/5234 [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235 [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274 [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286 [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354 [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493 [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566 [i915#5954]: https://gitlab.freedesktop.org/drm/intel/issues/5954 [i915#6015]: https://gitlab.freedesktop.org/drm/intel/issues/6015 [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095 [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268 [i915#6363]: https://gitlab.freedesktop.org/drm/intel/issues/6363 [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621 [i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880 [i915#7061]: https://gitlab.freedesktop.org/drm/intel/issues/7061 [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118 [i915#7162]: https://gitlab.freedesktop.org/drm/intel/issues/7162 [i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72 [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711 [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975 [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213 [i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247 [i915#8248]: https://gitlab.freedesktop.org/drm/intel/issues/8248 [i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292 [i915#8304]: https://gitlab.freedesktop.org/drm/intel/issues/8304 [i915#8403]: https://gitlab.freedesktop.org/drm/intel/issues/8403 [i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428 [i915#8503]: https://gitlab.freedesktop.org/drm/intel/issues/8503 [i915#8545]: https://gitlab.freedesktop.org/drm/intel/issues/8545 [i915#8561]: https://gitlab.freedesktop.org/drm/intel/issues/8561 [i915#8621]: https://gitlab.freedesktop.org/drm/intel/issues/8621 [i915#8628]: https://gitlab.freedesktop.org/drm/intel/issues/8628 [i915#8661]: https://gitlab.freedesktop.org/drm/intel/issues/8661 [i915#8663]: https://gitlab.freedesktop.org/drm/intel/issues/8663 [i915#8682]: https://gitlab.freedesktop.org/drm/intel/issues/8682 [i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708 Build changes ------------- * Linux: CI_DRM_13328 -> Patchwork_119933v1 CI-20190529: 20190529 CI_DRM_13328: 12cd6b2d321d9c034f3d4ba14788d68cb8da4eac @ git://anongit.freedesktop.org/gfx-ci/linux IGT_7351: d8dc96b95c60e4737fdfa1664ce9b1dcebfdef60 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git Patchwork_119933v1: 12cd6b2d321d9c034f3d4ba14788d68cb8da4eac @ git://anongit.freedesktop.org/gfx-ci/linux piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119933v1/index.html [-- Attachment #2: Type: text/html, Size: 56474 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2023-06-29 16:21 UTC | newest] Thread overview: 19+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-06-27 15:13 [Intel-gfx] [PATCH v2 0/6] drm/i915: further device info fixes and cleanups Jani Nikula 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 1/6] drm/i915: use mock device info for creating mock device Jani Nikula 2023-06-29 11:00 ` Tvrtko Ursulin 2023-06-29 11:53 ` Andi Shyti 2023-06-29 12:57 ` Andrzej Hajda 2023-06-29 16:12 ` Yang, Fei 2023-06-27 15:13 ` [Intel-gfx] [PATCH v2 2/6] drm/i915: move platform_engine_mask and memory_regions to device info Jani Nikula 2023-06-29 11:06 ` Tvrtko Ursulin 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 3/6] drm/i915: separate display info printing from the rest Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 4/6] drm/i915: fix display info usage Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 5/6] drm/i915: move display device and runtime info to struct intel_display Jani Nikula 2023-06-27 15:14 ` [Intel-gfx] [PATCH v2 6/6] drm/i915: make device info a const pointer to rodata Jani Nikula 2023-06-29 11:10 ` Tvrtko Ursulin 2023-06-29 11:29 ` Jani Nikula 2023-06-29 13:30 ` Jani Nikula 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: further device info fixes and cleanups Patchwork 2023-06-27 20:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork 2023-06-27 20:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2023-06-28 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox