* [PATCH 1/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_alloc()
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
@ 2025-09-03 20:31 ` Jani Nikula
2025-09-03 20:31 ` [PATCH 2/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_pitch_align() Jani Nikula
` (11 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:31 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
The function doesn't actually need struct drm_fb_helper for anything,
just pass struct drm_device.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +-
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 10 +++++-----
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 4 ++--
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 +++----
4 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
index 7c4709d58aa3..46c6de5f6088 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
@@ -237,7 +237,7 @@ int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
if (!fb || drm_WARN_ON(display->drm, !intel_fb_bo(&fb->base))) {
drm_dbg_kms(display->drm,
"no BIOS fb, allocating a new one\n");
- fb = intel_fbdev_fb_alloc(helper, sizes);
+ fb = intel_fbdev_fb_alloc(display->drm, sizes);
if (IS_ERR(fb))
return PTR_ERR(fb);
} else {
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 210aee9ae88b..9c557917d781 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -13,11 +13,11 @@
#include "intel_fb.h"
#include "intel_fbdev_fb.h"
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_fb_helper *helper,
+struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes)
{
- struct intel_display *display = to_intel_display(helper->dev);
- struct drm_i915_private *dev_priv = to_i915(display->drm);
+ struct intel_display *display = to_intel_display(drm);
+ struct drm_i915_private *dev_priv = to_i915(drm);
struct drm_framebuffer *fb;
struct drm_mode_fb_cmd2 mode_cmd = {};
struct drm_i915_gem_object *obj;
@@ -58,12 +58,12 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_fb_helper *helper,
}
if (IS_ERR(obj)) {
- drm_err(display->drm, "failed to allocate framebuffer (%pe)\n", obj);
+ drm_err(drm, "failed to allocate framebuffer (%pe)\n", obj);
return ERR_PTR(-ENOMEM);
}
fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
- drm_get_format_info(display->drm,
+ drm_get_format_info(drm,
mode_cmd.pixel_format,
mode_cmd.modifier[0]),
&mode_cmd);
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index cb7957272715..668ae355f5e5 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -6,14 +6,14 @@
#ifndef __INTEL_FBDEV_FB_H__
#define __INTEL_FBDEV_FB_H__
-struct drm_fb_helper;
+struct drm_device;
struct drm_fb_helper_surface_size;
struct drm_gem_object;
struct fb_info;
struct i915_vma;
struct intel_display;
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_fb_helper *helper,
+struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
struct drm_gem_object *obj, struct i915_vma *vma);
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index d96ba2b51065..bafca1059a40 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -15,12 +15,11 @@
#include <generated/xe_wa_oob.h>
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_fb_helper *helper,
+struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes)
{
struct drm_framebuffer *fb;
- struct drm_device *dev = helper->dev;
- struct xe_device *xe = to_xe_device(dev);
+ struct xe_device *xe = to_xe_device(drm);
struct drm_mode_fb_cmd2 mode_cmd = {};
struct xe_bo *obj;
int size;
@@ -67,7 +66,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_fb_helper *helper,
}
fb = intel_framebuffer_create(&obj->ttm.base,
- drm_get_format_info(dev,
+ drm_get_format_info(drm,
mode_cmd.pixel_format,
mode_cmd.modifier[0]),
&mode_cmd);
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* [PATCH 2/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
2025-09-03 20:31 ` [PATCH 1/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_alloc() Jani Nikula
@ 2025-09-03 20:31 ` Jani Nikula
2025-09-05 9:23 ` [PATCH 2/9] drm/{i915, xe}/fbdev: " Ville Syrjälä
2025-09-03 20:32 ` [PATCH 3/9] drm/{i915, xe}/fbdev: deduplicate struct drm_mode_fb_cmd2 init Jani Nikula
` (10 subsequent siblings)
12 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:31 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
Add new helper intel_fbdev_fb_pitch_align() in preparation for further
refactoring. The alignment is different for i915 and xe.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 9c557917d781..d1c03d7b9bdc 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -13,6 +13,11 @@
#include "intel_fb.h"
#include "intel_fbdev_fb.h"
+u32 intel_fbdev_fb_pitch_align(u32 stride)
+{
+ return ALIGN(stride, 64);
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes)
{
@@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
mode_cmd.width = sizes->surface_width;
mode_cmd.height = sizes->surface_height;
- mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
- DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
+ mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
sizes->surface_depth);
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index 668ae355f5e5..caeb543d5efc 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -6,6 +6,8 @@
#ifndef __INTEL_FBDEV_FB_H__
#define __INTEL_FBDEV_FB_H__
+#include <linux/types.h>
+
struct drm_device;
struct drm_fb_helper_surface_size;
struct drm_gem_object;
@@ -13,6 +15,7 @@ struct fb_info;
struct i915_vma;
struct intel_display;
+u32 intel_fbdev_fb_pitch_align(u32 stride);
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index bafca1059a40..fd2c40020eea 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -15,6 +15,11 @@
#include <generated/xe_wa_oob.h>
+u32 intel_fbdev_fb_pitch_align(u32 stride)
+{
+ return ALIGN(stride, XE_PAGE_SIZE);
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_fb_helper_surface_size *sizes)
{
@@ -31,8 +36,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
mode_cmd.width = sizes->surface_width;
mode_cmd.height = sizes->surface_height;
- mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
- DIV_ROUND_UP(sizes->surface_bpp, 8), XE_PAGE_SIZE);
+ mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
sizes->surface_depth);
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-03 20:31 ` [PATCH 2/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_pitch_align() Jani Nikula
@ 2025-09-05 9:23 ` Ville Syrjälä
2025-09-08 12:55 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-05 9:23 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx, intel-xe
On Wed, Sep 03, 2025 at 11:31:59PM +0300, Jani Nikula wrote:
> Add new helper intel_fbdev_fb_pitch_align() in preparation for further
> refactoring. The alignment is different for i915 and xe.
>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
> 3 files changed, 15 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> index 9c557917d781..d1c03d7b9bdc 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> @@ -13,6 +13,11 @@
> #include "intel_fb.h"
> #include "intel_fbdev_fb.h"
>
> +u32 intel_fbdev_fb_pitch_align(u32 stride)
> +{
> + return ALIGN(stride, 64);
> +}
> +
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_fb_helper_surface_size *sizes)
> {
> @@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> mode_cmd.width = sizes->surface_width;
> mode_cmd.height = sizes->surface_height;
>
> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
> - DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
> sizes->surface_depth);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> index 668ae355f5e5..caeb543d5efc 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> @@ -6,6 +6,8 @@
> #ifndef __INTEL_FBDEV_FB_H__
> #define __INTEL_FBDEV_FB_H__
>
> +#include <linux/types.h>
> +
> struct drm_device;
> struct drm_fb_helper_surface_size;
> struct drm_gem_object;
> @@ -13,6 +15,7 @@ struct fb_info;
> struct i915_vma;
> struct intel_display;
>
> +u32 intel_fbdev_fb_pitch_align(u32 stride);
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_fb_helper_surface_size *sizes);
> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> index bafca1059a40..fd2c40020eea 100644
> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> @@ -15,6 +15,11 @@
>
> #include <generated/xe_wa_oob.h>
>
> +u32 intel_fbdev_fb_pitch_align(u32 stride)
> +{
> + return ALIGN(stride, XE_PAGE_SIZE);
I think someone needs to explain what the heck this extra alignment
is trying to achieve? I suspect it just needs to get nuked.
> +}
> +
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_fb_helper_surface_size *sizes)
> {
> @@ -31,8 +36,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> mode_cmd.width = sizes->surface_width;
> mode_cmd.height = sizes->surface_height;
>
> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
> - DIV_ROUND_UP(sizes->surface_bpp, 8), XE_PAGE_SIZE);
> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
> sizes->surface_depth);
>
> --
> 2.47.2
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-05 9:23 ` [PATCH 2/9] drm/{i915, xe}/fbdev: " Ville Syrjälä
@ 2025-09-08 12:55 ` Jani Nikula
2025-09-08 14:19 ` Lucas De Marchi
0 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-08 12:55 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, intel-xe, Maarten Lankhorst
On Fri, 05 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Sep 03, 2025 at 11:31:59PM +0300, Jani Nikula wrote:
>> Add new helper intel_fbdev_fb_pitch_align() in preparation for further
>> refactoring. The alignment is different for i915 and xe.
>>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
>> 3 files changed, 15 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> index 9c557917d781..d1c03d7b9bdc 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> @@ -13,6 +13,11 @@
>> #include "intel_fb.h"
>> #include "intel_fbdev_fb.h"
>>
>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>> +{
>> + return ALIGN(stride, 64);
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_fb_helper_surface_size *sizes)
>> {
>> @@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> mode_cmd.width = sizes->surface_width;
>> mode_cmd.height = sizes->surface_height;
>>
>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
>> - DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
>> sizes->surface_depth);
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> index 668ae355f5e5..caeb543d5efc 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> @@ -6,6 +6,8 @@
>> #ifndef __INTEL_FBDEV_FB_H__
>> #define __INTEL_FBDEV_FB_H__
>>
>> +#include <linux/types.h>
>> +
>> struct drm_device;
>> struct drm_fb_helper_surface_size;
>> struct drm_gem_object;
>> @@ -13,6 +15,7 @@ struct fb_info;
>> struct i915_vma;
>> struct intel_display;
>>
>> +u32 intel_fbdev_fb_pitch_align(u32 stride);
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_fb_helper_surface_size *sizes);
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> index bafca1059a40..fd2c40020eea 100644
>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> @@ -15,6 +15,11 @@
>>
>> #include <generated/xe_wa_oob.h>
>>
>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>> +{
>> + return ALIGN(stride, XE_PAGE_SIZE);
>
> I think someone needs to explain what the heck this extra alignment
> is trying to achieve? I suspect it just needs to get nuked.
That would indeed be great, and allow even further cleanup. I'm just
trying to find the common parts here, and not so much dig into every
little detail that differs.
I did git blame this while writing the patch, and it's all in the big xe
driver enabling commit. I'm not sure where it comes from.
Cc: Maarten, any ideas?
BR,
Jani.
>
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_fb_helper_surface_size *sizes)
>> {
>> @@ -31,8 +36,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> mode_cmd.width = sizes->surface_width;
>> mode_cmd.height = sizes->surface_height;
>>
>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
>> - DIV_ROUND_UP(sizes->surface_bpp, 8), XE_PAGE_SIZE);
>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
>> sizes->surface_depth);
>>
>> --
>> 2.47.2
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-08 12:55 ` Jani Nikula
@ 2025-09-08 14:19 ` Lucas De Marchi
2025-09-08 16:10 ` Maarten Lankhorst
0 siblings, 1 reply; 32+ messages in thread
From: Lucas De Marchi @ 2025-09-08 14:19 UTC (permalink / raw)
To: Jani Nikula
Cc: Ville Syrjälä, intel-gfx, intel-xe, Maarten Lankhorst,
Jouni Högander, Vinod Govindapillai
On Mon, Sep 08, 2025 at 03:55:18PM +0300, Jani Nikula wrote:
>On Fri, 05 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
>> On Wed, Sep 03, 2025 at 11:31:59PM +0300, Jani Nikula wrote:
>>> Add new helper intel_fbdev_fb_pitch_align() in preparation for further
>>> refactoring. The alignment is different for i915 and xe.
>>>
>>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>>> ---
>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
>>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
>>> 3 files changed, 15 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>> index 9c557917d781..d1c03d7b9bdc 100644
>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>> @@ -13,6 +13,11 @@
>>> #include "intel_fb.h"
>>> #include "intel_fbdev_fb.h"
>>>
>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>>> +{
>>> + return ALIGN(stride, 64);
>>> +}
>>> +
>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>> struct drm_fb_helper_surface_size *sizes)
>>> {
>>> @@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>> mode_cmd.width = sizes->surface_width;
>>> mode_cmd.height = sizes->surface_height;
>>>
>>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
>>> - DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
>>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
>>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
>>> sizes->surface_depth);
>>>
>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>> index 668ae355f5e5..caeb543d5efc 100644
>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>> @@ -6,6 +6,8 @@
>>> #ifndef __INTEL_FBDEV_FB_H__
>>> #define __INTEL_FBDEV_FB_H__
>>>
>>> +#include <linux/types.h>
>>> +
>>> struct drm_device;
>>> struct drm_fb_helper_surface_size;
>>> struct drm_gem_object;
>>> @@ -13,6 +15,7 @@ struct fb_info;
>>> struct i915_vma;
>>> struct intel_display;
>>>
>>> +u32 intel_fbdev_fb_pitch_align(u32 stride);
>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>> struct drm_fb_helper_surface_size *sizes);
>>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>> index bafca1059a40..fd2c40020eea 100644
>>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>> @@ -15,6 +15,11 @@
>>>
>>> #include <generated/xe_wa_oob.h>
>>>
>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>>> +{
>>> + return ALIGN(stride, XE_PAGE_SIZE);
>>
>> I think someone needs to explain what the heck this extra alignment
>> is trying to achieve? I suspect it just needs to get nuked.
>
>That would indeed be great, and allow even further cleanup. I'm just
>trying to find the common parts here, and not so much dig into every
>little detail that differs.
>
>I did git blame this while writing the patch, and it's all in the big xe
>driver enabling commit. I'm not sure where it comes from.
>
>Cc: Maarten, any ideas?
It doesn't help much, but https://lore.kernel.org/intel-xe/20231114110056.2423853-5-jouni.hogander@intel.com/
was the first time this align got added.
Adding some people to Cc.
Lucas De Marchi
>
>BR,
>Jani.
>
>>
>>> +}
>>> +
>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>> struct drm_fb_helper_surface_size *sizes)
>>> {
>>> @@ -31,8 +36,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>> mode_cmd.width = sizes->surface_width;
>>> mode_cmd.height = sizes->surface_height;
>>>
>>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
>>> - DIV_ROUND_UP(sizes->surface_bpp, 8), XE_PAGE_SIZE);
>>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
>>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
>>> sizes->surface_depth);
>>>
>>> --
>>> 2.47.2
>
>--
>Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-08 14:19 ` Lucas De Marchi
@ 2025-09-08 16:10 ` Maarten Lankhorst
2025-09-08 16:27 ` Ville Syrjälä
0 siblings, 1 reply; 32+ messages in thread
From: Maarten Lankhorst @ 2025-09-08 16:10 UTC (permalink / raw)
To: Lucas De Marchi, Jani Nikula
Cc: Ville Syrjälä, intel-gfx, intel-xe, Jouni Högander,
Vinod Govindapillai
Hey,
Den 2025-09-08 kl. 16:19, skrev Lucas De Marchi:
> On Mon, Sep 08, 2025 at 03:55:18PM +0300, Jani Nikula wrote:
>> On Fri, 05 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
>>> On Wed, Sep 03, 2025 at 11:31:59PM +0300, Jani Nikula wrote:
>>>> Add new helper intel_fbdev_fb_pitch_align() in preparation for further
>>>> refactoring. The alignment is different for i915 and xe.
>>>>
>>>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>>>> ---
>>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
>>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
>>>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
>>>> 3 files changed, 15 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>>> index 9c557917d781..d1c03d7b9bdc 100644
>>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>>>> @@ -13,6 +13,11 @@
>>>> #include "intel_fb.h"
>>>> #include "intel_fbdev_fb.h"
>>>>
>>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>>>> +{
>>>> + return ALIGN(stride, 64);
>>>> +}
>>>> +
>>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>>> struct drm_fb_helper_surface_size *sizes)
>>>> {
>>>> @@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>>> mode_cmd.width = sizes->surface_width;
>>>> mode_cmd.height = sizes->surface_height;
>>>>
>>>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
>>>> - DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
>>>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
>>>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
>>>> sizes->surface_depth);
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>>> index 668ae355f5e5..caeb543d5efc 100644
>>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>>>> @@ -6,6 +6,8 @@
>>>> #ifndef __INTEL_FBDEV_FB_H__
>>>> #define __INTEL_FBDEV_FB_H__
>>>>
>>>> +#include <linux/types.h>
>>>> +
>>>> struct drm_device;
>>>> struct drm_fb_helper_surface_size;
>>>> struct drm_gem_object;
>>>> @@ -13,6 +15,7 @@ struct fb_info;
>>>> struct i915_vma;
>>>> struct intel_display;
>>>>
>>>> +u32 intel_fbdev_fb_pitch_align(u32 stride);
>>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>>>> struct drm_fb_helper_surface_size *sizes);
>>>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>>>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>>> index bafca1059a40..fd2c40020eea 100644
>>>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>>>> @@ -15,6 +15,11 @@
>>>>
>>>> #include <generated/xe_wa_oob.h>
>>>>
>>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
>>>> +{
>>>> + return ALIGN(stride, XE_PAGE_SIZE);
>>>
>>> I think someone needs to explain what the heck this extra alignment
>>> is trying to achieve? I suspect it just needs to get nuked.
>>
>> That would indeed be great, and allow even further cleanup. I'm just
>> trying to find the common parts here, and not so much dig into every
>> little detail that differs.
>>
>> I did git blame this while writing the patch, and it's all in the big xe
>> driver enabling commit. I'm not sure where it comes from.
>>
>> Cc: Maarten, any ideas?
>
> It doesn't help much, but https://lore.kernel.org/intel-xe/20231114110056.2423853-5-jouni.hogander@intel.com/
> was the first time this align got added.
>
> Adding some people to Cc.
>
> Lucas De Marchi
If I really recall correctly, it was to ensure size was a multiple of 4k and dumb bo allocation would not fail.
This was at the very start of xe enabling.
i915 bo alloc allows any size, xe is much stricter. If it works with the hack removed and the bo gets 64k aligned
on discrete, then this probably can be dropped.
Best regards,
~Maarten Lankhorst
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-08 16:10 ` Maarten Lankhorst
@ 2025-09-08 16:27 ` Ville Syrjälä
2025-09-16 11:44 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-08 16:27 UTC (permalink / raw)
To: Maarten Lankhorst
Cc: Lucas De Marchi, Jani Nikula, intel-gfx, intel-xe,
Jouni Högander, Vinod Govindapillai
On Mon, Sep 08, 2025 at 06:10:56PM +0200, Maarten Lankhorst wrote:
> Hey,
>
> Den 2025-09-08 kl. 16:19, skrev Lucas De Marchi:
> > On Mon, Sep 08, 2025 at 03:55:18PM +0300, Jani Nikula wrote:
> >> On Fri, 05 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> >>> On Wed, Sep 03, 2025 at 11:31:59PM +0300, Jani Nikula wrote:
> >>>> Add new helper intel_fbdev_fb_pitch_align() in preparation for further
> >>>> refactoring. The alignment is different for i915 and xe.
> >>>>
> >>>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> >>>> ---
> >>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 8 ++++++--
> >>>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +++
> >>>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 8 ++++++--
> >>>> 3 files changed, 15 insertions(+), 4 deletions(-)
> >>>>
> >>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >>>> index 9c557917d781..d1c03d7b9bdc 100644
> >>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >>>> @@ -13,6 +13,11 @@
> >>>> #include "intel_fb.h"
> >>>> #include "intel_fbdev_fb.h"
> >>>>
> >>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
> >>>> +{
> >>>> + return ALIGN(stride, 64);
> >>>> +}
> >>>> +
> >>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> >>>> struct drm_fb_helper_surface_size *sizes)
> >>>> {
> >>>> @@ -30,8 +35,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> >>>> mode_cmd.width = sizes->surface_width;
> >>>> mode_cmd.height = sizes->surface_height;
> >>>>
> >>>> - mode_cmd.pitches[0] = ALIGN(mode_cmd.width *
> >>>> - DIV_ROUND_UP(sizes->surface_bpp, 8), 64);
> >>>> + mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
> >>>> mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
> >>>> sizes->surface_depth);
> >>>>
> >>>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> >>>> index 668ae355f5e5..caeb543d5efc 100644
> >>>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> >>>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> >>>> @@ -6,6 +6,8 @@
> >>>> #ifndef __INTEL_FBDEV_FB_H__
> >>>> #define __INTEL_FBDEV_FB_H__
> >>>>
> >>>> +#include <linux/types.h>
> >>>> +
> >>>> struct drm_device;
> >>>> struct drm_fb_helper_surface_size;
> >>>> struct drm_gem_object;
> >>>> @@ -13,6 +15,7 @@ struct fb_info;
> >>>> struct i915_vma;
> >>>> struct intel_display;
> >>>>
> >>>> +u32 intel_fbdev_fb_pitch_align(u32 stride);
> >>>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> >>>> struct drm_fb_helper_surface_size *sizes);
> >>>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> >>>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> >>>> index bafca1059a40..fd2c40020eea 100644
> >>>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> >>>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> >>>> @@ -15,6 +15,11 @@
> >>>>
> >>>> #include <generated/xe_wa_oob.h>
> >>>>
> >>>> +u32 intel_fbdev_fb_pitch_align(u32 stride)
> >>>> +{
> >>>> + return ALIGN(stride, XE_PAGE_SIZE);
> >>>
> >>> I think someone needs to explain what the heck this extra alignment
> >>> is trying to achieve? I suspect it just needs to get nuked.
> >>
> >> That would indeed be great, and allow even further cleanup. I'm just
> >> trying to find the common parts here, and not so much dig into every
> >> little detail that differs.
> >>
> >> I did git blame this while writing the patch, and it's all in the big xe
> >> driver enabling commit. I'm not sure where it comes from.
> >>
> >> Cc: Maarten, any ideas?
> >
> > It doesn't help much, but https://lore.kernel.org/intel-xe/20231114110056.2423853-5-jouni.hogander@intel.com/
> > was the first time this align got added.
> >
> > Adding some people to Cc.
> >
> > Lucas De Marchi
>
> If I really recall correctly, it was to ensure size was a multiple of 4k and dumb bo allocation would not fail.
> This was at the very start of xe enabling.
>
> i915 bo alloc allows any size, xe is much stricter. If it works with the hack removed and the bo gets 64k aligned
> on discrete, then this probably can be dropped.
It's aligning stride, not the size. So doesn't make sense. The only
time you need page alignment for stride is for remapping, which is
handled correctly by i915 in the dumb bo codepath and not handled at all
by xe as usual.
I suspect what we really should do for the fbdev allocation is to use
the dump bo code, and make sure that code works the same way for i915
and xe.
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-08 16:27 ` Ville Syrjälä
@ 2025-09-16 11:44 ` Jani Nikula
2025-09-16 19:19 ` Ville Syrjälä
0 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-16 11:44 UTC (permalink / raw)
To: Ville Syrjälä, Maarten Lankhorst
Cc: Lucas De Marchi, intel-gfx, intel-xe, Jouni Högander,
Vinod Govindapillai, Saarinen, Jani
On Mon, 08 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> It's aligning stride, not the size. So doesn't make sense. The only
> time you need page alignment for stride is for remapping, which is
> handled correctly by i915 in the dumb bo codepath and not handled at all
> by xe as usual.
>
> I suspect what we really should do for the fbdev allocation is to use
> the dump bo code, and make sure that code works the same way for i915
> and xe.
So what does it mean in practise and who's going to do this?
I'm trying to a) clarify what's i915/xe specific, b) minimize those
parts by pulling in common code to display, and c) finally making the
remaining i915/xe core specific parts independent of display. I'm trying
to make incremental forward progress.
But I just can't sign up for fixing up absolutely everything. Some of it
is technical debt going all the way back to 44e694958b95
("drm/xe/display: Implement display support"). I think many of the
interfaces between i915 and xe around bo's are way too high level, but
there's clear "impedance mismatch" between a lot of i915 and xe specific
things, and they just don't map 1:1 nicely.
BR,
Jani.
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-16 11:44 ` Jani Nikula
@ 2025-09-16 19:19 ` Ville Syrjälä
2025-09-18 8:43 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-16 19:19 UTC (permalink / raw)
To: Jani Nikula
Cc: Maarten Lankhorst, Lucas De Marchi, intel-gfx, intel-xe,
Jouni Högander, Vinod Govindapillai, Saarinen, Jani
On Tue, Sep 16, 2025 at 02:44:53PM +0300, Jani Nikula wrote:
> On Mon, 08 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> > It's aligning stride, not the size. So doesn't make sense. The only
> > time you need page alignment for stride is for remapping, which is
> > handled correctly by i915 in the dumb bo codepath and not handled at all
> > by xe as usual.
> >
> > I suspect what we really should do for the fbdev allocation is to use
> > the dump bo code, and make sure that code works the same way for i915
> > and xe.
>
> So what does it mean in practise and who's going to do this?
For now I'd be happy if someone just nukes that bogus page alignemnt
of the stride on xe, allowing i915 and xe to use the same code here.
Reusing the dumb bo code would probably be quite a bit of work, and
doesn't seem necessary to solve the immediate problems.
>
> I'm trying to a) clarify what's i915/xe specific, b) minimize those
> parts by pulling in common code to display, and c) finally making the
> remaining i915/xe core specific parts independent of display. I'm trying
> to make incremental forward progress.
>
> But I just can't sign up for fixing up absolutely everything. Some of it
> is technical debt going all the way back to 44e694958b95
> ("drm/xe/display: Implement display support"). I think many of the
> interfaces between i915 and xe around bo's are way too high level, but
> there's clear "impedance mismatch" between a lot of i915 and xe specific
> things, and they just don't map 1:1 nicely.
>
>
> BR,
> Jani.
>
>
> --
> Jani Nikula, Intel
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-16 19:19 ` Ville Syrjälä
@ 2025-09-18 8:43 ` Jani Nikula
2025-10-13 13:52 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-18 8:43 UTC (permalink / raw)
To: Ville Syrjälä
Cc: Maarten Lankhorst, Lucas De Marchi, intel-gfx, intel-xe,
Jouni Högander, Vinod Govindapillai, Saarinen, Jani
On Tue, 16 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> For now I'd be happy if someone just nukes that bogus page alignemnt
> of the stride on xe, allowing i915 and xe to use the same code here.
I hope just [1] is enough for this.
[1] https://lore.kernel.org/r/7f4972104de8b179d5724ae83892ee294d3f3fd3.1758184771.git.jani.nikula@intel.com
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-09-18 8:43 ` Jani Nikula
@ 2025-10-13 13:52 ` Jani Nikula
2025-10-13 17:19 ` Ville Syrjälä
0 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-10-13 13:52 UTC (permalink / raw)
To: Ville Syrjälä
Cc: Maarten Lankhorst, Lucas De Marchi, intel-gfx, intel-xe,
Jouni Högander, Vinod Govindapillai, Saarinen, Jani
On Thu, 18 Sep 2025, Jani Nikula <jani.nikula@intel.com> wrote:
> On Tue, 16 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
>> For now I'd be happy if someone just nukes that bogus page alignemnt
>> of the stride on xe, allowing i915 and xe to use the same code here.
>
> I hope just [1] is enough for this.
>
> [1] https://lore.kernel.org/r/7f4972104de8b179d5724ae83892ee294d3f3fd3.1758184771.git.jani.nikula@intel.com
So that regressed [2]. (Bisected internally, unfortunately not reported
on the gitlab issue.) Any ideas, before I go on and resurrect this patch
adding different strides for i915 and xe?
BR,
Jani.
[2] https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/6220
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-10-13 13:52 ` Jani Nikula
@ 2025-10-13 17:19 ` Ville Syrjälä
2025-10-14 4:48 ` Hogander, Jouni
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-10-13 17:19 UTC (permalink / raw)
To: Jani Nikula
Cc: Maarten Lankhorst, Lucas De Marchi, intel-gfx, intel-xe,
Jouni Högander, Vinod Govindapillai, Saarinen, Jani
On Mon, Oct 13, 2025 at 04:52:04PM +0300, Jani Nikula wrote:
> On Thu, 18 Sep 2025, Jani Nikula <jani.nikula@intel.com> wrote:
> > On Tue, 16 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> >> For now I'd be happy if someone just nukes that bogus page alignemnt
> >> of the stride on xe, allowing i915 and xe to use the same code here.
> >
> > I hope just [1] is enough for this.
> >
> > [1] https://lore.kernel.org/r/7f4972104de8b179d5724ae83892ee294d3f3fd3.1758184771.git.jani.nikula@intel.com
>
> So that regressed [2]. (Bisected internally, unfortunately not reported
> on the gitlab issue.) Any ideas, before I go on and resurrect this patch
> adding different strides for i915 and xe?
That bisect doesn't make any real sense to me unless there's an existing
bug in the xe code where it fails to pin (and somehow the smaller stride
alignment makes it fail) but it still reports success to the caller.
Unfortunately that code in xe is completely illegible due the scoped
guard mess. So it's darn near impossible to see with a visual inspection
where it might silently fail. I think someone will need to sprinkle
debugs all over that code to track what is happening to the pin count.
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 2/9] drm/{i915, xe}/fbdev: add intel_fbdev_fb_pitch_align()
2025-10-13 17:19 ` Ville Syrjälä
@ 2025-10-14 4:48 ` Hogander, Jouni
0 siblings, 0 replies; 32+ messages in thread
From: Hogander, Jouni @ 2025-10-14 4:48 UTC (permalink / raw)
To: ville.syrjala@linux.intel.com, Nikula, Jani
Cc: dev@lankhorst.se, intel-xe@lists.freedesktop.org, Saarinen, Jani,
intel-gfx@lists.freedesktop.org, De Marchi, Lucas,
Govindapillai, Vinod
On Mon, 2025-10-13 at 20:19 +0300, Ville Syrjälä wrote:
> On Mon, Oct 13, 2025 at 04:52:04PM +0300, Jani Nikula wrote:
> > On Thu, 18 Sep 2025, Jani Nikula <jani.nikula@intel.com> wrote:
> > > On Tue, 16 Sep 2025, Ville Syrjälä
> > > <ville.syrjala@linux.intel.com> wrote:
> > > > For now I'd be happy if someone just nukes that bogus page
> > > > alignemnt
> > > > of the stride on xe, allowing i915 and xe to use the same code
> > > > here.
> > >
> > > I hope just [1] is enough for this.
> > >
> > > [1]
> > > https://lore.kernel.org/r/7f4972104de8b179d5724ae83892ee294d3f3fd3.1758184771.git.jani.nikula@intel.com
> >
> > So that regressed [2]. (Bisected internally, unfortunately not
> > reported
> > on the gitlab issue.) Any ideas, before I go on and resurrect this
> > patch
> > adding different strides for i915 and xe?
>
> That bisect doesn't make any real sense to me unless there's an
> existing
> bug in the xe code where it fails to pin (and somehow the smaller
> stride
> alignment makes it fail) but it still reports success to the caller.
Checked out drm-tip at 9c80ebfdd8460e69b35f5382f3e93a2a33a64e4f. Using
that hash + setup where seen earlier the issue is easily reproducing.
Reverted patches from the set which Jani is referring. After reverting
"[PATCH v2 01/10] drm/xe/fbdev: use the same 64-byte stride alignment
as i915" issue is not reproducing anymore.
I couldn't reproduce the issue using latest drm-tip but it is anyways
sporadic. It is seen in our CI testing with recent drm-tip as well.
BR,
Jouni Högander
>
> Unfortunately that code in xe is completely illegible due the scoped
> guard mess. So it's darn near impossible to see with a visual
> inspection
> where it might silently fail. I think someone will need to sprinkle
> debugs all over that code to track what is happening to the pin
> count.
>
^ permalink raw reply [flat|nested] 32+ messages in thread
* [PATCH 3/9] drm/{i915, xe}/fbdev: deduplicate struct drm_mode_fb_cmd2 init
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
2025-09-03 20:31 ` [PATCH 1/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_alloc() Jani Nikula
2025-09-03 20:31 ` [PATCH 2/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_pitch_align() Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-03 20:32 ` [PATCH 4/9] drm/i915/fbdev: abstract bo creation Jani Nikula
` (9 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
Pull struct drm_mode_fb_cmd2 initialization out of the driver dependent
code into shared display code.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev.c | 32 ++++++++++++++++++-
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 24 ++++----------
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 4 +--
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 24 ++++----------
4 files changed, 45 insertions(+), 39 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
index 46c6de5f6088..5ac66fb88fcf 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
@@ -207,6 +207,35 @@ static const struct drm_fb_helper_funcs intel_fb_helper_funcs = {
.fb_set_suspend = intelfb_set_suspend,
};
+static void intel_fbdev_fill_mode_cmd(struct drm_fb_helper_surface_size *sizes,
+ struct drm_mode_fb_cmd2 *mode_cmd)
+{
+ /* we don't do packed 24bpp */
+ if (sizes->surface_bpp == 24)
+ sizes->surface_bpp = 32;
+
+ mode_cmd->width = sizes->surface_width;
+ mode_cmd->height = sizes->surface_height;
+
+ mode_cmd->pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd->width * DIV_ROUND_UP(sizes->surface_bpp, 8));
+ mode_cmd->pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
+ sizes->surface_depth);
+}
+
+static struct intel_framebuffer *
+__intel_fbdev_fb_alloc(struct intel_display *display,
+ struct drm_fb_helper_surface_size *sizes)
+{
+ struct drm_mode_fb_cmd2 mode_cmd = {};
+ struct intel_framebuffer *fb;
+
+ intel_fbdev_fill_mode_cmd(sizes, &mode_cmd);
+
+ fb = intel_fbdev_fb_alloc(display->drm, &mode_cmd);
+
+ return fb;
+}
+
int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
struct drm_fb_helper_surface_size *sizes)
{
@@ -237,7 +266,8 @@ int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
if (!fb || drm_WARN_ON(display->drm, !intel_fb_bo(&fb->base))) {
drm_dbg_kms(display->drm,
"no BIOS fb, allocating a new one\n");
- fb = intel_fbdev_fb_alloc(display->drm, sizes);
+
+ fb = __intel_fbdev_fb_alloc(display, sizes);
if (IS_ERR(fb))
return PTR_ERR(fb);
} else {
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index d1c03d7b9bdc..4710859718a0 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -3,7 +3,7 @@
* Copyright © 2023 Intel Corporation
*/
-#include <drm/drm_fb_helper.h>
+#include <linux/fb.h>
#include "gem/i915_gem_lmem.h"
@@ -19,27 +19,15 @@ u32 intel_fbdev_fb_pitch_align(u32 stride)
}
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_fb_helper_surface_size *sizes)
+ struct drm_mode_fb_cmd2 *mode_cmd)
{
struct intel_display *display = to_intel_display(drm);
struct drm_i915_private *dev_priv = to_i915(drm);
struct drm_framebuffer *fb;
- struct drm_mode_fb_cmd2 mode_cmd = {};
struct drm_i915_gem_object *obj;
int size;
- /* we don't do packed 24bpp */
- if (sizes->surface_bpp == 24)
- sizes->surface_bpp = 32;
-
- mode_cmd.width = sizes->surface_width;
- mode_cmd.height = sizes->surface_height;
-
- mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
- mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
- sizes->surface_depth);
-
- size = mode_cmd.pitches[0] * mode_cmd.height;
+ size = mode_cmd->pitches[0] * mode_cmd->height;
size = PAGE_ALIGN(size);
obj = ERR_PTR(-ENODEV);
@@ -68,9 +56,9 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
drm_get_format_info(drm,
- mode_cmd.pixel_format,
- mode_cmd.modifier[0]),
- &mode_cmd);
+ mode_cmd->pixel_format,
+ mode_cmd->modifier[0]),
+ mode_cmd);
i915_gem_object_put(obj);
return to_intel_framebuffer(fb);
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index caeb543d5efc..11c2d4b54ab0 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -9,15 +9,15 @@
#include <linux/types.h>
struct drm_device;
-struct drm_fb_helper_surface_size;
struct drm_gem_object;
+struct drm_mode_fb_cmd2;
struct fb_info;
struct i915_vma;
struct intel_display;
u32 intel_fbdev_fb_pitch_align(u32 stride);
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_fb_helper_surface_size *sizes);
+ struct drm_mode_fb_cmd2 *mode_cmd);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
struct drm_gem_object *obj, struct i915_vma *vma);
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index fd2c40020eea..8e2f338d36fa 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -3,7 +3,7 @@
* Copyright © 2023 Intel Corporation
*/
-#include <drm/drm_fb_helper.h>
+#include <linux/fb.h>
#include "intel_display_core.h"
#include "intel_display_types.h"
@@ -21,26 +21,14 @@ u32 intel_fbdev_fb_pitch_align(u32 stride)
}
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_fb_helper_surface_size *sizes)
+ struct drm_mode_fb_cmd2 *mode_cmd)
{
struct drm_framebuffer *fb;
struct xe_device *xe = to_xe_device(drm);
- struct drm_mode_fb_cmd2 mode_cmd = {};
struct xe_bo *obj;
int size;
- /* we don't do packed 24bpp */
- if (sizes->surface_bpp == 24)
- sizes->surface_bpp = 32;
-
- mode_cmd.width = sizes->surface_width;
- mode_cmd.height = sizes->surface_height;
-
- mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
- mode_cmd.pixel_format = drm_mode_legacy_fb_format(sizes->surface_bpp,
- sizes->surface_depth);
-
- size = mode_cmd.pitches[0] * mode_cmd.height;
+ size = mode_cmd->pitches[0] * mode_cmd->height;
size = PAGE_ALIGN(size);
obj = ERR_PTR(-ENODEV);
@@ -71,9 +59,9 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
fb = intel_framebuffer_create(&obj->ttm.base,
drm_get_format_info(drm,
- mode_cmd.pixel_format,
- mode_cmd.modifier[0]),
- &mode_cmd);
+ mode_cmd->pixel_format,
+ mode_cmd->modifier[0]),
+ mode_cmd);
if (IS_ERR(fb)) {
xe_bo_unpin_map_no_vm(obj);
goto err;
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* [PATCH 4/9] drm/i915/fbdev: abstract bo creation
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (2 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 3/9] drm/{i915, xe}/fbdev: deduplicate struct drm_mode_fb_cmd2 init Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-03 20:32 ` [PATCH 5/9] drm/xe/fbdev: " Jani Nikula
` (8 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
Separate fbdev bo creation into a separate function
intel_fbdev_fb_bo_create().
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 33 ++++++++++++++-----
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
2 files changed, 25 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 4710859718a0..3837973b0d25 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -18,17 +18,11 @@ u32 intel_fbdev_fb_pitch_align(u32 stride)
return ALIGN(stride, 64);
}
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_mode_fb_cmd2 *mode_cmd)
+struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size)
{
struct intel_display *display = to_intel_display(drm);
struct drm_i915_private *dev_priv = to_i915(drm);
- struct drm_framebuffer *fb;
struct drm_i915_gem_object *obj;
- int size;
-
- size = mode_cmd->pitches[0] * mode_cmd->height;
- size = PAGE_ALIGN(size);
obj = ERR_PTR(-ENODEV);
if (HAS_LMEM(dev_priv)) {
@@ -54,14 +48,35 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
return ERR_PTR(-ENOMEM);
}
- fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
+ return &obj->base;
+}
+
+struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
+ struct drm_mode_fb_cmd2 *mode_cmd)
+{
+ struct drm_framebuffer *fb;
+ struct drm_gem_object *obj;
+ int size;
+
+ size = mode_cmd->pitches[0] * mode_cmd->height;
+ size = PAGE_ALIGN(size);
+
+ obj = intel_fbdev_fb_bo_create(drm, size);
+ if (IS_ERR(obj)) {
+ fb = ERR_CAST(obj);
+ goto err;
+ }
+
+ fb = intel_framebuffer_create(obj,
drm_get_format_info(drm,
mode_cmd->pixel_format,
mode_cmd->modifier[0]),
mode_cmd);
- i915_gem_object_put(obj);
+ drm_gem_object_put(obj);
return to_intel_framebuffer(fb);
+err:
+ return ERR_CAST(fb);
}
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index 11c2d4b54ab0..b10c4635bf46 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -16,6 +16,7 @@ struct i915_vma;
struct intel_display;
u32 intel_fbdev_fb_pitch_align(u32 stride);
+struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* [PATCH 5/9] drm/xe/fbdev: abstract bo creation
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (3 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 4/9] drm/i915/fbdev: abstract bo creation Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-03 20:32 ` [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy() Jani Nikula
` (7 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
Separate fbdev bo creation into a separate function
intel_fbdev_fb_bo_create().
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 33 ++++++++++++++-------
1 file changed, 23 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index 8e2f338d36fa..9a5d14d5781a 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -20,16 +20,11 @@ u32 intel_fbdev_fb_pitch_align(u32 stride)
return ALIGN(stride, XE_PAGE_SIZE);
}
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_mode_fb_cmd2 *mode_cmd)
+struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size)
{
- struct drm_framebuffer *fb;
struct xe_device *xe = to_xe_device(drm);
struct xe_bo *obj;
- int size;
- size = mode_cmd->pitches[0] * mode_cmd->height;
- size = PAGE_ALIGN(size);
obj = ERR_PTR(-ENODEV);
if (!IS_DGFX(xe) && !XE_GT_WA(xe_root_mmio_gt(xe), 22019338487_display)) {
@@ -53,21 +48,39 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
if (IS_ERR(obj)) {
drm_err(&xe->drm, "failed to allocate framebuffer (%pe)\n", obj);
- fb = ERR_PTR(-ENOMEM);
+ return ERR_PTR(-ENOMEM);
+ }
+
+ return &obj->ttm.base;
+}
+
+struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
+ struct drm_mode_fb_cmd2 *mode_cmd)
+{
+ struct drm_framebuffer *fb;
+ struct drm_gem_object *obj;
+ int size;
+
+ size = mode_cmd->pitches[0] * mode_cmd->height;
+ size = PAGE_ALIGN(size);
+
+ obj = intel_fbdev_fb_bo_create(drm, size);
+ if (IS_ERR(obj)) {
+ fb = ERR_CAST(obj);
goto err;
}
- fb = intel_framebuffer_create(&obj->ttm.base,
+ fb = intel_framebuffer_create(obj,
drm_get_format_info(drm,
mode_cmd->pixel_format,
mode_cmd->modifier[0]),
mode_cmd);
if (IS_ERR(fb)) {
- xe_bo_unpin_map_no_vm(obj);
+ xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
goto err;
}
- drm_gem_object_put(&obj->ttm.base);
+ drm_gem_object_put(obj);
return to_intel_framebuffer(fb);
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (4 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 5/9] drm/xe/fbdev: " Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-04 14:37 ` Ville Syrjälä
2025-09-03 20:32 ` [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation Jani Nikula
` (6 subsequent siblings)
12 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
to enable further refactoring.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
3 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 3837973b0d25..6b70823ce5ef 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
return &obj->base;
}
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
+{
+ /* nop? */
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd)
{
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index b10c4635bf46..6d6f316834df 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -17,6 +17,7 @@ struct intel_display;
u32 intel_fbdev_fb_pitch_align(u32 stride);
struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index 9a5d14d5781a..9a5cf50ea7de 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -54,6 +54,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
return &obj->ttm.base;
}
+void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
+{
+ xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
+}
+
struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
struct drm_mode_fb_cmd2 *mode_cmd)
{
@@ -76,7 +81,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
mode_cmd->modifier[0]),
mode_cmd);
if (IS_ERR(fb)) {
- xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
+ intel_fbdev_fb_bo_destroy(obj);
goto err;
}
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* Re: [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-03 20:32 ` [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy() Jani Nikula
@ 2025-09-04 14:37 ` Ville Syrjälä
2025-09-08 13:01 ` Jani Nikula
2025-09-17 12:33 ` Jani Nikula
0 siblings, 2 replies; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-04 14:37 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx, intel-xe
On Wed, Sep 03, 2025 at 11:32:03PM +0300, Jani Nikula wrote:
> xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
> to enable further refactoring.
>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
> 3 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> index 3837973b0d25..6b70823ce5ef 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> @@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
> return &obj->base;
> }
>
> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
> +{
> + /* nop? */
gem_object_put() is what destroys the bo on i915, so I think you're
introducing a leak in the next patch with this nop implementation.
xe seems to be riddled with footguns here since it conflates
creation+pinning+whatever in the same thing (and I guess it
doesn't know how to clean all that up when the last reference
to the object disappears?) and you have to use that horribly
misnamed function instead...
> +}
> +
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_mode_fb_cmd2 *mode_cmd)
> {
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> index b10c4635bf46..6d6f316834df 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> @@ -17,6 +17,7 @@ struct intel_display;
>
> u32 intel_fbdev_fb_pitch_align(u32 stride);
> struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_mode_fb_cmd2 *mode_cmd);
> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> index 9a5d14d5781a..9a5cf50ea7de 100644
> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> @@ -54,6 +54,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
> return &obj->ttm.base;
> }
>
> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
> +{
> + xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
> +}
> +
> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> struct drm_mode_fb_cmd2 *mode_cmd)
> {
> @@ -76,7 +81,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> mode_cmd->modifier[0]),
> mode_cmd);
> if (IS_ERR(fb)) {
> - xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
> + intel_fbdev_fb_bo_destroy(obj);
> goto err;
> }
>
> --
> 2.47.2
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-04 14:37 ` Ville Syrjälä
@ 2025-09-08 13:01 ` Jani Nikula
2025-09-17 12:33 ` Jani Nikula
1 sibling, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-08 13:01 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, intel-xe
On Thu, 04 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Sep 03, 2025 at 11:32:03PM +0300, Jani Nikula wrote:
>> xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
>> to enable further refactoring.
>>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
>> 3 files changed, 12 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> index 3837973b0d25..6b70823ce5ef 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> @@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
>> return &obj->base;
>> }
>>
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> +{
>> + /* nop? */
>
> gem_object_put() is what destroys the bo on i915, so I think you're
> introducing a leak in the next patch with this nop implementation.
>
> xe seems to be riddled with footguns here since it conflates
> creation+pinning+whatever in the same thing (and I guess it
> doesn't know how to clean all that up when the last reference
> to the object disappears?) and you have to use that horribly
> misnamed function instead...
*sigh*
I really wish we had someone actually well versed in i915/gem and xe/ttm
and all that figuring out the necessary building blocks of the common
API. I think as it is these are too high level, necessarily putting too
much display code in i915 and xe cores. We desperately need better
abstractions between the two drivers.
Yeah, I'm not that person, but here I am doing it anyway.
BR,
Jani.
>
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd)
>> {
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> index b10c4635bf46..6d6f316834df 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> @@ -17,6 +17,7 @@ struct intel_display;
>>
>> u32 intel_fbdev_fb_pitch_align(u32 stride);
>> struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd);
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> index 9a5d14d5781a..9a5cf50ea7de 100644
>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> @@ -54,6 +54,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
>> return &obj->ttm.base;
>> }
>>
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> +{
>> + xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd)
>> {
>> @@ -76,7 +81,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> mode_cmd->modifier[0]),
>> mode_cmd);
>> if (IS_ERR(fb)) {
>> - xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
>> + intel_fbdev_fb_bo_destroy(obj);
>> goto err;
>> }
>>
>> --
>> 2.47.2
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-04 14:37 ` Ville Syrjälä
2025-09-08 13:01 ` Jani Nikula
@ 2025-09-17 12:33 ` Jani Nikula
2025-09-17 14:07 ` Ville Syrjälä
1 sibling, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-17 12:33 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, intel-xe
On Thu, 04 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Sep 03, 2025 at 11:32:03PM +0300, Jani Nikula wrote:
>> xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
>> to enable further refactoring.
>>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
>> 3 files changed, 12 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> index 3837973b0d25..6b70823ce5ef 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> @@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
>> return &obj->base;
>> }
>>
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> +{
>> + /* nop? */
>
> gem_object_put() is what destroys the bo on i915, so I think you're
> introducing a leak in the next patch with this nop implementation.
>
> xe seems to be riddled with footguns here since it conflates
> creation+pinning+whatever in the same thing (and I guess it
> doesn't know how to clean all that up when the last reference
> to the object disappears?) and you have to use that horribly
> misnamed function instead...
Hmm, can we just slap i915_gem_object_put(obj) in there?
The i915 variant of intel_fbdev_fb_alloc() ignores errors from
intel_framebuffer_create() and just unconditionally does
i915_gem_object_put() afterwards:
fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
drm_get_format_info(display->drm,
mode_cmd.pixel_format,
mode_cmd.modifier[0]),
&mode_cmd);
i915_gem_object_put(obj);
return to_intel_framebuffer(fb);
Presumably the refcounts are handled correctly either way.
It's just a bit fishy that the potential error pointer from
intel_framebuffer_create() goes through to_intel_framebuffer() to the
caller.
BR,
Jani.
>
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd)
>> {
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> index b10c4635bf46..6d6f316834df 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> @@ -17,6 +17,7 @@ struct intel_display;
>>
>> u32 intel_fbdev_fb_pitch_align(u32 stride);
>> struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd);
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> index 9a5d14d5781a..9a5cf50ea7de 100644
>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> @@ -54,6 +54,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
>> return &obj->ttm.base;
>> }
>>
>> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> +{
>> + xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
>> +}
>> +
>> struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> struct drm_mode_fb_cmd2 *mode_cmd)
>> {
>> @@ -76,7 +81,7 @@ struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> mode_cmd->modifier[0]),
>> mode_cmd);
>> if (IS_ERR(fb)) {
>> - xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
>> + intel_fbdev_fb_bo_destroy(obj);
>> goto err;
>> }
>>
>> --
>> 2.47.2
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-17 12:33 ` Jani Nikula
@ 2025-09-17 14:07 ` Ville Syrjälä
2025-09-18 8:46 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-17 14:07 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx, intel-xe
On Wed, Sep 17, 2025 at 03:33:31PM +0300, Jani Nikula wrote:
> On Thu, 04 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> > On Wed, Sep 03, 2025 at 11:32:03PM +0300, Jani Nikula wrote:
> >> xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
> >> to enable further refactoring.
> >>
> >> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> >> ---
> >> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
> >> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
> >> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
> >> 3 files changed, 12 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >> index 3837973b0d25..6b70823ce5ef 100644
> >> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> >> @@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
> >> return &obj->base;
> >> }
> >>
> >> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
> >> +{
> >> + /* nop? */
> >
> > gem_object_put() is what destroys the bo on i915, so I think you're
> > introducing a leak in the next patch with this nop implementation.
> >
> > xe seems to be riddled with footguns here since it conflates
> > creation+pinning+whatever in the same thing (and I guess it
> > doesn't know how to clean all that up when the last reference
> > to the object disappears?) and you have to use that horribly
> > misnamed function instead...
>
> Hmm, can we just slap i915_gem_object_put(obj) in there?
That would at least match how it behaves currently. Though I
didn't look too deeply whether that is 100% sufficient to clean
up properly.
>
> The i915 variant of intel_fbdev_fb_alloc() ignores errors from
> intel_framebuffer_create() and just unconditionally does
> i915_gem_object_put() afterwards:
>
> fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
> drm_get_format_info(display->drm,
> mode_cmd.pixel_format,
> mode_cmd.modifier[0]),
> &mode_cmd);
> i915_gem_object_put(obj);
>
> return to_intel_framebuffer(fb);
>
> Presumably the refcounts are handled correctly either way.
>
> It's just a bit fishy that the potential error pointer from
> intel_framebuffer_create() goes through to_intel_framebuffer() to the
> caller.
Yeah, would be less confusing to just check for the error
explicitly.
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
2025-09-17 14:07 ` Ville Syrjälä
@ 2025-09-18 8:46 ` Jani Nikula
0 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-18 8:46 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, intel-xe
On Wed, 17 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Sep 17, 2025 at 03:33:31PM +0300, Jani Nikula wrote:
>> On Thu, 04 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
>> > On Wed, Sep 03, 2025 at 11:32:03PM +0300, Jani Nikula wrote:
>> >> xe does xe_bo_unpin_map_no_vm() on the failure path. Add a common helper
>> >> to enable further refactoring.
>> >>
>> >> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> >> ---
>> >> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +++++
>> >> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 1 +
>> >> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 7 ++++++-
>> >> 3 files changed, 12 insertions(+), 1 deletion(-)
>> >>
>> >> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> >> index 3837973b0d25..6b70823ce5ef 100644
>> >> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> >> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> >> @@ -51,6 +51,11 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
>> >> return &obj->base;
>> >> }
>> >>
>> >> +void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> >> +{
>> >> + /* nop? */
>> >
>> > gem_object_put() is what destroys the bo on i915, so I think you're
>> > introducing a leak in the next patch with this nop implementation.
>> >
>> > xe seems to be riddled with footguns here since it conflates
>> > creation+pinning+whatever in the same thing (and I guess it
>> > doesn't know how to clean all that up when the last reference
>> > to the object disappears?) and you have to use that horribly
>> > misnamed function instead...
>>
>> Hmm, can we just slap i915_gem_object_put(obj) in there?
>
> That would at least match how it behaves currently. Though I
> didn't look too deeply whether that is 100% sufficient to clean
> up properly.
I'm doing just that in [1].
[1] https://lore.kernel.org/r/22bc3c3158f5a22ab258ada8684766fdf75fefec.1758184771.git.jani.nikula@intel.com
>>
>> The i915 variant of intel_fbdev_fb_alloc() ignores errors from
>> intel_framebuffer_create() and just unconditionally does
>> i915_gem_object_put() afterwards:
>>
>> fb = intel_framebuffer_create(intel_bo_to_drm_bo(obj),
>> drm_get_format_info(display->drm,
>> mode_cmd.pixel_format,
>> mode_cmd.modifier[0]),
>> &mode_cmd);
>> i915_gem_object_put(obj);
>>
>> return to_intel_framebuffer(fb);
>>
>> Presumably the refcounts are handled correctly either way.
>>
>> It's just a bit fishy that the potential error pointer from
>> intel_framebuffer_create() goes through to_intel_framebuffer() to the
>> caller.
>
> Yeah, would be less confusing to just check for the error
> explicitly.
Added a new patch for that [2].
[2] https://lore.kernel.org/r/17631db227d527d6c67f5d6b67adec1ff8dc6f8d.1758184771.git.jani.nikula@intel.com
Together, I believe [1] and [2] keep the current behaviour
intact. Whether that's 100% correct or not, I couldn't say, but at least
I'm shouldn't be introducing any new issues.
BR,
Jani.
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread
* [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (5 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 6/9] drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy() Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-04 14:39 ` Ville Syrjälä
2025-09-03 20:32 ` [PATCH 8/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_fill_info() Jani Nikula
` (5 subsequent siblings)
12 siblings, 1 reply; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
With the bo creation helper in place, we can lift
intel_framebuffer_create() part to common code.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev.c | 31 ++++++++++++++--
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 29 ---------------
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 2 --
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 35 -------------------
4 files changed, 28 insertions(+), 69 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
index 5ac66fb88fcf..d7131de5c7ac 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
@@ -227,13 +227,38 @@ __intel_fbdev_fb_alloc(struct intel_display *display,
struct drm_fb_helper_surface_size *sizes)
{
struct drm_mode_fb_cmd2 mode_cmd = {};
- struct intel_framebuffer *fb;
+ struct drm_framebuffer *fb;
+ struct drm_gem_object *obj;
+ int size;
intel_fbdev_fill_mode_cmd(sizes, &mode_cmd);
- fb = intel_fbdev_fb_alloc(display->drm, &mode_cmd);
+ size = mode_cmd.pitches[0] * mode_cmd.height;
+ size = PAGE_ALIGN(size);
+
+ obj = intel_fbdev_fb_bo_create(display->drm, size);
+ if (IS_ERR(obj)) {
+ fb = ERR_CAST(obj);
+ goto err;
+ }
+
+ fb = intel_framebuffer_create(obj,
+ drm_get_format_info(display->drm,
+ mode_cmd.pixel_format,
+ mode_cmd.modifier[0]),
+ &mode_cmd);
+ if (IS_ERR(fb)) {
+ intel_fbdev_fb_bo_destroy(obj);
+ goto err;
+ }
+
+ drm_gem_object_put(obj);
+
+ return to_intel_framebuffer(fb);
+
+err:
+ return ERR_CAST(fb);
- return fb;
}
int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 6b70823ce5ef..1ac62a064936 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -10,7 +10,6 @@
#include "i915_drv.h"
#include "intel_display_core.h"
#include "intel_display_types.h"
-#include "intel_fb.h"
#include "intel_fbdev_fb.h"
u32 intel_fbdev_fb_pitch_align(u32 stride)
@@ -56,34 +55,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
/* nop? */
}
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_mode_fb_cmd2 *mode_cmd)
-{
- struct drm_framebuffer *fb;
- struct drm_gem_object *obj;
- int size;
-
- size = mode_cmd->pitches[0] * mode_cmd->height;
- size = PAGE_ALIGN(size);
-
- obj = intel_fbdev_fb_bo_create(drm, size);
- if (IS_ERR(obj)) {
- fb = ERR_CAST(obj);
- goto err;
- }
-
- fb = intel_framebuffer_create(obj,
- drm_get_format_info(drm,
- mode_cmd->pixel_format,
- mode_cmd->modifier[0]),
- mode_cmd);
- drm_gem_object_put(obj);
-
- return to_intel_framebuffer(fb);
-err:
- return ERR_CAST(fb);
-}
-
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
struct drm_gem_object *_obj, struct i915_vma *vma)
{
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index 6d6f316834df..bb0ce3a85ff9 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -18,8 +18,6 @@ struct intel_display;
u32 intel_fbdev_fb_pitch_align(u32 stride);
struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_mode_fb_cmd2 *mode_cmd);
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
struct drm_gem_object *obj, struct i915_vma *vma);
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index 9a5cf50ea7de..2e8490a8cdb1 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -7,7 +7,6 @@
#include "intel_display_core.h"
#include "intel_display_types.h"
-#include "intel_fb.h"
#include "intel_fbdev_fb.h"
#include "xe_bo.h"
#include "xe_ttm_stolen_mgr.h"
@@ -59,40 +58,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
}
-struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
- struct drm_mode_fb_cmd2 *mode_cmd)
-{
- struct drm_framebuffer *fb;
- struct drm_gem_object *obj;
- int size;
-
- size = mode_cmd->pitches[0] * mode_cmd->height;
- size = PAGE_ALIGN(size);
-
- obj = intel_fbdev_fb_bo_create(drm, size);
- if (IS_ERR(obj)) {
- fb = ERR_CAST(obj);
- goto err;
- }
-
- fb = intel_framebuffer_create(obj,
- drm_get_format_info(drm,
- mode_cmd->pixel_format,
- mode_cmd->modifier[0]),
- mode_cmd);
- if (IS_ERR(fb)) {
- intel_fbdev_fb_bo_destroy(obj);
- goto err;
- }
-
- drm_gem_object_put(obj);
-
- return to_intel_framebuffer(fb);
-
-err:
- return ERR_CAST(fb);
-}
-
int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
struct drm_gem_object *_obj, struct i915_vma *vma)
{
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* Re: [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation
2025-09-03 20:32 ` [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation Jani Nikula
@ 2025-09-04 14:39 ` Ville Syrjälä
2025-09-08 12:57 ` Jani Nikula
0 siblings, 1 reply; 32+ messages in thread
From: Ville Syrjälä @ 2025-09-04 14:39 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx, intel-xe
On Wed, Sep 03, 2025 at 11:32:04PM +0300, Jani Nikula wrote:
> With the bo creation helper in place, we can lift
> intel_framebuffer_create() part to common code.
>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_fbdev.c | 31 ++++++++++++++--
> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 29 ---------------
> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 2 --
> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 35 -------------------
> 4 files changed, 28 insertions(+), 69 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
> index 5ac66fb88fcf..d7131de5c7ac 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
> @@ -227,13 +227,38 @@ __intel_fbdev_fb_alloc(struct intel_display *display,
> struct drm_fb_helper_surface_size *sizes)
> {
> struct drm_mode_fb_cmd2 mode_cmd = {};
> - struct intel_framebuffer *fb;
> + struct drm_framebuffer *fb;
> + struct drm_gem_object *obj;
> + int size;
>
> intel_fbdev_fill_mode_cmd(sizes, &mode_cmd);
>
> - fb = intel_fbdev_fb_alloc(display->drm, &mode_cmd);
> + size = mode_cmd.pitches[0] * mode_cmd.height;
> + size = PAGE_ALIGN(size);
> +
> + obj = intel_fbdev_fb_bo_create(display->drm, size);
> + if (IS_ERR(obj)) {
> + fb = ERR_CAST(obj);
> + goto err;
This use of goto doesn't make much sense to me in this function.
> + }
> +
> + fb = intel_framebuffer_create(obj,
> + drm_get_format_info(display->drm,
> + mode_cmd.pixel_format,
> + mode_cmd.modifier[0]),
> + &mode_cmd);
> + if (IS_ERR(fb)) {
> + intel_fbdev_fb_bo_destroy(obj);
> + goto err;
> + }
> +
> + drm_gem_object_put(obj);
> +
> + return to_intel_framebuffer(fb);
> +
> +err:
> + return ERR_CAST(fb);
>
> - return fb;
> }
>
> int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> index 6b70823ce5ef..1ac62a064936 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
> @@ -10,7 +10,6 @@
> #include "i915_drv.h"
> #include "intel_display_core.h"
> #include "intel_display_types.h"
> -#include "intel_fb.h"
> #include "intel_fbdev_fb.h"
>
> u32 intel_fbdev_fb_pitch_align(u32 stride)
> @@ -56,34 +55,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
> /* nop? */
> }
>
> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> - struct drm_mode_fb_cmd2 *mode_cmd)
> -{
> - struct drm_framebuffer *fb;
> - struct drm_gem_object *obj;
> - int size;
> -
> - size = mode_cmd->pitches[0] * mode_cmd->height;
> - size = PAGE_ALIGN(size);
> -
> - obj = intel_fbdev_fb_bo_create(drm, size);
> - if (IS_ERR(obj)) {
> - fb = ERR_CAST(obj);
> - goto err;
> - }
> -
> - fb = intel_framebuffer_create(obj,
> - drm_get_format_info(drm,
> - mode_cmd->pixel_format,
> - mode_cmd->modifier[0]),
> - mode_cmd);
> - drm_gem_object_put(obj);
> -
> - return to_intel_framebuffer(fb);
> -err:
> - return ERR_CAST(fb);
> -}
> -
> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> struct drm_gem_object *_obj, struct i915_vma *vma)
> {
> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> index 6d6f316834df..bb0ce3a85ff9 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
> @@ -18,8 +18,6 @@ struct intel_display;
> u32 intel_fbdev_fb_pitch_align(u32 stride);
> struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
> void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> - struct drm_mode_fb_cmd2 *mode_cmd);
> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> struct drm_gem_object *obj, struct i915_vma *vma);
>
> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> index 9a5cf50ea7de..2e8490a8cdb1 100644
> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
> @@ -7,7 +7,6 @@
>
> #include "intel_display_core.h"
> #include "intel_display_types.h"
> -#include "intel_fb.h"
> #include "intel_fbdev_fb.h"
> #include "xe_bo.h"
> #include "xe_ttm_stolen_mgr.h"
> @@ -59,40 +58,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
> xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
> }
>
> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
> - struct drm_mode_fb_cmd2 *mode_cmd)
> -{
> - struct drm_framebuffer *fb;
> - struct drm_gem_object *obj;
> - int size;
> -
> - size = mode_cmd->pitches[0] * mode_cmd->height;
> - size = PAGE_ALIGN(size);
> -
> - obj = intel_fbdev_fb_bo_create(drm, size);
> - if (IS_ERR(obj)) {
> - fb = ERR_CAST(obj);
> - goto err;
> - }
> -
> - fb = intel_framebuffer_create(obj,
> - drm_get_format_info(drm,
> - mode_cmd->pixel_format,
> - mode_cmd->modifier[0]),
> - mode_cmd);
> - if (IS_ERR(fb)) {
> - intel_fbdev_fb_bo_destroy(obj);
> - goto err;
> - }
> -
> - drm_gem_object_put(obj);
> -
> - return to_intel_framebuffer(fb);
> -
> -err:
> - return ERR_CAST(fb);
> -}
> -
> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
> struct drm_gem_object *_obj, struct i915_vma *vma)
> {
> --
> 2.47.2
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 32+ messages in thread* Re: [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation
2025-09-04 14:39 ` Ville Syrjälä
@ 2025-09-08 12:57 ` Jani Nikula
0 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-08 12:57 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, intel-xe
On Thu, 04 Sep 2025, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Wed, Sep 03, 2025 at 11:32:04PM +0300, Jani Nikula wrote:
>> With the bo creation helper in place, we can lift
>> intel_framebuffer_create() part to common code.
>>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_fbdev.c | 31 ++++++++++++++--
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 29 ---------------
>> drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 2 --
>> drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 35 -------------------
>> 4 files changed, 28 insertions(+), 69 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
>> index 5ac66fb88fcf..d7131de5c7ac 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev.c
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
>> @@ -227,13 +227,38 @@ __intel_fbdev_fb_alloc(struct intel_display *display,
>> struct drm_fb_helper_surface_size *sizes)
>> {
>> struct drm_mode_fb_cmd2 mode_cmd = {};
>> - struct intel_framebuffer *fb;
>> + struct drm_framebuffer *fb;
>> + struct drm_gem_object *obj;
>> + int size;
>>
>> intel_fbdev_fill_mode_cmd(sizes, &mode_cmd);
>>
>> - fb = intel_fbdev_fb_alloc(display->drm, &mode_cmd);
>> + size = mode_cmd.pitches[0] * mode_cmd.height;
>> + size = PAGE_ALIGN(size);
>> +
>> + obj = intel_fbdev_fb_bo_create(display->drm, size);
>> + if (IS_ERR(obj)) {
>> + fb = ERR_CAST(obj);
>> + goto err;
>
> This use of goto doesn't make much sense to me in this function.
Fair, probably an artefact of umpteen rebases and refactors of trying to
make this series make more sense...
BR,
Jani.
>
>> + }
>> +
>> + fb = intel_framebuffer_create(obj,
>> + drm_get_format_info(display->drm,
>> + mode_cmd.pixel_format,
>> + mode_cmd.modifier[0]),
>> + &mode_cmd);
>> + if (IS_ERR(fb)) {
>> + intel_fbdev_fb_bo_destroy(obj);
>> + goto err;
>> + }
>> +
>> + drm_gem_object_put(obj);
>> +
>> + return to_intel_framebuffer(fb);
>> +
>> +err:
>> + return ERR_CAST(fb);
>>
>> - return fb;
>> }
>>
>> int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> index 6b70823ce5ef..1ac62a064936 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
>> @@ -10,7 +10,6 @@
>> #include "i915_drv.h"
>> #include "intel_display_core.h"
>> #include "intel_display_types.h"
>> -#include "intel_fb.h"
>> #include "intel_fbdev_fb.h"
>>
>> u32 intel_fbdev_fb_pitch_align(u32 stride)
>> @@ -56,34 +55,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> /* nop? */
>> }
>>
>> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> - struct drm_mode_fb_cmd2 *mode_cmd)
>> -{
>> - struct drm_framebuffer *fb;
>> - struct drm_gem_object *obj;
>> - int size;
>> -
>> - size = mode_cmd->pitches[0] * mode_cmd->height;
>> - size = PAGE_ALIGN(size);
>> -
>> - obj = intel_fbdev_fb_bo_create(drm, size);
>> - if (IS_ERR(obj)) {
>> - fb = ERR_CAST(obj);
>> - goto err;
>> - }
>> -
>> - fb = intel_framebuffer_create(obj,
>> - drm_get_format_info(drm,
>> - mode_cmd->pixel_format,
>> - mode_cmd->modifier[0]),
>> - mode_cmd);
>> - drm_gem_object_put(obj);
>> -
>> - return to_intel_framebuffer(fb);
>> -err:
>> - return ERR_CAST(fb);
>> -}
>> -
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> struct drm_gem_object *_obj, struct i915_vma *vma)
>> {
>> diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> index 6d6f316834df..bb0ce3a85ff9 100644
>> --- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> +++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
>> @@ -18,8 +18,6 @@ struct intel_display;
>> u32 intel_fbdev_fb_pitch_align(u32 stride);
>> struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
>> void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
>> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> - struct drm_mode_fb_cmd2 *mode_cmd);
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> struct drm_gem_object *obj, struct i915_vma *vma);
>>
>> diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> index 9a5cf50ea7de..2e8490a8cdb1 100644
>> --- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> +++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
>> @@ -7,7 +7,6 @@
>>
>> #include "intel_display_core.h"
>> #include "intel_display_types.h"
>> -#include "intel_fb.h"
>> #include "intel_fbdev_fb.h"
>> #include "xe_bo.h"
>> #include "xe_ttm_stolen_mgr.h"
>> @@ -59,40 +58,6 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
>> xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
>> }
>>
>> -struct intel_framebuffer *intel_fbdev_fb_alloc(struct drm_device *drm,
>> - struct drm_mode_fb_cmd2 *mode_cmd)
>> -{
>> - struct drm_framebuffer *fb;
>> - struct drm_gem_object *obj;
>> - int size;
>> -
>> - size = mode_cmd->pitches[0] * mode_cmd->height;
>> - size = PAGE_ALIGN(size);
>> -
>> - obj = intel_fbdev_fb_bo_create(drm, size);
>> - if (IS_ERR(obj)) {
>> - fb = ERR_CAST(obj);
>> - goto err;
>> - }
>> -
>> - fb = intel_framebuffer_create(obj,
>> - drm_get_format_info(drm,
>> - mode_cmd->pixel_format,
>> - mode_cmd->modifier[0]),
>> - mode_cmd);
>> - if (IS_ERR(fb)) {
>> - intel_fbdev_fb_bo_destroy(obj);
>> - goto err;
>> - }
>> -
>> - drm_gem_object_put(obj);
>> -
>> - return to_intel_framebuffer(fb);
>> -
>> -err:
>> - return ERR_CAST(fb);
>> -}
>> -
>> int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
>> struct drm_gem_object *_obj, struct i915_vma *vma)
>> {
>> --
>> 2.47.2
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 32+ messages in thread
* [PATCH 8/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_fill_info()
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (6 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 7/9] drm/{i915,xe}/fbdev: deduplicate fbdev creation Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-03 20:32 ` [PATCH 9/9] drm/i915/fbdev: drop dependency on display in i915 specific code Jani Nikula
` (4 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
This code is in fact driver core rather than display specific. Pass
struct drm_device instead of struct intel_display.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +-
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 6 +++---
drivers/gpu/drm/i915/display/intel_fbdev_fb.h | 3 +--
drivers/gpu/drm/xe/display/intel_fbdev_fb.c | 6 ++----
4 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev.c b/drivers/gpu/drm/i915/display/intel_fbdev.c
index d7131de5c7ac..8147bc2aeaed 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev.c
@@ -332,7 +332,7 @@ int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
obj = intel_fb_bo(&fb->base);
- ret = intel_fbdev_fb_fill_info(display, info, obj, vma);
+ ret = intel_fbdev_fb_fill_info(display->drm, info, obj, vma);
if (ret)
goto out_unpin;
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index 1ac62a064936..ef5440fe25f6 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -55,10 +55,10 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
/* nop? */
}
-int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
+int intel_fbdev_fb_fill_info(struct drm_device *drm, struct fb_info *info,
struct drm_gem_object *_obj, struct i915_vma *vma)
{
- struct drm_i915_private *i915 = to_i915(display->drm);
+ struct drm_i915_private *i915 = to_i915(drm);
struct drm_i915_gem_object *obj = to_intel_bo(_obj);
struct i915_gem_ww_ctx ww;
void __iomem *vaddr;
@@ -90,7 +90,7 @@ int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info
vaddr = i915_vma_pin_iomap(vma);
if (IS_ERR(vaddr)) {
- drm_err(display->drm,
+ drm_err(drm,
"Failed to remap framebuffer into virtual memory (%pe)\n", vaddr);
ret = PTR_ERR(vaddr);
continue;
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
index bb0ce3a85ff9..fd0b3775dc1f 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.h
@@ -13,12 +13,11 @@ struct drm_gem_object;
struct drm_mode_fb_cmd2;
struct fb_info;
struct i915_vma;
-struct intel_display;
u32 intel_fbdev_fb_pitch_align(u32 stride);
struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size);
void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj);
-int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
+int intel_fbdev_fb_fill_info(struct drm_device *drm, struct fb_info *info,
struct drm_gem_object *obj, struct i915_vma *vma);
#endif
diff --git a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
index 2e8490a8cdb1..32ee96e1425c 100644
--- a/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/xe/display/intel_fbdev_fb.c
@@ -5,8 +5,6 @@
#include <linux/fb.h>
-#include "intel_display_core.h"
-#include "intel_display_types.h"
#include "intel_fbdev_fb.h"
#include "xe_bo.h"
#include "xe_ttm_stolen_mgr.h"
@@ -58,11 +56,11 @@ void intel_fbdev_fb_bo_destroy(struct drm_gem_object *obj)
xe_bo_unpin_map_no_vm(gem_to_xe_bo(obj));
}
-int intel_fbdev_fb_fill_info(struct intel_display *display, struct fb_info *info,
+int intel_fbdev_fb_fill_info(struct drm_device *drm, struct fb_info *info,
struct drm_gem_object *_obj, struct i915_vma *vma)
{
struct xe_bo *obj = gem_to_xe_bo(_obj);
- struct pci_dev *pdev = to_pci_dev(display->drm->dev);
+ struct pci_dev *pdev = to_pci_dev(drm->dev);
if (!(obj->flags & XE_BO_FLAG_SYSTEM)) {
if (obj->flags & XE_BO_FLAG_STOLEN)
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* [PATCH 9/9] drm/i915/fbdev: drop dependency on display in i915 specific code
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (7 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 8/9] drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_fill_info() Jani Nikula
@ 2025-09-03 20:32 ` Jani Nikula
2025-09-03 20:38 ` ✗ CI.checkpatch: warning for drm/{i915,xe}/fbdev: refactor Patchwork
` (3 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Jani Nikula @ 2025-09-03 20:32 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: jani.nikula
This code is in fact i915 driver core rather than display specific. Stop
using struct intel_display, and drop the dependency on display headers.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbdev_fb.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
index ef5440fe25f6..9edb4bf3103c 100644
--- a/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
+++ b/drivers/gpu/drm/i915/display/intel_fbdev_fb.c
@@ -8,8 +8,6 @@
#include "gem/i915_gem_lmem.h"
#include "i915_drv.h"
-#include "intel_display_core.h"
-#include "intel_display_types.h"
#include "intel_fbdev_fb.h"
u32 intel_fbdev_fb_pitch_align(u32 stride)
@@ -19,7 +17,6 @@ u32 intel_fbdev_fb_pitch_align(u32 stride)
struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size)
{
- struct intel_display *display = to_intel_display(drm);
struct drm_i915_private *dev_priv = to_i915(drm);
struct drm_i915_gem_object *obj;
@@ -36,7 +33,7 @@ struct drm_gem_object *intel_fbdev_fb_bo_create(struct drm_device *drm, int size
*
* Also skip stolen on MTL as Wa_22018444074 mitigation.
*/
- if (!display->platform.meteorlake && size * 2 < dev_priv->dsm.usable_size)
+ if (!IS_METEORLAKE(dev_priv) && size * 2 < dev_priv->dsm.usable_size)
obj = i915_gem_object_create_stolen(dev_priv, size);
if (IS_ERR(obj))
obj = i915_gem_object_create_shmem(dev_priv, size);
--
2.47.2
^ permalink raw reply related [flat|nested] 32+ messages in thread* ✗ CI.checkpatch: warning for drm/{i915,xe}/fbdev: refactor
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (8 preceding siblings ...)
2025-09-03 20:32 ` [PATCH 9/9] drm/i915/fbdev: drop dependency on display in i915 specific code Jani Nikula
@ 2025-09-03 20:38 ` Patchwork
2025-09-03 20:39 ` ✓ CI.KUnit: success " Patchwork
` (2 subsequent siblings)
12 siblings, 0 replies; 32+ messages in thread
From: Patchwork @ 2025-09-03 20:38 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-xe
== Series Details ==
Series: drm/{i915,xe}/fbdev: refactor
URL : https://patchwork.freedesktop.org/series/153981/
State : warning
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
e0fa7d6ad11ac6dc8dfa757164e518968a98b897
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 805867efda2422bd16b3fad672467b4b09520730
Author: Jani Nikula <jani.nikula@intel.com>
Date: Wed Sep 3 23:32:06 2025 +0300
drm/i915/fbdev: drop dependency on display in i915 specific code
This code is in fact i915 driver core rather than display specific. Stop
using struct intel_display, and drop the dependency on display headers.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
+ /mt/dim checkpatch 09933716bb37eda75f5b3562a76e58a17c447647 drm-intel
ddf9f846e5c4 drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_alloc()
1673056d681d drm/{i915,xe}/fbdev: add intel_fbdev_fb_pitch_align()
-:33: WARNING:LONG_LINE: line length of 111 exceeds 100 columns
#33: FILE: drivers/gpu/drm/i915/display/intel_fbdev_fb.c:38:
+ mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
-:80: WARNING:LONG_LINE: line length of 111 exceeds 100 columns
#80: FILE: drivers/gpu/drm/xe/display/intel_fbdev_fb.c:39:
+ mode_cmd.pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd.width * DIV_ROUND_UP(sizes->surface_bpp, 8));
total: 0 errors, 2 warnings, 0 checks, 55 lines checked
82649a108feb drm/{i915, xe}/fbdev: deduplicate struct drm_mode_fb_cmd2 init
-:30: WARNING:LONG_LINE: line length of 113 exceeds 100 columns
#30: FILE: drivers/gpu/drm/i915/display/intel_fbdev.c:220:
+ mode_cmd->pitches[0] = intel_fbdev_fb_pitch_align(mode_cmd->width * DIV_ROUND_UP(sizes->surface_bpp, 8));
total: 0 errors, 1 warnings, 0 checks, 158 lines checked
8c097d0d7e80 drm/i915/fbdev: abstract bo creation
6b9ef32cec6e drm/xe/fbdev: abstract bo creation
45fb8c5e6d7d drm/{i915,xe}/fbdev: add intel_fbdev_fb_bo_destroy()
a5a5268480ec drm/{i915,xe}/fbdev: deduplicate fbdev creation
99d3fba7de4d drm/{i915, xe}/fbdev: pass struct drm_device to intel_fbdev_fb_fill_info()
805867efda24 drm/i915/fbdev: drop dependency on display in i915 specific code
^ permalink raw reply [flat|nested] 32+ messages in thread* ✓ CI.KUnit: success for drm/{i915,xe}/fbdev: refactor
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (9 preceding siblings ...)
2025-09-03 20:38 ` ✗ CI.checkpatch: warning for drm/{i915,xe}/fbdev: refactor Patchwork
@ 2025-09-03 20:39 ` Patchwork
2025-09-03 21:11 ` ✓ Xe.CI.BAT: " Patchwork
2025-09-04 3:14 ` ✓ Xe.CI.Full: " Patchwork
12 siblings, 0 replies; 32+ messages in thread
From: Patchwork @ 2025-09-03 20:39 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-xe
== Series Details ==
Series: drm/{i915,xe}/fbdev: refactor
URL : https://patchwork.freedesktop.org/series/153981/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[20:38:08] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[20:38:12] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[20:38:41] Starting KUnit Kernel (1/1)...
[20:38:41] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[20:38:41] ================== guc_buf (11 subtests) ===================
[20:38:41] [PASSED] test_smallest
[20:38:41] [PASSED] test_largest
[20:38:41] [PASSED] test_granular
[20:38:41] [PASSED] test_unique
[20:38:41] [PASSED] test_overlap
[20:38:41] [PASSED] test_reusable
[20:38:41] [PASSED] test_too_big
[20:38:41] [PASSED] test_flush
[20:38:41] [PASSED] test_lookup
[20:38:41] [PASSED] test_data
[20:38:41] [PASSED] test_class
[20:38:41] ===================== [PASSED] guc_buf =====================
[20:38:41] =================== guc_dbm (7 subtests) ===================
[20:38:41] [PASSED] test_empty
[20:38:41] [PASSED] test_default
[20:38:41] ======================== test_size ========================
[20:38:41] [PASSED] 4
[20:38:41] [PASSED] 8
[20:38:41] [PASSED] 32
[20:38:41] [PASSED] 256
[20:38:41] ==================== [PASSED] test_size ====================
[20:38:41] ======================= test_reuse ========================
[20:38:41] [PASSED] 4
[20:38:41] [PASSED] 8
[20:38:41] [PASSED] 32
[20:38:41] [PASSED] 256
[20:38:41] =================== [PASSED] test_reuse ====================
[20:38:41] =================== test_range_overlap ====================
[20:38:41] [PASSED] 4
[20:38:41] [PASSED] 8
[20:38:41] [PASSED] 32
[20:38:41] [PASSED] 256
[20:38:41] =============== [PASSED] test_range_overlap ================
[20:38:41] =================== test_range_compact ====================
[20:38:41] [PASSED] 4
[20:38:41] [PASSED] 8
[20:38:41] [PASSED] 32
[20:38:41] [PASSED] 256
[20:38:41] =============== [PASSED] test_range_compact ================
[20:38:41] ==================== test_range_spare =====================
[20:38:41] [PASSED] 4
[20:38:41] [PASSED] 8
[20:38:41] [PASSED] 32
[20:38:41] [PASSED] 256
[20:38:41] ================ [PASSED] test_range_spare =================
[20:38:41] ===================== [PASSED] guc_dbm =====================
[20:38:41] =================== guc_idm (6 subtests) ===================
[20:38:41] [PASSED] bad_init
[20:38:41] [PASSED] no_init
[20:38:41] [PASSED] init_fini
[20:38:41] [PASSED] check_used
[20:38:41] [PASSED] check_quota
[20:38:41] [PASSED] check_all
[20:38:41] ===================== [PASSED] guc_idm =====================
[20:38:41] ================== no_relay (3 subtests) ===================
[20:38:41] [PASSED] xe_drops_guc2pf_if_not_ready
[20:38:41] [PASSED] xe_drops_guc2vf_if_not_ready
[20:38:41] [PASSED] xe_rejects_send_if_not_ready
[20:38:41] ==================== [PASSED] no_relay =====================
[20:38:41] ================== pf_relay (14 subtests) ==================
[20:38:41] [PASSED] pf_rejects_guc2pf_too_short
[20:38:41] [PASSED] pf_rejects_guc2pf_too_long
[20:38:41] [PASSED] pf_rejects_guc2pf_no_payload
[20:38:41] [PASSED] pf_fails_no_payload
[20:38:41] [PASSED] pf_fails_bad_origin
[20:38:41] [PASSED] pf_fails_bad_type
[20:38:41] [PASSED] pf_txn_reports_error
[20:38:41] [PASSED] pf_txn_sends_pf2guc
[20:38:41] [PASSED] pf_sends_pf2guc
[20:38:41] [SKIPPED] pf_loopback_nop
[20:38:41] [SKIPPED] pf_loopback_echo
[20:38:41] [SKIPPED] pf_loopback_fail
[20:38:41] [SKIPPED] pf_loopback_busy
[20:38:41] [SKIPPED] pf_loopback_retry
[20:38:41] ==================== [PASSED] pf_relay =====================
[20:38:41] ================== vf_relay (3 subtests) ===================
[20:38:41] [PASSED] vf_rejects_guc2vf_too_short
[20:38:41] [PASSED] vf_rejects_guc2vf_too_long
[20:38:41] [PASSED] vf_rejects_guc2vf_no_payload
[20:38:41] ==================== [PASSED] vf_relay =====================
[20:38:41] ===================== lmtt (1 subtest) =====================
[20:38:41] ======================== test_ops =========================
[20:38:41] [PASSED] 2-level
[20:38:41] [PASSED] multi-level
[20:38:41] ==================== [PASSED] test_ops =====================
[20:38:41] ====================== [PASSED] lmtt =======================
[20:38:41] ================= pf_service (11 subtests) =================
[20:38:41] [PASSED] pf_negotiate_any
[20:38:41] [PASSED] pf_negotiate_base_match
[20:38:41] [PASSED] pf_negotiate_base_newer
[20:38:41] [PASSED] pf_negotiate_base_next
[20:38:41] [SKIPPED] pf_negotiate_base_older
[20:38:41] [PASSED] pf_negotiate_base_prev
[20:38:41] [PASSED] pf_negotiate_latest_match
[20:38:41] [PASSED] pf_negotiate_latest_newer
[20:38:41] [PASSED] pf_negotiate_latest_next
[20:38:41] [SKIPPED] pf_negotiate_latest_older
[20:38:41] [SKIPPED] pf_negotiate_latest_prev
[20:38:41] =================== [PASSED] pf_service ====================
[20:38:41] =================== xe_mocs (2 subtests) ===================
[20:38:41] ================ xe_live_mocs_kernel_kunit ================
[20:38:41] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[20:38:41] ================ xe_live_mocs_reset_kunit =================
[20:38:41] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[20:38:41] ==================== [SKIPPED] xe_mocs =====================
[20:38:41] ================= xe_migrate (2 subtests) ==================
[20:38:41] ================= xe_migrate_sanity_kunit =================
[20:38:41] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[20:38:41] ================== xe_validate_ccs_kunit ==================
[20:38:41] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[20:38:41] =================== [SKIPPED] xe_migrate ===================
[20:38:41] ================== xe_dma_buf (1 subtest) ==================
[20:38:41] ==================== xe_dma_buf_kunit =====================
[20:38:41] ================ [SKIPPED] xe_dma_buf_kunit ================
[20:38:41] =================== [SKIPPED] xe_dma_buf ===================
[20:38:41] ================= xe_bo_shrink (1 subtest) =================
[20:38:41] =================== xe_bo_shrink_kunit ====================
[20:38:41] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[20:38:41] ================== [SKIPPED] xe_bo_shrink ==================
[20:38:41] ==================== xe_bo (2 subtests) ====================
[20:38:41] ================== xe_ccs_migrate_kunit ===================
[20:38:41] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[20:38:41] ==================== xe_bo_evict_kunit ====================
[20:38:41] =============== [SKIPPED] xe_bo_evict_kunit ================
[20:38:41] ===================== [SKIPPED] xe_bo ======================
[20:38:41] ==================== args (11 subtests) ====================
[20:38:41] [PASSED] count_args_test
[20:38:41] [PASSED] call_args_example
[20:38:41] [PASSED] call_args_test
[20:38:41] [PASSED] drop_first_arg_example
[20:38:41] [PASSED] drop_first_arg_test
[20:38:41] [PASSED] first_arg_example
[20:38:41] [PASSED] first_arg_test
[20:38:41] [PASSED] last_arg_example
[20:38:41] [PASSED] last_arg_test
[20:38:41] [PASSED] pick_arg_example
[20:38:41] [PASSED] sep_comma_example
[20:38:41] ====================== [PASSED] args =======================
[20:38:41] =================== xe_pci (3 subtests) ====================
[20:38:41] ==================== check_graphics_ip ====================
[20:38:41] [PASSED] 12.70 Xe_LPG
[20:38:41] [PASSED] 12.71 Xe_LPG
[20:38:41] [PASSED] 12.74 Xe_LPG+
[20:38:41] [PASSED] 20.01 Xe2_HPG
[20:38:41] [PASSED] 20.02 Xe2_HPG
[20:38:41] [PASSED] 20.04 Xe2_LPG
[20:38:41] [PASSED] 30.00 Xe3_LPG
[20:38:41] [PASSED] 30.01 Xe3_LPG
[20:38:41] [PASSED] 30.03 Xe3_LPG
[20:38:41] ================ [PASSED] check_graphics_ip ================
[20:38:41] ===================== check_media_ip ======================
[20:38:41] [PASSED] 13.00 Xe_LPM+
[20:38:41] [PASSED] 13.01 Xe2_HPM
[20:38:41] [PASSED] 20.00 Xe2_LPM
[20:38:41] [PASSED] 30.00 Xe3_LPM
[20:38:41] [PASSED] 30.02 Xe3_LPM
[20:38:41] ================= [PASSED] check_media_ip ==================
[20:38:41] ================= check_platform_gt_count =================
[20:38:41] [PASSED] 0x9A60 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A68 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A70 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A40 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A49 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A59 (TIGERLAKE)
[20:38:41] [PASSED] 0x9A78 (TIGERLAKE)
[20:38:41] [PASSED] 0x9AC0 (TIGERLAKE)
[20:38:41] [PASSED] 0x9AC9 (TIGERLAKE)
[20:38:41] [PASSED] 0x9AD9 (TIGERLAKE)
[20:38:41] [PASSED] 0x9AF8 (TIGERLAKE)
[20:38:41] [PASSED] 0x4C80 (ROCKETLAKE)
[20:38:41] [PASSED] 0x4C8A (ROCKETLAKE)
[20:38:41] [PASSED] 0x4C8B (ROCKETLAKE)
[20:38:41] [PASSED] 0x4C8C (ROCKETLAKE)
[20:38:41] [PASSED] 0x4C90 (ROCKETLAKE)
[20:38:41] [PASSED] 0x4C9A (ROCKETLAKE)
[20:38:41] [PASSED] 0x4680 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4682 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4688 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x468A (ALDERLAKE_S)
[20:38:41] [PASSED] 0x468B (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4690 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4692 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4693 (ALDERLAKE_S)
[20:38:41] [PASSED] 0x46A0 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46A1 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46A2 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46A3 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46A6 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46A8 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46AA (ALDERLAKE_P)
[20:38:41] [PASSED] 0x462A (ALDERLAKE_P)
[20:38:41] [PASSED] 0x4626 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x4628 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46B0 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46B1 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46B2 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46B3 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46C0 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46C1 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46C2 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46C3 (ALDERLAKE_P)
[20:38:41] [PASSED] 0x46D0 (ALDERLAKE_N)
[20:38:41] [PASSED] 0x46D1 (ALDERLAKE_N)
[20:38:41] [PASSED] 0x46D2 (ALDERLAKE_N)
[20:38:41] [PASSED] 0x46D3 (ALDERLAKE_N)
[20:38:41] [PASSED] 0x46D4 (ALDERLAKE_N)
[20:38:41] [PASSED] 0xA721 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7A1 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7A9 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7AC (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7AD (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA720 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7A0 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7A8 (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7AA (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA7AB (ALDERLAKE_P)
[20:38:41] [PASSED] 0xA780 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA781 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA782 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA783 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA788 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA789 (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA78A (ALDERLAKE_S)
[20:38:41] [PASSED] 0xA78B (ALDERLAKE_S)
[20:38:41] [PASSED] 0x4905 (DG1)
[20:38:41] [PASSED] 0x4906 (DG1)
[20:38:41] [PASSED] 0x4907 (DG1)
[20:38:41] [PASSED] 0x4908 (DG1)
[20:38:41] [PASSED] 0x4909 (DG1)
[20:38:41] [PASSED] 0x56C0 (DG2)
[20:38:41] [PASSED] 0x56C2 (DG2)
[20:38:41] [PASSED] 0x56C1 (DG2)
[20:38:41] [PASSED] 0x7D51 (METEORLAKE)
[20:38:41] [PASSED] 0x7DD1 (METEORLAKE)
[20:38:41] [PASSED] 0x7D41 (METEORLAKE)
[20:38:41] [PASSED] 0x7D67 (METEORLAKE)
[20:38:41] [PASSED] 0xB640 (METEORLAKE)
[20:38:41] [PASSED] 0x56A0 (DG2)
[20:38:41] [PASSED] 0x56A1 (DG2)
[20:38:41] [PASSED] 0x56A2 (DG2)
[20:38:41] [PASSED] 0x56BE (DG2)
[20:38:41] [PASSED] 0x56BF (DG2)
[20:38:41] [PASSED] 0x5690 (DG2)
[20:38:41] [PASSED] 0x5691 (DG2)
[20:38:41] [PASSED] 0x5692 (DG2)
[20:38:41] [PASSED] 0x56A5 (DG2)
[20:38:41] [PASSED] 0x56A6 (DG2)
[20:38:41] [PASSED] 0x56B0 (DG2)
[20:38:41] [PASSED] 0x56B1 (DG2)
[20:38:41] [PASSED] 0x56BA (DG2)
[20:38:41] [PASSED] 0x56BB (DG2)
[20:38:41] [PASSED] 0x56BC (DG2)
[20:38:41] [PASSED] 0x56BD (DG2)
[20:38:41] [PASSED] 0x5693 (DG2)
[20:38:41] [PASSED] 0x5694 (DG2)
[20:38:41] [PASSED] 0x5695 (DG2)
[20:38:41] [PASSED] 0x56A3 (DG2)
[20:38:41] [PASSED] 0x56A4 (DG2)
[20:38:41] [PASSED] 0x56B2 (DG2)
[20:38:41] [PASSED] 0x56B3 (DG2)
[20:38:41] [PASSED] 0x5696 (DG2)
[20:38:41] [PASSED] 0x5697 (DG2)
[20:38:41] [PASSED] 0xB69 (PVC)
[20:38:41] [PASSED] 0xB6E (PVC)
[20:38:41] [PASSED] 0xBD4 (PVC)
[20:38:41] [PASSED] 0xBD5 (PVC)
[20:38:41] [PASSED] 0xBD6 (PVC)
[20:38:41] [PASSED] 0xBD7 (PVC)
[20:38:41] [PASSED] 0xBD8 (PVC)
[20:38:41] [PASSED] 0xBD9 (PVC)
[20:38:41] [PASSED] 0xBDA (PVC)
[20:38:41] [PASSED] 0xBDB (PVC)
[20:38:41] [PASSED] 0xBE0 (PVC)
[20:38:41] [PASSED] 0xBE1 (PVC)
[20:38:41] [PASSED] 0xBE5 (PVC)
[20:38:41] [PASSED] 0x7D40 (METEORLAKE)
[20:38:41] [PASSED] 0x7D45 (METEORLAKE)
[20:38:41] [PASSED] 0x7D55 (METEORLAKE)
[20:38:41] [PASSED] 0x7D60 (METEORLAKE)
[20:38:41] [PASSED] 0x7DD5 (METEORLAKE)
[20:38:41] [PASSED] 0x6420 (LUNARLAKE)
[20:38:41] [PASSED] 0x64A0 (LUNARLAKE)
[20:38:41] [PASSED] 0x64B0 (LUNARLAKE)
[20:38:41] [PASSED] 0xE202 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE209 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE20B (BATTLEMAGE)
[20:38:41] [PASSED] 0xE20C (BATTLEMAGE)
[20:38:41] [PASSED] 0xE20D (BATTLEMAGE)
[20:38:41] [PASSED] 0xE210 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE211 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE212 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE216 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE220 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE221 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE222 (BATTLEMAGE)
[20:38:41] [PASSED] 0xE223 (BATTLEMAGE)
[20:38:41] [PASSED] 0xB080 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB081 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB082 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB083 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB084 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB085 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB086 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB087 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB08F (PANTHERLAKE)
[20:38:41] [PASSED] 0xB090 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB0A0 (PANTHERLAKE)
[20:38:41] [PASSED] 0xB0B0 (PANTHERLAKE)
[20:38:41] [PASSED] 0xFD80 (PANTHERLAKE)
[20:38:41] [PASSED] 0xFD81 (PANTHERLAKE)
[20:38:41] ============= [PASSED] check_platform_gt_count =============
[20:38:41] ===================== [PASSED] xe_pci ======================
[20:38:41] =================== xe_rtp (2 subtests) ====================
[20:38:41] =============== xe_rtp_process_to_sr_tests ================
[20:38:41] [PASSED] coalesce-same-reg
[20:38:41] [PASSED] no-match-no-add
[20:38:41] [PASSED] match-or
[20:38:41] [PASSED] match-or-xfail
[20:38:41] [PASSED] no-match-no-add-multiple-rules
[20:38:41] [PASSED] two-regs-two-entries
[20:38:41] [PASSED] clr-one-set-other
[20:38:41] [PASSED] set-field
[20:38:41] [PASSED] conflict-duplicate
[20:38:41] [PASSED] conflict-not-disjoint
[20:38:41] [PASSED] conflict-reg-type
[20:38:41] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[20:38:41] ================== xe_rtp_process_tests ===================
[20:38:41] [PASSED] active1
[20:38:41] [PASSED] active2
[20:38:41] [PASSED] active-inactive
[20:38:41] [PASSED] inactive-active
[20:38:41] [PASSED] inactive-1st_or_active-inactive
[20:38:41] [PASSED] inactive-2nd_or_active-inactive
[20:38:41] [PASSED] inactive-last_or_active-inactive
[20:38:41] [PASSED] inactive-no_or_active-inactive
[20:38:41] ============== [PASSED] xe_rtp_process_tests ===============
[20:38:41] ===================== [PASSED] xe_rtp ======================
[20:38:41] ==================== xe_wa (1 subtest) =====================
[20:38:41] ======================== xe_wa_gt =========================
[20:38:41] [PASSED] TIGERLAKE (B0)
[20:38:41] [PASSED] DG1 (A0)
[20:38:41] [PASSED] DG1 (B0)
[20:38:41] [PASSED] ALDERLAKE_S (A0)
[20:38:41] [PASSED] ALDERLAKE_S (B0)
[20:38:41] [PASSED] ALDERLAKE_S (C0)
[20:38:41] [PASSED] ALDERLAKE_S (D0)
[20:38:41] [PASSED] ALDERLAKE_P (A0)
[20:38:41] [PASSED] ALDERLAKE_P (B0)
[20:38:41] [PASSED] ALDERLAKE_P (C0)
[20:38:41] [PASSED] ALDERLAKE_S_RPLS (D0)
[20:38:41] [PASSED] ALDERLAKE_P_RPLU (E0)
[20:38:41] [PASSED] DG2_G10 (C0)
[20:38:41] [PASSED] DG2_G11 (B1)
[20:38:41] [PASSED] DG2_G12 (A1)
[20:38:41] [PASSED] METEORLAKE (g:A0, m:A0)
[20:38:41] [PASSED] METEORLAKE (g:A0, m:A0)
[20:38:41] [PASSED] METEORLAKE (g:A0, m:A0)
[20:38:41] [PASSED] LUNARLAKE (g:A0, m:A0)
[20:38:41] [PASSED] LUNARLAKE (g:B0, m:A0)
stty: 'standard input': Inappropriate ioctl for device
[20:38:41] [PASSED] BATTLEMAGE (g:A0, m:A1)
[20:38:41] [PASSED] PANTHERLAKE (g:A0, m:A0)
[20:38:41] ==================== [PASSED] xe_wa_gt =====================
[20:38:41] ====================== [PASSED] xe_wa ======================
[20:38:41] ============================================================
[20:38:41] Testing complete. Ran 298 tests: passed: 282, skipped: 16
[20:38:41] Elapsed time: 33.355s total, 4.275s configuring, 28.713s building, 0.329s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[20:38:42] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[20:38:43] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[20:39:06] Starting KUnit Kernel (1/1)...
[20:39:06] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[20:39:06] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[20:39:06] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[20:39:06] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[20:39:06] =========== drm_validate_clone_mode (2 subtests) ===========
[20:39:06] ============== drm_test_check_in_clone_mode ===============
[20:39:06] [PASSED] in_clone_mode
[20:39:06] [PASSED] not_in_clone_mode
[20:39:06] ========== [PASSED] drm_test_check_in_clone_mode ===========
[20:39:06] =============== drm_test_check_valid_clones ===============
[20:39:06] [PASSED] not_in_clone_mode
[20:39:06] [PASSED] valid_clone
[20:39:06] [PASSED] invalid_clone
[20:39:06] =========== [PASSED] drm_test_check_valid_clones ===========
[20:39:06] ============= [PASSED] drm_validate_clone_mode =============
[20:39:06] ============= drm_validate_modeset (1 subtest) =============
[20:39:06] [PASSED] drm_test_check_connector_changed_modeset
[20:39:06] ============== [PASSED] drm_validate_modeset ===============
[20:39:06] ====== drm_test_bridge_get_current_state (2 subtests) ======
[20:39:06] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[20:39:06] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[20:39:06] ======== [PASSED] drm_test_bridge_get_current_state ========
[20:39:06] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[20:39:06] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[20:39:06] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[20:39:06] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[20:39:06] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[20:39:06] ============== drm_bridge_alloc (2 subtests) ===============
[20:39:06] [PASSED] drm_test_drm_bridge_alloc_basic
[20:39:06] [PASSED] drm_test_drm_bridge_alloc_get_put
[20:39:06] ================ [PASSED] drm_bridge_alloc =================
[20:39:06] ================== drm_buddy (7 subtests) ==================
[20:39:06] [PASSED] drm_test_buddy_alloc_limit
[20:39:06] [PASSED] drm_test_buddy_alloc_optimistic
[20:39:06] [PASSED] drm_test_buddy_alloc_pessimistic
[20:39:06] [PASSED] drm_test_buddy_alloc_pathological
[20:39:06] [PASSED] drm_test_buddy_alloc_contiguous
[20:39:06] [PASSED] drm_test_buddy_alloc_clear
[20:39:06] [PASSED] drm_test_buddy_alloc_range_bias
[20:39:06] ==================== [PASSED] drm_buddy ====================
[20:39:06] ============= drm_cmdline_parser (40 subtests) =============
[20:39:06] [PASSED] drm_test_cmdline_force_d_only
[20:39:06] [PASSED] drm_test_cmdline_force_D_only_dvi
[20:39:06] [PASSED] drm_test_cmdline_force_D_only_hdmi
[20:39:06] [PASSED] drm_test_cmdline_force_D_only_not_digital
[20:39:06] [PASSED] drm_test_cmdline_force_e_only
[20:39:06] [PASSED] drm_test_cmdline_res
[20:39:06] [PASSED] drm_test_cmdline_res_vesa
[20:39:06] [PASSED] drm_test_cmdline_res_vesa_rblank
[20:39:06] [PASSED] drm_test_cmdline_res_rblank
[20:39:06] [PASSED] drm_test_cmdline_res_bpp
[20:39:06] [PASSED] drm_test_cmdline_res_refresh
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[20:39:06] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[20:39:06] [PASSED] drm_test_cmdline_res_margins_force_on
[20:39:06] [PASSED] drm_test_cmdline_res_vesa_margins
[20:39:06] [PASSED] drm_test_cmdline_name
[20:39:06] [PASSED] drm_test_cmdline_name_bpp
[20:39:06] [PASSED] drm_test_cmdline_name_option
[20:39:06] [PASSED] drm_test_cmdline_name_bpp_option
[20:39:06] [PASSED] drm_test_cmdline_rotate_0
[20:39:06] [PASSED] drm_test_cmdline_rotate_90
[20:39:06] [PASSED] drm_test_cmdline_rotate_180
[20:39:06] [PASSED] drm_test_cmdline_rotate_270
[20:39:06] [PASSED] drm_test_cmdline_hmirror
[20:39:06] [PASSED] drm_test_cmdline_vmirror
[20:39:06] [PASSED] drm_test_cmdline_margin_options
[20:39:06] [PASSED] drm_test_cmdline_multiple_options
[20:39:06] [PASSED] drm_test_cmdline_bpp_extra_and_option
[20:39:06] [PASSED] drm_test_cmdline_extra_and_option
[20:39:06] [PASSED] drm_test_cmdline_freestanding_options
[20:39:06] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[20:39:06] [PASSED] drm_test_cmdline_panel_orientation
[20:39:06] ================ drm_test_cmdline_invalid =================
[20:39:06] [PASSED] margin_only
[20:39:06] [PASSED] interlace_only
[20:39:06] [PASSED] res_missing_x
[20:39:06] [PASSED] res_missing_y
[20:39:06] [PASSED] res_bad_y
[20:39:06] [PASSED] res_missing_y_bpp
[20:39:06] [PASSED] res_bad_bpp
[20:39:06] [PASSED] res_bad_refresh
[20:39:06] [PASSED] res_bpp_refresh_force_on_off
[20:39:06] [PASSED] res_invalid_mode
[20:39:06] [PASSED] res_bpp_wrong_place_mode
[20:39:06] [PASSED] name_bpp_refresh
[20:39:06] [PASSED] name_refresh
[20:39:06] [PASSED] name_refresh_wrong_mode
[20:39:06] [PASSED] name_refresh_invalid_mode
[20:39:06] [PASSED] rotate_multiple
[20:39:06] [PASSED] rotate_invalid_val
[20:39:06] [PASSED] rotate_truncated
[20:39:06] [PASSED] invalid_option
[20:39:06] [PASSED] invalid_tv_option
[20:39:06] [PASSED] truncated_tv_option
[20:39:06] ============ [PASSED] drm_test_cmdline_invalid =============
[20:39:06] =============== drm_test_cmdline_tv_options ===============
[20:39:06] [PASSED] NTSC
[20:39:06] [PASSED] NTSC_443
[20:39:06] [PASSED] NTSC_J
[20:39:06] [PASSED] PAL
[20:39:06] [PASSED] PAL_M
[20:39:06] [PASSED] PAL_N
[20:39:06] [PASSED] SECAM
[20:39:06] [PASSED] MONO_525
[20:39:06] [PASSED] MONO_625
[20:39:06] =========== [PASSED] drm_test_cmdline_tv_options ===========
[20:39:06] =============== [PASSED] drm_cmdline_parser ================
[20:39:06] ========== drmm_connector_hdmi_init (20 subtests) ==========
[20:39:06] [PASSED] drm_test_connector_hdmi_init_valid
[20:39:06] [PASSED] drm_test_connector_hdmi_init_bpc_8
[20:39:06] [PASSED] drm_test_connector_hdmi_init_bpc_10
[20:39:06] [PASSED] drm_test_connector_hdmi_init_bpc_12
[20:39:06] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[20:39:06] [PASSED] drm_test_connector_hdmi_init_bpc_null
[20:39:06] [PASSED] drm_test_connector_hdmi_init_formats_empty
[20:39:06] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[20:39:06] === drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[20:39:06] [PASSED] supported_formats=0x9 yuv420_allowed=1
[20:39:06] [PASSED] supported_formats=0x9 yuv420_allowed=0
[20:39:06] [PASSED] supported_formats=0x3 yuv420_allowed=1
[20:39:06] [PASSED] supported_formats=0x3 yuv420_allowed=0
[20:39:06] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[20:39:06] [PASSED] drm_test_connector_hdmi_init_null_ddc
[20:39:06] [PASSED] drm_test_connector_hdmi_init_null_product
[20:39:06] [PASSED] drm_test_connector_hdmi_init_null_vendor
[20:39:06] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[20:39:06] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[20:39:06] [PASSED] drm_test_connector_hdmi_init_product_valid
[20:39:06] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[20:39:06] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[20:39:06] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[20:39:06] ========= drm_test_connector_hdmi_init_type_valid =========
[20:39:06] [PASSED] HDMI-A
[20:39:06] [PASSED] HDMI-B
[20:39:06] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[20:39:06] ======== drm_test_connector_hdmi_init_type_invalid ========
[20:39:06] [PASSED] Unknown
[20:39:06] [PASSED] VGA
[20:39:06] [PASSED] DVI-I
[20:39:06] [PASSED] DVI-D
[20:39:06] [PASSED] DVI-A
[20:39:06] [PASSED] Composite
[20:39:06] [PASSED] SVIDEO
[20:39:06] [PASSED] LVDS
[20:39:06] [PASSED] Component
[20:39:06] [PASSED] DIN
[20:39:06] [PASSED] DP
[20:39:06] [PASSED] TV
[20:39:06] [PASSED] eDP
[20:39:06] [PASSED] Virtual
[20:39:06] [PASSED] DSI
[20:39:06] [PASSED] DPI
[20:39:06] [PASSED] Writeback
[20:39:06] [PASSED] SPI
[20:39:06] [PASSED] USB
[20:39:06] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[20:39:06] ============ [PASSED] drmm_connector_hdmi_init =============
[20:39:06] ============= drmm_connector_init (3 subtests) =============
[20:39:06] [PASSED] drm_test_drmm_connector_init
[20:39:06] [PASSED] drm_test_drmm_connector_init_null_ddc
[20:39:06] ========= drm_test_drmm_connector_init_type_valid =========
[20:39:06] [PASSED] Unknown
[20:39:06] [PASSED] VGA
[20:39:06] [PASSED] DVI-I
[20:39:06] [PASSED] DVI-D
[20:39:06] [PASSED] DVI-A
[20:39:06] [PASSED] Composite
[20:39:06] [PASSED] SVIDEO
[20:39:06] [PASSED] LVDS
[20:39:06] [PASSED] Component
[20:39:06] [PASSED] DIN
[20:39:06] [PASSED] DP
[20:39:06] [PASSED] HDMI-A
[20:39:06] [PASSED] HDMI-B
[20:39:06] [PASSED] TV
[20:39:06] [PASSED] eDP
[20:39:06] [PASSED] Virtual
[20:39:06] [PASSED] DSI
[20:39:06] [PASSED] DPI
[20:39:06] [PASSED] Writeback
[20:39:06] [PASSED] SPI
[20:39:06] [PASSED] USB
[20:39:06] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[20:39:06] =============== [PASSED] drmm_connector_init ===============
[20:39:06] ========= drm_connector_dynamic_init (6 subtests) ==========
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_init
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_init_properties
[20:39:06] ===== drm_test_drm_connector_dynamic_init_type_valid ======
[20:39:06] [PASSED] Unknown
[20:39:06] [PASSED] VGA
[20:39:06] [PASSED] DVI-I
[20:39:06] [PASSED] DVI-D
[20:39:06] [PASSED] DVI-A
[20:39:06] [PASSED] Composite
[20:39:06] [PASSED] SVIDEO
[20:39:06] [PASSED] LVDS
[20:39:06] [PASSED] Component
[20:39:06] [PASSED] DIN
[20:39:06] [PASSED] DP
[20:39:06] [PASSED] HDMI-A
[20:39:06] [PASSED] HDMI-B
[20:39:06] [PASSED] TV
[20:39:06] [PASSED] eDP
[20:39:06] [PASSED] Virtual
[20:39:06] [PASSED] DSI
[20:39:06] [PASSED] DPI
[20:39:06] [PASSED] Writeback
[20:39:06] [PASSED] SPI
[20:39:06] [PASSED] USB
[20:39:06] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[20:39:06] ======== drm_test_drm_connector_dynamic_init_name =========
[20:39:06] [PASSED] Unknown
[20:39:06] [PASSED] VGA
[20:39:06] [PASSED] DVI-I
[20:39:06] [PASSED] DVI-D
[20:39:06] [PASSED] DVI-A
[20:39:06] [PASSED] Composite
[20:39:06] [PASSED] SVIDEO
[20:39:06] [PASSED] LVDS
[20:39:06] [PASSED] Component
[20:39:06] [PASSED] DIN
[20:39:06] [PASSED] DP
[20:39:06] [PASSED] HDMI-A
[20:39:06] [PASSED] HDMI-B
[20:39:06] [PASSED] TV
[20:39:06] [PASSED] eDP
[20:39:06] [PASSED] Virtual
[20:39:06] [PASSED] DSI
[20:39:06] [PASSED] DPI
[20:39:06] [PASSED] Writeback
[20:39:06] [PASSED] SPI
[20:39:06] [PASSED] USB
[20:39:06] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[20:39:06] =========== [PASSED] drm_connector_dynamic_init ============
[20:39:06] ==== drm_connector_dynamic_register_early (4 subtests) =====
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[20:39:06] ====== [PASSED] drm_connector_dynamic_register_early =======
[20:39:06] ======= drm_connector_dynamic_register (7 subtests) ========
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[20:39:06] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[20:39:06] ========= [PASSED] drm_connector_dynamic_register ==========
[20:39:06] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[20:39:06] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[20:39:06] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[20:39:06] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[20:39:06] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[20:39:06] ========== drm_test_get_tv_mode_from_name_valid ===========
[20:39:06] [PASSED] NTSC
[20:39:06] [PASSED] NTSC-443
[20:39:06] [PASSED] NTSC-J
[20:39:06] [PASSED] PAL
[20:39:06] [PASSED] PAL-M
[20:39:06] [PASSED] PAL-N
[20:39:06] [PASSED] SECAM
[20:39:06] [PASSED] Mono
[20:39:06] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[20:39:06] [PASSED] drm_test_get_tv_mode_from_name_truncated
[20:39:06] ============ [PASSED] drm_get_tv_mode_from_name ============
[20:39:06] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[20:39:06] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[20:39:06] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid =
[20:39:06] [PASSED] VIC 96
[20:39:06] [PASSED] VIC 97
[20:39:06] [PASSED] VIC 101
[20:39:06] [PASSED] VIC 102
[20:39:06] [PASSED] VIC 106
[20:39:06] [PASSED] VIC 107
[20:39:06] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[20:39:06] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[20:39:06] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[20:39:06] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[20:39:06] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[20:39:06] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[20:39:06] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[20:39:06] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[20:39:06] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ====
[20:39:06] [PASSED] Automatic
[20:39:06] [PASSED] Full
[20:39:06] [PASSED] Limited 16:235
[20:39:06] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[20:39:06] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[20:39:06] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[20:39:06] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[20:39:06] === drm_test_drm_hdmi_connector_get_output_format_name ====
[20:39:06] [PASSED] RGB
[20:39:06] [PASSED] YUV 4:2:0
[20:39:06] [PASSED] YUV 4:2:2
[20:39:06] [PASSED] YUV 4:4:4
[20:39:06] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[20:39:06] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[20:39:06] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[20:39:06] ============= drm_damage_helper (21 subtests) ==============
[20:39:06] [PASSED] drm_test_damage_iter_no_damage
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_src_moved
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_not_visible
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[20:39:06] [PASSED] drm_test_damage_iter_no_damage_no_fb
[20:39:06] [PASSED] drm_test_damage_iter_simple_damage
[20:39:06] [PASSED] drm_test_damage_iter_single_damage
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_outside_src
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_src_moved
[20:39:06] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[20:39:06] [PASSED] drm_test_damage_iter_damage
[20:39:06] [PASSED] drm_test_damage_iter_damage_one_intersect
[20:39:06] [PASSED] drm_test_damage_iter_damage_one_outside
[20:39:06] [PASSED] drm_test_damage_iter_damage_src_moved
[20:39:06] [PASSED] drm_test_damage_iter_damage_not_visible
[20:39:06] ================ [PASSED] drm_damage_helper ================
[20:39:06] ============== drm_dp_mst_helper (3 subtests) ==============
[20:39:06] ============== drm_test_dp_mst_calc_pbn_mode ==============
[20:39:06] [PASSED] Clock 154000 BPP 30 DSC disabled
[20:39:06] [PASSED] Clock 234000 BPP 30 DSC disabled
[20:39:06] [PASSED] Clock 297000 BPP 24 DSC disabled
[20:39:06] [PASSED] Clock 332880 BPP 24 DSC enabled
[20:39:06] [PASSED] Clock 324540 BPP 24 DSC enabled
[20:39:06] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[20:39:06] ============== drm_test_dp_mst_calc_pbn_div ===============
[20:39:06] [PASSED] Link rate 2000000 lane count 4
[20:39:06] [PASSED] Link rate 2000000 lane count 2
[20:39:06] [PASSED] Link rate 2000000 lane count 1
[20:39:06] [PASSED] Link rate 1350000 lane count 4
[20:39:06] [PASSED] Link rate 1350000 lane count 2
[20:39:06] [PASSED] Link rate 1350000 lane count 1
[20:39:06] [PASSED] Link rate 1000000 lane count 4
[20:39:06] [PASSED] Link rate 1000000 lane count 2
[20:39:06] [PASSED] Link rate 1000000 lane count 1
[20:39:06] [PASSED] Link rate 810000 lane count 4
[20:39:06] [PASSED] Link rate 810000 lane count 2
[20:39:06] [PASSED] Link rate 810000 lane count 1
[20:39:06] [PASSED] Link rate 540000 lane count 4
[20:39:06] [PASSED] Link rate 540000 lane count 2
[20:39:06] [PASSED] Link rate 540000 lane count 1
[20:39:06] [PASSED] Link rate 270000 lane count 4
[20:39:06] [PASSED] Link rate 270000 lane count 2
[20:39:06] [PASSED] Link rate 270000 lane count 1
[20:39:06] [PASSED] Link rate 162000 lane count 4
[20:39:06] [PASSED] Link rate 162000 lane count 2
[20:39:06] [PASSED] Link rate 162000 lane count 1
[20:39:06] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[20:39:06] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[20:39:06] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[20:39:06] [PASSED] DP_POWER_UP_PHY with port number
[20:39:06] [PASSED] DP_POWER_DOWN_PHY with port number
[20:39:06] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[20:39:06] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[20:39:06] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[20:39:06] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[20:39:06] [PASSED] DP_QUERY_PAYLOAD with port number
[20:39:06] [PASSED] DP_QUERY_PAYLOAD with VCPI
[20:39:06] [PASSED] DP_REMOTE_DPCD_READ with port number
[20:39:06] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[20:39:06] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[20:39:06] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[20:39:06] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[20:39:06] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[20:39:06] [PASSED] DP_REMOTE_I2C_READ with port number
[20:39:06] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[20:39:06] [PASSED] DP_REMOTE_I2C_READ with transactions array
[20:39:06] [PASSED] DP_REMOTE_I2C_WRITE with port number
[20:39:06] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[20:39:06] [PASSED] DP_REMOTE_I2C_WRITE with data array
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[20:39:06] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[20:39:06] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[20:39:06] ================ [PASSED] drm_dp_mst_helper ================
[20:39:06] ================== drm_exec (7 subtests) ===================
[20:39:06] [PASSED] sanitycheck
[20:39:06] [PASSED] test_lock
[20:39:06] [PASSED] test_lock_unlock
[20:39:06] [PASSED] test_duplicates
[20:39:06] [PASSED] test_prepare
[20:39:06] [PASSED] test_prepare_array
[20:39:06] [PASSED] test_multiple_loops
[20:39:06] ==================== [PASSED] drm_exec =====================
[20:39:06] =========== drm_format_helper_test (17 subtests) ===========
[20:39:06] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[20:39:06] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[20:39:06] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[20:39:06] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[20:39:06] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[20:39:06] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[20:39:06] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[20:39:06] ============= drm_test_fb_xrgb8888_to_bgr888 ==============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[20:39:06] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[20:39:06] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[20:39:06] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[20:39:06] ============== drm_test_fb_xrgb8888_to_mono ===============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[20:39:06] ==================== drm_test_fb_swab =====================
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ================ [PASSED] drm_test_fb_swab =================
[20:39:06] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[20:39:06] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[20:39:06] [PASSED] single_pixel_source_buffer
[20:39:06] [PASSED] single_pixel_clip_rectangle
[20:39:06] [PASSED] well_known_colors
[20:39:06] [PASSED] destination_pitch
[20:39:06] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[20:39:06] ================= drm_test_fb_clip_offset =================
[20:39:06] [PASSED] pass through
[20:39:06] [PASSED] horizontal offset
[20:39:06] [PASSED] vertical offset
[20:39:06] [PASSED] horizontal and vertical offset
[20:39:06] [PASSED] horizontal offset (custom pitch)
[20:39:06] [PASSED] vertical offset (custom pitch)
[20:39:06] [PASSED] horizontal and vertical offset (custom pitch)
[20:39:06] ============= [PASSED] drm_test_fb_clip_offset =============
[20:39:06] =================== drm_test_fb_memcpy ====================
[20:39:06] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[20:39:06] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[20:39:06] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[20:39:06] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[20:39:06] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[20:39:06] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[20:39:06] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[20:39:06] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[20:39:06] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[20:39:06] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[20:39:06] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[20:39:06] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[20:39:06] =============== [PASSED] drm_test_fb_memcpy ================
[20:39:06] ============= [PASSED] drm_format_helper_test ==============
[20:39:06] ================= drm_format (18 subtests) =================
[20:39:06] [PASSED] drm_test_format_block_width_invalid
[20:39:06] [PASSED] drm_test_format_block_width_one_plane
[20:39:06] [PASSED] drm_test_format_block_width_two_plane
[20:39:06] [PASSED] drm_test_format_block_width_three_plane
[20:39:06] [PASSED] drm_test_format_block_width_tiled
[20:39:06] [PASSED] drm_test_format_block_height_invalid
[20:39:06] [PASSED] drm_test_format_block_height_one_plane
[20:39:06] [PASSED] drm_test_format_block_height_two_plane
[20:39:06] [PASSED] drm_test_format_block_height_three_plane
[20:39:06] [PASSED] drm_test_format_block_height_tiled
[20:39:06] [PASSED] drm_test_format_min_pitch_invalid
[20:39:06] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[20:39:06] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[20:39:06] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[20:39:06] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[20:39:06] [PASSED] drm_test_format_min_pitch_two_plane
[20:39:06] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[20:39:06] [PASSED] drm_test_format_min_pitch_tiled
[20:39:06] =================== [PASSED] drm_format ====================
[20:39:06] ============== drm_framebuffer (10 subtests) ===============
[20:39:06] ========== drm_test_framebuffer_check_src_coords ==========
[20:39:06] [PASSED] Success: source fits into fb
[20:39:06] [PASSED] Fail: overflowing fb with x-axis coordinate
[20:39:06] [PASSED] Fail: overflowing fb with y-axis coordinate
[20:39:06] [PASSED] Fail: overflowing fb with source width
[20:39:06] [PASSED] Fail: overflowing fb with source height
[20:39:06] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[20:39:06] [PASSED] drm_test_framebuffer_cleanup
[20:39:06] =============== drm_test_framebuffer_create ===============
[20:39:06] [PASSED] ABGR8888 normal sizes
[20:39:06] [PASSED] ABGR8888 max sizes
[20:39:06] [PASSED] ABGR8888 pitch greater than min required
[20:39:06] [PASSED] ABGR8888 pitch less than min required
[20:39:06] [PASSED] ABGR8888 Invalid width
[20:39:06] [PASSED] ABGR8888 Invalid buffer handle
[20:39:06] [PASSED] No pixel format
[20:39:06] [PASSED] ABGR8888 Width 0
[20:39:06] [PASSED] ABGR8888 Height 0
[20:39:06] [PASSED] ABGR8888 Out of bound height * pitch combination
[20:39:06] [PASSED] ABGR8888 Large buffer offset
[20:39:06] [PASSED] ABGR8888 Buffer offset for inexistent plane
[20:39:06] [PASSED] ABGR8888 Invalid flag
[20:39:06] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[20:39:06] [PASSED] ABGR8888 Valid buffer modifier
[20:39:06] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[20:39:06] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] NV12 Normal sizes
[20:39:06] [PASSED] NV12 Max sizes
[20:39:06] [PASSED] NV12 Invalid pitch
[20:39:06] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[20:39:06] [PASSED] NV12 different modifier per-plane
[20:39:06] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[20:39:06] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] NV12 Modifier for inexistent plane
[20:39:06] [PASSED] NV12 Handle for inexistent plane
[20:39:06] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[20:39:06] [PASSED] YVU420 Normal sizes
[20:39:06] [PASSED] YVU420 Max sizes
[20:39:06] [PASSED] YVU420 Invalid pitch
[20:39:06] [PASSED] YVU420 Different pitches
[20:39:06] [PASSED] YVU420 Different buffer offsets/pitches
[20:39:06] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[20:39:06] [PASSED] YVU420 Valid modifier
[20:39:06] [PASSED] YVU420 Different modifiers per plane
[20:39:06] [PASSED] YVU420 Modifier for inexistent plane
[20:39:06] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[20:39:06] [PASSED] X0L2 Normal sizes
[20:39:06] [PASSED] X0L2 Max sizes
[20:39:06] [PASSED] X0L2 Invalid pitch
[20:39:06] [PASSED] X0L2 Pitch greater than minimum required
[20:39:06] [PASSED] X0L2 Handle for inexistent plane
[20:39:06] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[20:39:06] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[20:39:06] [PASSED] X0L2 Valid modifier
[20:39:06] [PASSED] X0L2 Modifier for inexistent plane
[20:39:06] =========== [PASSED] drm_test_framebuffer_create ===========
[20:39:06] [PASSED] drm_test_framebuffer_free
[20:39:06] [PASSED] drm_test_framebuffer_init
[20:39:06] [PASSED] drm_test_framebuffer_init_bad_format
[20:39:06] [PASSED] drm_test_framebuffer_init_dev_mismatch
[20:39:06] [PASSED] drm_test_framebuffer_lookup
[20:39:06] [PASSED] drm_test_framebuffer_lookup_inexistent
[20:39:06] [PASSED] drm_test_framebuffer_modifiers_not_supported
[20:39:06] ================= [PASSED] drm_framebuffer =================
[20:39:06] ================ drm_gem_shmem (8 subtests) ================
[20:39:06] [PASSED] drm_gem_shmem_test_obj_create
[20:39:06] [PASSED] drm_gem_shmem_test_obj_create_private
[20:39:06] [PASSED] drm_gem_shmem_test_pin_pages
[20:39:06] [PASSED] drm_gem_shmem_test_vmap
[20:39:06] [PASSED] drm_gem_shmem_test_get_pages_sgt
[20:39:06] [PASSED] drm_gem_shmem_test_get_sg_table
[20:39:06] [PASSED] drm_gem_shmem_test_madvise
[20:39:06] [PASSED] drm_gem_shmem_test_purge
[20:39:06] ================== [PASSED] drm_gem_shmem ==================
[20:39:06] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[20:39:06] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420 =======
[20:39:06] [PASSED] Automatic
[20:39:06] [PASSED] Full
[20:39:06] [PASSED] Limited 16:235
[20:39:06] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[20:39:06] [PASSED] drm_test_check_disable_connector
[20:39:06] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[20:39:06] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[20:39:06] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[20:39:06] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[20:39:06] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[20:39:06] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[20:39:06] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[20:39:06] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[20:39:06] [PASSED] drm_test_check_output_bpc_dvi
[20:39:06] [PASSED] drm_test_check_output_bpc_format_vic_1
[20:39:06] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[20:39:06] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[20:39:06] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[20:39:06] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[20:39:06] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[20:39:06] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[20:39:06] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[20:39:06] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[20:39:06] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[20:39:06] [PASSED] drm_test_check_broadcast_rgb_value
[20:39:06] [PASSED] drm_test_check_bpc_8_value
[20:39:06] [PASSED] drm_test_check_bpc_10_value
[20:39:06] [PASSED] drm_test_check_bpc_12_value
[20:39:06] [PASSED] drm_test_check_format_value
[20:39:06] [PASSED] drm_test_check_tmds_char_value
[20:39:06] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[20:39:06] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[20:39:06] [PASSED] drm_test_check_mode_valid
[20:39:06] [PASSED] drm_test_check_mode_valid_reject
[20:39:06] [PASSED] drm_test_check_mode_valid_reject_rate
[20:39:06] [PASSED] drm_test_check_mode_valid_reject_max_clock
[20:39:06] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[20:39:06] ================= drm_managed (2 subtests) =================
[20:39:06] [PASSED] drm_test_managed_release_action
[20:39:06] [PASSED] drm_test_managed_run_action
[20:39:06] =================== [PASSED] drm_managed ===================
[20:39:06] =================== drm_mm (6 subtests) ====================
[20:39:06] [PASSED] drm_test_mm_init
[20:39:06] [PASSED] drm_test_mm_debug
[20:39:06] [PASSED] drm_test_mm_align32
[20:39:06] [PASSED] drm_test_mm_align64
[20:39:06] [PASSED] drm_test_mm_lowest
[20:39:06] [PASSED] drm_test_mm_highest
[20:39:06] ===================== [PASSED] drm_mm ======================
[20:39:06] ============= drm_modes_analog_tv (5 subtests) =============
[20:39:06] [PASSED] drm_test_modes_analog_tv_mono_576i
[20:39:06] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[20:39:06] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[20:39:06] [PASSED] drm_test_modes_analog_tv_pal_576i
[20:39:06] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[20:39:06] =============== [PASSED] drm_modes_analog_tv ===============
[20:39:06] ============== drm_plane_helper (2 subtests) ===============
[20:39:06] =============== drm_test_check_plane_state ================
[20:39:06] [PASSED] clipping_simple
[20:39:06] [PASSED] clipping_rotate_reflect
[20:39:06] [PASSED] positioning_simple
[20:39:06] [PASSED] upscaling
[20:39:06] [PASSED] downscaling
[20:39:06] [PASSED] rounding1
[20:39:06] [PASSED] rounding2
[20:39:06] [PASSED] rounding3
[20:39:06] [PASSED] rounding4
[20:39:06] =========== [PASSED] drm_test_check_plane_state ============
[20:39:06] =========== drm_test_check_invalid_plane_state ============
[20:39:06] [PASSED] positioning_invalid
[20:39:06] [PASSED] upscaling_invalid
[20:39:06] [PASSED] downscaling_invalid
[20:39:06] ======= [PASSED] drm_test_check_invalid_plane_state ========
[20:39:06] ================ [PASSED] drm_plane_helper =================
[20:39:06] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[20:39:06] ====== drm_test_connector_helper_tv_get_modes_check =======
[20:39:06] [PASSED] None
[20:39:06] [PASSED] PAL
[20:39:06] [PASSED] NTSC
[20:39:06] [PASSED] Both, NTSC Default
[20:39:06] [PASSED] Both, PAL Default
[20:39:06] [PASSED] Both, NTSC Default, with PAL on command-line
[20:39:06] [PASSED] Both, PAL Default, with NTSC on command-line
[20:39:06] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[20:39:06] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[20:39:06] ================== drm_rect (9 subtests) ===================
[20:39:06] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[20:39:06] [PASSED] drm_test_rect_clip_scaled_not_clipped
[20:39:06] [PASSED] drm_test_rect_clip_scaled_clipped
[20:39:06] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[20:39:06] ================= drm_test_rect_intersect =================
[20:39:06] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[20:39:06] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[20:39:06] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[20:39:06] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[20:39:06] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[20:39:06] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[20:39:06] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[20:39:06] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[20:39:06] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[20:39:06] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[20:39:06] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[20:39:06] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[20:39:06] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[20:39:06] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[20:39:06] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[20:39:06] ============= [PASSED] drm_test_rect_intersect =============
[20:39:06] ================ drm_test_rect_calc_hscale ================
[20:39:06] [PASSED] normal use
[20:39:06] [PASSED] out of max range
[20:39:06] [PASSED] out of min range
[20:39:06] [PASSED] zero dst
[20:39:06] [PASSED] negative src
[20:39:06] [PASSED] negative dst
[20:39:06] ============ [PASSED] drm_test_rect_calc_hscale ============
[20:39:06] ================ drm_test_rect_calc_vscale ================
[20:39:06] [PASSED] normal use
[20:39:06] [PASSED] out of max range
[20:39:06] [PASSED] out of min range
[20:39:06] [PASSED] zero dst
[20:39:06] [PASSED] negative src
[20:39:06] [PASSED] negative dst
[20:39:06] ============ [PASSED] drm_test_rect_calc_vscale ============
[20:39:06] ================== drm_test_rect_rotate ===================
[20:39:06] [PASSED] reflect-x
[20:39:06] [PASSED] reflect-y
[20:39:06] [PASSED] rotate-0
[20:39:06] [PASSED] rotate-90
[20:39:06] [PASSED] rotate-180
[20:39:06] [PASSED] rotate-270
stty: 'standard input': Inappropriate ioctl for device
[20:39:06] ============== [PASSED] drm_test_rect_rotate ===============
[20:39:06] ================ drm_test_rect_rotate_inv =================
[20:39:06] [PASSED] reflect-x
[20:39:06] [PASSED] reflect-y
[20:39:06] [PASSED] rotate-0
[20:39:06] [PASSED] rotate-90
[20:39:06] [PASSED] rotate-180
[20:39:06] [PASSED] rotate-270
[20:39:06] ============ [PASSED] drm_test_rect_rotate_inv =============
[20:39:06] ==================== [PASSED] drm_rect =====================
[20:39:06] ============ drm_sysfb_modeset_test (1 subtest) ============
[20:39:06] ============ drm_test_sysfb_build_fourcc_list =============
[20:39:06] [PASSED] no native formats
[20:39:06] [PASSED] XRGB8888 as native format
[20:39:06] [PASSED] remove duplicates
[20:39:06] [PASSED] convert alpha formats
[20:39:06] [PASSED] random formats
[20:39:06] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[20:39:06] ============= [PASSED] drm_sysfb_modeset_test ==============
[20:39:06] ============================================================
[20:39:06] Testing complete. Ran 616 tests: passed: 616
[20:39:06] Elapsed time: 24.820s total, 1.723s configuring, 22.880s building, 0.199s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[20:39:07] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[20:39:08] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[20:39:16] Starting KUnit Kernel (1/1)...
[20:39:16] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[20:39:16] ================= ttm_device (5 subtests) ==================
[20:39:16] [PASSED] ttm_device_init_basic
[20:39:16] [PASSED] ttm_device_init_multiple
[20:39:16] [PASSED] ttm_device_fini_basic
[20:39:16] [PASSED] ttm_device_init_no_vma_man
[20:39:16] ================== ttm_device_init_pools ==================
[20:39:16] [PASSED] No DMA allocations, no DMA32 required
[20:39:16] [PASSED] DMA allocations, DMA32 required
[20:39:16] [PASSED] No DMA allocations, DMA32 required
[20:39:16] [PASSED] DMA allocations, no DMA32 required
[20:39:16] ============== [PASSED] ttm_device_init_pools ==============
[20:39:16] =================== [PASSED] ttm_device ====================
[20:39:16] ================== ttm_pool (8 subtests) ===================
[20:39:16] ================== ttm_pool_alloc_basic ===================
[20:39:16] [PASSED] One page
[20:39:16] [PASSED] More than one page
[20:39:16] [PASSED] Above the allocation limit
[20:39:16] [PASSED] One page, with coherent DMA mappings enabled
[20:39:16] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[20:39:16] ============== [PASSED] ttm_pool_alloc_basic ===============
[20:39:16] ============== ttm_pool_alloc_basic_dma_addr ==============
[20:39:16] [PASSED] One page
[20:39:16] [PASSED] More than one page
[20:39:16] [PASSED] Above the allocation limit
[20:39:16] [PASSED] One page, with coherent DMA mappings enabled
[20:39:16] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[20:39:16] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[20:39:16] [PASSED] ttm_pool_alloc_order_caching_match
[20:39:16] [PASSED] ttm_pool_alloc_caching_mismatch
[20:39:16] [PASSED] ttm_pool_alloc_order_mismatch
[20:39:16] [PASSED] ttm_pool_free_dma_alloc
[20:39:16] [PASSED] ttm_pool_free_no_dma_alloc
[20:39:16] [PASSED] ttm_pool_fini_basic
[20:39:16] ==================== [PASSED] ttm_pool =====================
[20:39:16] ================ ttm_resource (8 subtests) =================
[20:39:16] ================= ttm_resource_init_basic =================
[20:39:16] [PASSED] Init resource in TTM_PL_SYSTEM
[20:39:16] [PASSED] Init resource in TTM_PL_VRAM
[20:39:16] [PASSED] Init resource in a private placement
[20:39:16] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[20:39:16] ============= [PASSED] ttm_resource_init_basic =============
[20:39:16] [PASSED] ttm_resource_init_pinned
[20:39:16] [PASSED] ttm_resource_fini_basic
[20:39:16] [PASSED] ttm_resource_manager_init_basic
[20:39:16] [PASSED] ttm_resource_manager_usage_basic
[20:39:16] [PASSED] ttm_resource_manager_set_used_basic
[20:39:16] [PASSED] ttm_sys_man_alloc_basic
[20:39:16] [PASSED] ttm_sys_man_free_basic
[20:39:16] ================== [PASSED] ttm_resource ===================
[20:39:16] =================== ttm_tt (15 subtests) ===================
[20:39:16] ==================== ttm_tt_init_basic ====================
[20:39:16] [PASSED] Page-aligned size
[20:39:16] [PASSED] Extra pages requested
[20:39:16] ================ [PASSED] ttm_tt_init_basic ================
[20:39:16] [PASSED] ttm_tt_init_misaligned
[20:39:16] [PASSED] ttm_tt_fini_basic
[20:39:16] [PASSED] ttm_tt_fini_sg
[20:39:16] [PASSED] ttm_tt_fini_shmem
[20:39:16] [PASSED] ttm_tt_create_basic
[20:39:16] [PASSED] ttm_tt_create_invalid_bo_type
[20:39:16] [PASSED] ttm_tt_create_ttm_exists
[20:39:16] [PASSED] ttm_tt_create_failed
[20:39:16] [PASSED] ttm_tt_destroy_basic
[20:39:16] [PASSED] ttm_tt_populate_null_ttm
[20:39:16] [PASSED] ttm_tt_populate_populated_ttm
[20:39:16] [PASSED] ttm_tt_unpopulate_basic
[20:39:16] [PASSED] ttm_tt_unpopulate_empty_ttm
[20:39:16] [PASSED] ttm_tt_swapin_basic
[20:39:16] ===================== [PASSED] ttm_tt ======================
[20:39:16] =================== ttm_bo (14 subtests) ===================
[20:39:16] =========== ttm_bo_reserve_optimistic_no_ticket ===========
[20:39:16] [PASSED] Cannot be interrupted and sleeps
[20:39:16] [PASSED] Cannot be interrupted, locks straight away
[20:39:16] [PASSED] Can be interrupted, sleeps
[20:39:16] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[20:39:16] [PASSED] ttm_bo_reserve_locked_no_sleep
[20:39:16] [PASSED] ttm_bo_reserve_no_wait_ticket
[20:39:16] [PASSED] ttm_bo_reserve_double_resv
[20:39:16] [PASSED] ttm_bo_reserve_interrupted
[20:39:16] [PASSED] ttm_bo_reserve_deadlock
[20:39:16] [PASSED] ttm_bo_unreserve_basic
[20:39:16] [PASSED] ttm_bo_unreserve_pinned
[20:39:16] [PASSED] ttm_bo_unreserve_bulk
[20:39:16] [PASSED] ttm_bo_put_basic
[20:39:16] [PASSED] ttm_bo_put_shared_resv
[20:39:16] [PASSED] ttm_bo_pin_basic
[20:39:16] [PASSED] ttm_bo_pin_unpin_resource
[20:39:16] [PASSED] ttm_bo_multiple_pin_one_unpin
[20:39:16] ===================== [PASSED] ttm_bo ======================
[20:39:16] ============== ttm_bo_validate (21 subtests) ===============
[20:39:16] ============== ttm_bo_init_reserved_sys_man ===============
[20:39:16] [PASSED] Buffer object for userspace
[20:39:16] [PASSED] Kernel buffer object
[20:39:16] [PASSED] Shared buffer object
[20:39:16] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[20:39:16] ============== ttm_bo_init_reserved_mock_man ==============
[20:39:16] [PASSED] Buffer object for userspace
[20:39:16] [PASSED] Kernel buffer object
[20:39:16] [PASSED] Shared buffer object
[20:39:16] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[20:39:16] [PASSED] ttm_bo_init_reserved_resv
[20:39:16] ================== ttm_bo_validate_basic ==================
[20:39:16] [PASSED] Buffer object for userspace
[20:39:16] [PASSED] Kernel buffer object
[20:39:16] [PASSED] Shared buffer object
[20:39:16] ============== [PASSED] ttm_bo_validate_basic ==============
[20:39:16] [PASSED] ttm_bo_validate_invalid_placement
[20:39:16] ============= ttm_bo_validate_same_placement ==============
[20:39:16] [PASSED] System manager
[20:39:16] [PASSED] VRAM manager
[20:39:16] ========= [PASSED] ttm_bo_validate_same_placement ==========
[20:39:16] [PASSED] ttm_bo_validate_failed_alloc
[20:39:16] [PASSED] ttm_bo_validate_pinned
[20:39:16] [PASSED] ttm_bo_validate_busy_placement
[20:39:16] ================ ttm_bo_validate_multihop =================
[20:39:16] [PASSED] Buffer object for userspace
[20:39:16] [PASSED] Kernel buffer object
[20:39:16] [PASSED] Shared buffer object
[20:39:16] ============ [PASSED] ttm_bo_validate_multihop =============
[20:39:16] ========== ttm_bo_validate_no_placement_signaled ==========
[20:39:16] [PASSED] Buffer object in system domain, no page vector
[20:39:16] [PASSED] Buffer object in system domain with an existing page vector
[20:39:16] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[20:39:16] ======== ttm_bo_validate_no_placement_not_signaled ========
[20:39:16] [PASSED] Buffer object for userspace
[20:39:16] [PASSED] Kernel buffer object
[20:39:16] [PASSED] Shared buffer object
[20:39:16] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[20:39:16] [PASSED] ttm_bo_validate_move_fence_signaled
[20:39:16] ========= ttm_bo_validate_move_fence_not_signaled =========
[20:39:16] [PASSED] Waits for GPU
[20:39:16] [PASSED] Tries to lock straight away
[20:39:16] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[20:39:16] [PASSED] ttm_bo_validate_happy_evict
[20:39:16] [PASSED] ttm_bo_validate_all_pinned_evict
[20:39:16] [PASSED] ttm_bo_validate_allowed_only_evict
[20:39:16] [PASSED] ttm_bo_validate_deleted_evict
[20:39:16] [PASSED] ttm_bo_validate_busy_domain_evict
[20:39:16] [PASSED] ttm_bo_validate_evict_gutting
[20:39:16] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[20:39:16] ================= [PASSED] ttm_bo_validate =================
[20:39:16] ============================================================
[20:39:16] Testing complete. Ran 101 tests: passed: 101
[20:39:16] Elapsed time: 9.898s total, 1.776s configuring, 7.905s building, 0.184s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 32+ messages in thread* ✓ Xe.CI.BAT: success for drm/{i915,xe}/fbdev: refactor
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (10 preceding siblings ...)
2025-09-03 20:39 ` ✓ CI.KUnit: success " Patchwork
@ 2025-09-03 21:11 ` Patchwork
2025-09-04 3:14 ` ✓ Xe.CI.Full: " Patchwork
12 siblings, 0 replies; 32+ messages in thread
From: Patchwork @ 2025-09-03 21:11 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 2954 bytes --]
== Series Details ==
Series: drm/{i915,xe}/fbdev: refactor
URL : https://patchwork.freedesktop.org/series/153981/
State : success
== Summary ==
CI Bug Log - changes from xe-3672-09933716bb37eda75f5b3562a76e58a17c447647_BAT -> xe-pw-153981v1_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (11 -> 11)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in xe-pw-153981v1_BAT:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@xe_sriov_flr@flr-vf1-clear:
- {bat-ptl-vm}: [SKIP][1] ([Intel XE#5496]) -> [SKIP][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/bat-ptl-vm/igt@xe_sriov_flr@flr-vf1-clear.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/bat-ptl-vm/igt@xe_sriov_flr@flr-vf1-clear.html
Known issues
------------
Here are the changes found in xe-pw-153981v1_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_flip@basic-plain-flip@c-edp1:
- bat-adlp-7: [PASS][3] -> [DMESG-WARN][4] ([Intel XE#4543]) +1 other test dmesg-warn
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/bat-adlp-7/igt@kms_flip@basic-plain-flip@c-edp1.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/bat-adlp-7/igt@kms_flip@basic-plain-flip@c-edp1.html
#### Warnings ####
* igt@xe_sriov_flr@flr-vf1-clear:
- bat-adlp-vm: [SKIP][5] ([Intel XE#3342] / [Intel XE#5496]) -> [SKIP][6] ([Intel XE#3342])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/bat-adlp-vm/igt@xe_sriov_flr@flr-vf1-clear.html
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/bat-adlp-vm/igt@xe_sriov_flr@flr-vf1-clear.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#3342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3342
[Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
[Intel XE#5496]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5496
[Intel XE#5783]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5783
Build changes
-------------
* IGT: IGT_8520 -> IGT_8521
* Linux: xe-3672-09933716bb37eda75f5b3562a76e58a17c447647 -> xe-pw-153981v1
IGT_8520: 8520
IGT_8521: 8521
xe-3672-09933716bb37eda75f5b3562a76e58a17c447647: 09933716bb37eda75f5b3562a76e58a17c447647
xe-pw-153981v1: 153981v1
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/index.html
[-- Attachment #2: Type: text/html, Size: 3651 bytes --]
^ permalink raw reply [flat|nested] 32+ messages in thread* ✓ Xe.CI.Full: success for drm/{i915,xe}/fbdev: refactor
2025-09-03 20:31 [PATCH 0/9] drm/{i915,xe}/fbdev: refactor Jani Nikula
` (11 preceding siblings ...)
2025-09-03 21:11 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-09-04 3:14 ` Patchwork
12 siblings, 0 replies; 32+ messages in thread
From: Patchwork @ 2025-09-04 3:14 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 88374 bytes --]
== Series Details ==
Series: drm/{i915,xe}/fbdev: refactor
URL : https://patchwork.freedesktop.org/series/153981/
State : success
== Summary ==
CI Bug Log - changes from xe-3672-09933716bb37eda75f5b3562a76e58a17c447647_FULL -> xe-pw-153981v1_FULL
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (4 -> 4)
------------------------------
No changes in participating hosts
New tests
---------
New tests have been introduced between xe-3672-09933716bb37eda75f5b3562a76e58a17c447647_FULL and xe-pw-153981v1_FULL:
### New IGT tests (126) ###
* igt@kms_cursor_crc@cursor-offscreen-128x128@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.38] s
* igt@kms_cursor_crc@cursor-offscreen-128x128@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.28] s
* igt@kms_cursor_crc@cursor-offscreen-128x42@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.39] s
* igt@kms_cursor_crc@cursor-offscreen-128x42@pipe-a-hdmi-a-2:
- Statuses : 1 pass(s)
- Exec time: [2.60] s
* igt@kms_cursor_crc@cursor-offscreen-128x42@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.26] s
* igt@kms_cursor_crc@cursor-offscreen-256x256@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.39] s
* igt@kms_cursor_crc@cursor-offscreen-256x256@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.26] s
* igt@kms_cursor_crc@cursor-offscreen-256x85@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.36] s
* igt@kms_cursor_crc@cursor-offscreen-256x85@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.28] s
* igt@kms_cursor_crc@cursor-offscreen-64x21@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.37] s
* igt@kms_cursor_crc@cursor-offscreen-64x21@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.26] s
* igt@kms_cursor_crc@cursor-offscreen-64x64@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_cursor_crc@cursor-offscreen-64x64@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.28] s
* igt@kms_cursor_crc@cursor-onscreen-128x128@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.23] s
* igt@kms_cursor_crc@cursor-onscreen-128x128@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.11] s
* igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.22] s
* igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.11] s
* igt@kms_cursor_crc@cursor-onscreen-256x256@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.22] s
* igt@kms_cursor_crc@cursor-onscreen-256x256@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.13] s
* igt@kms_cursor_crc@cursor-onscreen-256x85@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.20] s
* igt@kms_cursor_crc@cursor-onscreen-256x85@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.13] s
* igt@kms_cursor_crc@cursor-onscreen-64x21@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.20] s
* igt@kms_cursor_crc@cursor-onscreen-64x21@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.11] s
* igt@kms_cursor_crc@cursor-onscreen-64x64@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.25] s
* igt@kms_cursor_crc@cursor-onscreen-64x64@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [2.11] s
* igt@kms_cursor_crc@cursor-random-128x128@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.71] s
* igt@kms_cursor_crc@cursor-random-128x128@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.57] s
* igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.70] s
* igt@kms_cursor_crc@cursor-random-128x42@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.58] s
* igt@kms_cursor_crc@cursor-random-256x256@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.71] s
* igt@kms_cursor_crc@cursor-random-256x256@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.60] s
* igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.70] s
* igt@kms_cursor_crc@cursor-random-256x85@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.60] s
* igt@kms_cursor_crc@cursor-random-64x21@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.67] s
* igt@kms_cursor_crc@cursor-random-64x21@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.60] s
* igt@kms_cursor_crc@cursor-random-64x64@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.67] s
* igt@kms_cursor_crc@cursor-random-64x64@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.58] s
* igt@kms_cursor_crc@cursor-rapid-movement-128x128@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.37] s
* igt@kms_cursor_crc@cursor-rapid-movement-128x128@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-rapid-movement-128x42@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.34] s
* igt@kms_cursor_crc@cursor-rapid-movement-128x42@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-rapid-movement-256x256@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.35] s
* igt@kms_cursor_crc@cursor-rapid-movement-256x256@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-rapid-movement-256x85@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.33] s
* igt@kms_cursor_crc@cursor-rapid-movement-256x85@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-rapid-movement-64x21@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.36] s
* igt@kms_cursor_crc@cursor-rapid-movement-64x21@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-rapid-movement-64x64@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.33] s
* igt@kms_cursor_crc@cursor-rapid-movement-64x64@pipe-a-hdmi-a-2:
- Statuses : 1 pass(s)
- Exec time: [0.58] s
* igt@kms_cursor_crc@cursor-rapid-movement-64x64@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [0.24] s
* igt@kms_cursor_crc@cursor-sliding-128x128@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.57] s
* igt@kms_cursor_crc@cursor-sliding-128x128@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.44] s
* igt@kms_cursor_crc@cursor-sliding-128x42@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.55] s
* igt@kms_cursor_crc@cursor-sliding-128x42@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.46] s
* igt@kms_cursor_crc@cursor-sliding-256x256@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.57] s
* igt@kms_cursor_crc@cursor-sliding-256x256@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.44] s
* igt@kms_cursor_crc@cursor-sliding-256x85@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.58] s
* igt@kms_cursor_crc@cursor-sliding-256x85@pipe-a-hdmi-a-2:
- Statuses : 1 pass(s)
- Exec time: [3.90] s
* igt@kms_cursor_crc@cursor-sliding-256x85@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.46] s
* igt@kms_cursor_crc@cursor-sliding-64x21@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.59] s
* igt@kms_cursor_crc@cursor-sliding-64x21@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.46] s
* igt@kms_cursor_crc@cursor-sliding-64x64@pipe-a-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.57] s
* igt@kms_cursor_crc@cursor-sliding-64x64@pipe-d-hdmi-a-1:
- Statuses : 1 pass(s)
- Exec time: [3.44] s
* igt@kms_flip@basic-flip-vs-dpms@d-dp2:
- Statuses : 1 pass(s)
- Exec time: [0.72] s
* igt@kms_flip@basic-flip-vs-modeset@d-dp2:
- Statuses : 2 pass(s)
- Exec time: [0.69, 0.73] s
* igt@kms_flip@basic-flip-vs-wf_vblank@d-dp2:
- Statuses : 1 pass(s)
- Exec time: [1.02] s
* igt@kms_plane_cursor@overlay@pipe-a-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-a-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-a-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@overlay@pipe-b-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [3.10] s
* igt@kms_plane_cursor@overlay@pipe-b-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.85] s
* igt@kms_plane_cursor@overlay@pipe-b-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.88] s
* igt@kms_plane_cursor@overlay@pipe-b-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-b-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-b-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@overlay@pipe-c-dp-2-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.96] s
* igt@kms_plane_cursor@overlay@pipe-c-dp-2-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.95] s
* igt@kms_plane_cursor@overlay@pipe-c-dp-2-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.00] s
* igt@kms_plane_cursor@overlay@pipe-c-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.55] s
* igt@kms_plane_cursor@overlay@pipe-c-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.56] s
* igt@kms_plane_cursor@overlay@pipe-c-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.31] s
* igt@kms_plane_cursor@overlay@pipe-c-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-c-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-c-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.44] s
* igt@kms_plane_cursor@overlay@pipe-d-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-d-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@overlay@pipe-d-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@primary@pipe-a-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-a-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.41] s
* igt@kms_plane_cursor@primary@pipe-a-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.41] s
* igt@kms_plane_cursor@primary@pipe-b-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.75] s
* igt@kms_plane_cursor@primary@pipe-b-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.68] s
* igt@kms_plane_cursor@primary@pipe-b-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.49] s
* igt@kms_plane_cursor@primary@pipe-b-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-b-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-b-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@primary@pipe-c-dp-2-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.92] s
* igt@kms_plane_cursor@primary@pipe-c-dp-2-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.93] s
* igt@kms_plane_cursor@primary@pipe-c-dp-2-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.00] s
* igt@kms_plane_cursor@primary@pipe-c-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.41] s
* igt@kms_plane_cursor@primary@pipe-c-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.41] s
* igt@kms_plane_cursor@primary@pipe-c-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.23] s
* igt@kms_plane_cursor@primary@pipe-c-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-c-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-c-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@primary@pipe-d-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-d-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@primary@pipe-d-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.41] s
* igt@kms_plane_cursor@viewport@pipe-b-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.91] s
* igt@kms_plane_cursor@viewport@pipe-b-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.90] s
* igt@kms_plane_cursor@viewport@pipe-b-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.96] s
* igt@kms_plane_cursor@viewport@pipe-b-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-b-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-b-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@viewport@pipe-c-edp-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.55] s
* igt@kms_plane_cursor@viewport@pipe-c-edp-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.51] s
* igt@kms_plane_cursor@viewport@pipe-c-edp-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [3.29] s
* igt@kms_plane_cursor@viewport@pipe-c-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@viewport@pipe-c-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
* igt@kms_plane_cursor@viewport@pipe-c-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.44] s
* igt@kms_plane_cursor@viewport@pipe-d-hdmi-a-1-size-128:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-d-hdmi-a-1-size-256:
- Statuses : 1 pass(s)
- Exec time: [2.40] s
* igt@kms_plane_cursor@viewport@pipe-d-hdmi-a-1-size-64:
- Statuses : 1 pass(s)
- Exec time: [2.42] s
Known issues
------------
Here are the changes found in xe-pw-153981v1_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1:
- shard-adlp: [PASS][1] -> [FAIL][2] ([Intel XE#3884]) +1 other test fail
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-6/igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-270:
- shard-lnl: NOTRUN -> [SKIP][3] ([Intel XE#1407]) +1 other test skip
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html
- shard-bmg: NOTRUN -> [SKIP][4] ([Intel XE#2327])
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
- shard-lnl: NOTRUN -> [SKIP][5] ([Intel XE#3658])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@x-tiled-8bpp-rotate-270:
- shard-dg2-set2: NOTRUN -> [SKIP][6] ([Intel XE#316]) +2 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-435/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-bmg: NOTRUN -> [SKIP][7] ([Intel XE#1124]) +9 other tests skip
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
- shard-adlp: [PASS][8] -> [DMESG-FAIL][9] ([Intel XE#4543]) +8 other tests dmesg-fail
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-3/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180:
- shard-lnl: NOTRUN -> [SKIP][10] ([Intel XE#1124]) +5 other tests skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180.html
* igt@kms_big_fb@yf-tiled-16bpp-rotate-90:
- shard-adlp: NOTRUN -> [SKIP][11] ([Intel XE#1124]) +3 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@kms_big_fb@yf-tiled-16bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-32bpp-rotate-180:
- shard-dg2-set2: NOTRUN -> [SKIP][12] ([Intel XE#1124]) +8 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-436/igt@kms_big_fb@yf-tiled-32bpp-rotate-180.html
* igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p:
- shard-dg2-set2: NOTRUN -> [SKIP][13] ([Intel XE#2191])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p.html
* igt@kms_bw@linear-tiling-1-displays-3840x2160p:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#367]) +1 other test skip
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_bw@linear-tiling-1-displays-3840x2160p.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-6:
- shard-dg2-set2: NOTRUN -> [SKIP][15] ([Intel XE#787]) +174 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-6.html
* igt@kms_ccs@bad-aux-stride-yf-tiled-ccs@pipe-b-hdmi-a-1:
- shard-adlp: NOTRUN -> [SKIP][16] ([Intel XE#787]) +11 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-2/igt@kms_ccs@bad-aux-stride-yf-tiled-ccs@pipe-b-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs:
- shard-bmg: NOTRUN -> [SKIP][17] ([Intel XE#3432])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-8/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
- shard-lnl: NOTRUN -> [SKIP][18] ([Intel XE#3432])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-d-hdmi-a-1:
- shard-adlp: NOTRUN -> [SKIP][19] ([Intel XE#455] / [Intel XE#787]) +7 other tests skip
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs:
- shard-bmg: [PASS][20] -> [FAIL][21] ([Intel XE#5376])
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs.html
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs@pipe-a-dp-2:
- shard-bmg: NOTRUN -> [FAIL][22] ([Intel XE#5376])
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs@pipe-a-dp-2.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs:
- shard-adlp: NOTRUN -> [SKIP][23] ([Intel XE#2907])
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
- shard-dg2-set2: NOTRUN -> [SKIP][24] ([Intel XE#2907])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-d-dp-2:
- shard-dg2-set2: NOTRUN -> [SKIP][25] ([Intel XE#455] / [Intel XE#787]) +32 other tests skip
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs@pipe-d-dp-2.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs:
- shard-dg2-set2: [PASS][26] -> [INCOMPLETE][27] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4345] / [Intel XE#4522])
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-6:
- shard-dg2-set2: NOTRUN -> [INCOMPLETE][28] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4522])
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-6.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][29] ([Intel XE#2887]) +14 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2:
- shard-bmg: NOTRUN -> [SKIP][30] ([Intel XE#2652] / [Intel XE#787]) +30 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2.html
* igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs:
- shard-lnl: NOTRUN -> [SKIP][31] ([Intel XE#2887]) +4 other tests skip
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs.html
* igt@kms_cdclk@mode-transition@pipe-a-dp-2:
- shard-dg2-set2: NOTRUN -> [SKIP][32] ([Intel XE#4417]) +3 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@kms_cdclk@mode-transition@pipe-a-dp-2.html
* igt@kms_chamelium_color@ctm-green-to-red:
- shard-bmg: NOTRUN -> [SKIP][33] ([Intel XE#2325])
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_chamelium_color@ctm-green-to-red.html
* igt@kms_chamelium_edid@dp-edid-resolution-list:
- shard-adlp: NOTRUN -> [SKIP][34] ([Intel XE#373]) +2 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@kms_chamelium_edid@dp-edid-resolution-list.html
- shard-bmg: NOTRUN -> [SKIP][35] ([Intel XE#2252]) +8 other tests skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_chamelium_edid@dp-edid-resolution-list.html
- shard-lnl: NOTRUN -> [SKIP][36] ([Intel XE#373]) +1 other test skip
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@kms_chamelium_edid@dp-edid-resolution-list.html
* igt@kms_chamelium_hpd@hdmi-hpd:
- shard-dg2-set2: NOTRUN -> [SKIP][37] ([Intel XE#373]) +6 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_chamelium_hpd@hdmi-hpd.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg2-set2: NOTRUN -> [FAIL][38] ([Intel XE#1178]) +1 other test fail
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-adlp: NOTRUN -> [SKIP][39] ([Intel XE#307])
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@kms_content_protection@dp-mst-type-0.html
- shard-dg2-set2: NOTRUN -> [SKIP][40] ([Intel XE#307])
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-433/igt@kms_content_protection@dp-mst-type-0.html
- shard-lnl: NOTRUN -> [SKIP][41] ([Intel XE#307])
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-bmg: NOTRUN -> [SKIP][42] ([Intel XE#2390]) +1 other test skip
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@lic-type-0@pipe-a-dp-2:
- shard-bmg: NOTRUN -> [FAIL][43] ([Intel XE#1178]) +4 other tests fail
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@kms_content_protection@lic-type-0@pipe-a-dp-2.html
* igt@kms_content_protection@mei-interface:
- shard-lnl: NOTRUN -> [SKIP][44] ([Intel XE#1468])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@uevent:
- shard-dg2-set2: NOTRUN -> [FAIL][45] ([Intel XE#1188]) +1 other test fail
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_content_protection@uevent.html
* igt@kms_cursor_crc@cursor-onscreen-512x170:
- shard-lnl: NOTRUN -> [SKIP][46] ([Intel XE#2321])
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_cursor_crc@cursor-onscreen-512x170.html
* igt@kms_cursor_crc@cursor-random-32x32:
- shard-bmg: NOTRUN -> [SKIP][47] ([Intel XE#2320]) +4 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@kms_cursor_crc@cursor-random-32x32.html
* igt@kms_cursor_crc@cursor-random-512x512:
- shard-bmg: NOTRUN -> [SKIP][48] ([Intel XE#2321])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_cursor_crc@cursor-random-512x512.html
* igt@kms_cursor_crc@cursor-rapid-movement-256x85:
- shard-lnl: NOTRUN -> [SKIP][49] ([Intel XE#1424])
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_cursor_crc@cursor-rapid-movement-256x85.html
* igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-1:
- shard-adlp: NOTRUN -> [DMESG-WARN][50] ([Intel XE#2953] / [Intel XE#4173]) +1 other test dmesg-warn
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-1.html
* igt@kms_cursor_legacy@cursor-vs-flip-toggle:
- shard-bmg: [PASS][51] -> [DMESG-WARN][52] ([Intel XE#5354]) +1 other test dmesg-warn
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-3/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-4/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
- shard-bmg: [PASS][53] -> [SKIP][54] ([Intel XE#2291]) +1 other test skip
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-7/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-toggle:
- shard-lnl: NOTRUN -> [SKIP][55] ([Intel XE#309]) +1 other test skip
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@kms_cursor_legacy@cursorb-vs-flipa-toggle.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
- shard-adlp: NOTRUN -> [SKIP][56] ([Intel XE#309]) +1 other test skip
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-2/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-3:
- shard-bmg: NOTRUN -> [SKIP][57] ([Intel XE#1340])
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-3.html
* igt@kms_dp_link_training@non-uhbr-mst:
- shard-dg2-set2: NOTRUN -> [SKIP][58] ([Intel XE#4354])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@kms_dp_link_training@non-uhbr-mst.html
- shard-bmg: NOTRUN -> [SKIP][59] ([Intel XE#4354])
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-8/igt@kms_dp_link_training@non-uhbr-mst.html
* igt@kms_dsc@dsc-with-bpc-formats:
- shard-lnl: NOTRUN -> [SKIP][60] ([Intel XE#2244]) +1 other test skip
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@kms_dsc@dsc-with-bpc-formats.html
- shard-bmg: NOTRUN -> [SKIP][61] ([Intel XE#2244])
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_dsc@dsc-with-bpc-formats.html
* igt@kms_feature_discovery@display-2x:
- shard-bmg: [PASS][62] -> [SKIP][63] ([Intel XE#2373])
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-3/igt@kms_feature_discovery@display-2x.html
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_feature_discovery@display-2x.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-lnl: NOTRUN -> [SKIP][64] ([Intel XE#1421])
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@2x-flip-vs-panning-vs-hang:
- shard-bmg: NOTRUN -> [SKIP][65] ([Intel XE#2316]) +2 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_flip@2x-flip-vs-panning-vs-hang.html
* igt@kms_flip@2x-nonexisting-fb:
- shard-bmg: [PASS][66] -> [SKIP][67] ([Intel XE#2316]) +5 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-1/igt@kms_flip@2x-nonexisting-fb.html
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_flip@2x-nonexisting-fb.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-lnl: [PASS][68] -> [FAIL][69] ([Intel XE#301] / [Intel XE#3149])
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:
- shard-lnl: [PASS][70] -> [FAIL][71] ([Intel XE#301])
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-lnl: NOTRUN -> [FAIL][72] ([Intel XE#301]) +1 other test fail
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
* igt@kms_flip@flip-vs-panning@d-hdmi-a1:
- shard-adlp: [PASS][73] -> [DMESG-WARN][74] ([Intel XE#4543]) +9 other tests dmesg-warn
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-9/igt@kms_flip@flip-vs-panning@d-hdmi-a1.html
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-2/igt@kms_flip@flip-vs-panning@d-hdmi-a1.html
* igt@kms_flip@modeset-vs-vblank-race:
- shard-adlp: [PASS][75] -> [DMESG-WARN][76] ([Intel XE#2953] / [Intel XE#4173] / [Intel XE#5208])
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-6/igt@kms_flip@modeset-vs-vblank-race.html
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-6/igt@kms_flip@modeset-vs-vblank-race.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
- shard-lnl: NOTRUN -> [SKIP][77] ([Intel XE#1401] / [Intel XE#1745])
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-default-mode:
- shard-lnl: NOTRUN -> [SKIP][78] ([Intel XE#1401])
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-valid-mode:
- shard-bmg: NOTRUN -> [SKIP][79] ([Intel XE#2293]) +3 other tests skip
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-bmg: NOTRUN -> [SKIP][80] ([Intel XE#2380]) +1 other test skip
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling@pipe-a-valid-mode:
- shard-adlp: [PASS][81] -> [DMESG-FAIL][82] ([Intel XE#4543] / [Intel XE#4921]) +1 other test dmesg-fail
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-9/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling@pipe-a-valid-mode.html
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling:
- shard-bmg: NOTRUN -> [SKIP][83] ([Intel XE#2293] / [Intel XE#2380]) +3 other tests skip
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling.html
* igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-render:
- shard-adlp: NOTRUN -> [SKIP][84] ([Intel XE#651]) +2 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-wc:
- shard-dg2-set2: NOTRUN -> [SKIP][85] ([Intel XE#651]) +16 other tests skip
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][86] ([Intel XE#2312]) +4 other tests skip
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
- shard-adlp: NOTRUN -> [SKIP][87] ([Intel XE#656]) +8 other tests skip
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
- shard-bmg: NOTRUN -> [SKIP][88] ([Intel XE#5390]) +6 other tests skip
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-mmap-wc:
- shard-lnl: NOTRUN -> [SKIP][89] ([Intel XE#651]) +5 other tests skip
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-1/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][90] ([Intel XE#2311]) +18 other tests skip
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcdrrs-tiling-4:
- shard-adlp: NOTRUN -> [SKIP][91] ([Intel XE#1151])
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-4/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-4.html
* igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][92] ([Intel XE#2352])
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-msflip-blt:
- shard-adlp: NOTRUN -> [SKIP][93] ([Intel XE#653]) +1 other test skip
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc:
- shard-lnl: NOTRUN -> [SKIP][94] ([Intel XE#656]) +12 other tests skip
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary:
- shard-bmg: NOTRUN -> [SKIP][95] ([Intel XE#2313]) +24 other tests skip
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-blt:
- shard-dg2-set2: NOTRUN -> [SKIP][96] ([Intel XE#653]) +18 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-blt.html
* igt@kms_hdr@static-toggle:
- shard-lnl: NOTRUN -> [SKIP][97] ([Intel XE#1503])
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@kms_hdr@static-toggle.html
* igt@kms_invalid_mode@bad-vsync-start:
- shard-adlp: [PASS][98] -> [DMESG-WARN][99] ([Intel XE#2953] / [Intel XE#4173]) +21 other tests dmesg-warn
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-3/igt@kms_invalid_mode@bad-vsync-start.html
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@kms_invalid_mode@bad-vsync-start.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-adlp: NOTRUN -> [SKIP][100] ([Intel XE#3012])
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-bmg: NOTRUN -> [SKIP][101] ([Intel XE#2927])
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_joiner@basic-ultra-joiner.html
- shard-dg2-set2: NOTRUN -> [SKIP][102] ([Intel XE#2927])
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-bmg: NOTRUN -> [SKIP][103] ([Intel XE#2501])
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-bmg: NOTRUN -> [SKIP][104] ([Intel XE#2486])
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_pipe_stress@stress-xrgb8888-ytiled:
- shard-bmg: NOTRUN -> [SKIP][105] ([Intel XE#4329])
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-3/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
- shard-dg2-set2: NOTRUN -> [SKIP][106] ([Intel XE#4359])
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-433/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
* igt@kms_plane_cursor@viewport:
- shard-dg2-set2: [PASS][107] -> [FAIL][108] ([Intel XE#616]) +1 other test fail
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-466/igt@kms_plane_cursor@viewport.html
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_plane_cursor@viewport.html
* igt@kms_plane_lowres@tiling-yf:
- shard-lnl: NOTRUN -> [SKIP][109] ([Intel XE#599])
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_plane_multiple@2x-tiling-none:
- shard-lnl: NOTRUN -> [SKIP][110] ([Intel XE#4596])
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_plane_multiple@2x-tiling-none.html
- shard-adlp: NOTRUN -> [SKIP][111] ([Intel XE#4596])
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@kms_plane_multiple@2x-tiling-none.html
* igt@kms_plane_multiple@2x-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][112] ([Intel XE#5021])
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_plane_multiple@2x-tiling-y.html
* igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers:
- shard-lnl: NOTRUN -> [SKIP][113] ([Intel XE#2763]) +3 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-modifiers.html
* igt@kms_pm_dc@dc3co-vpb-simulation:
- shard-bmg: NOTRUN -> [SKIP][114] ([Intel XE#2391])
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-3/igt@kms_pm_dc@dc3co-vpb-simulation.html
- shard-adlp: NOTRUN -> [SKIP][115] ([Intel XE#1122])
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_pm_dc@dc3co-vpb-simulation.html
- shard-dg2-set2: NOTRUN -> [SKIP][116] ([Intel XE#1122])
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-433/igt@kms_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pm_dc@deep-pkgc:
- shard-bmg: NOTRUN -> [SKIP][117] ([Intel XE#2505])
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-8/igt@kms_pm_dc@deep-pkgc.html
- shard-dg2-set2: NOTRUN -> [SKIP][118] ([Intel XE#908])
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@kms_pm_dc@deep-pkgc.html
* igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area:
- shard-dg2-set2: NOTRUN -> [SKIP][119] ([Intel XE#1406] / [Intel XE#1489]) +3 other tests skip
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html
* igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf:
- shard-bmg: NOTRUN -> [SKIP][120] ([Intel XE#1406] / [Intel XE#1489]) +3 other tests skip
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-4/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_sf@pr-plane-move-sf-dmg-area:
- shard-lnl: NOTRUN -> [SKIP][121] ([Intel XE#1406] / [Intel XE#2893]) +1 other test skip
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@kms_psr2_sf@pr-plane-move-sf-dmg-area.html
* igt@kms_psr2_sf@psr2-plane-move-sf-dmg-area:
- shard-adlp: NOTRUN -> [SKIP][122] ([Intel XE#1406] / [Intel XE#1489]) +1 other test skip
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-2/igt@kms_psr2_sf@psr2-plane-move-sf-dmg-area.html
* igt@kms_psr@fbc-psr2-primary-render:
- shard-dg2-set2: NOTRUN -> [SKIP][123] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +4 other tests skip
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@kms_psr@fbc-psr2-primary-render.html
- shard-lnl: NOTRUN -> [SKIP][124] ([Intel XE#1406]) +1 other test skip
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_psr@fbc-psr2-primary-render.html
* igt@kms_psr@fbc-psr2-primary-render@edp-1:
- shard-lnl: NOTRUN -> [SKIP][125] ([Intel XE#1406] / [Intel XE#4609])
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_psr@fbc-psr2-primary-render@edp-1.html
* igt@kms_psr@pr-sprite-plane-onoff:
- shard-bmg: NOTRUN -> [SKIP][126] ([Intel XE#1406] / [Intel XE#2234] / [Intel XE#2850]) +5 other tests skip
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_psr@pr-sprite-plane-onoff.html
* igt@kms_psr@pr-sprite-render:
- shard-adlp: NOTRUN -> [SKIP][127] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +1 other test skip
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_psr@pr-sprite-render.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-bmg: NOTRUN -> [SKIP][128] ([Intel XE#1406] / [Intel XE#2414])
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_rotation_crc@primary-x-tiled-reflect-x-180:
- shard-lnl: NOTRUN -> [FAIL][129] ([Intel XE#4689])
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@kms_rotation_crc@primary-x-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90:
- shard-bmg: NOTRUN -> [SKIP][130] ([Intel XE#3414] / [Intel XE#3904]) +2 other tests skip
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
* igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
- shard-dg2-set2: NOTRUN -> [SKIP][131] ([Intel XE#3414])
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-433/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
* igt@kms_scaling_modes@scaling-mode-center:
- shard-adlp: NOTRUN -> [SKIP][132] ([Intel XE#455]) +5 other tests skip
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-2/igt@kms_scaling_modes@scaling-mode-center.html
- shard-bmg: NOTRUN -> [SKIP][133] ([Intel XE#2413])
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_scaling_modes@scaling-mode-center.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-dg2-set2: NOTRUN -> [SKIP][134] ([Intel XE#362])
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_vrr@flip-basic:
- shard-bmg: NOTRUN -> [SKIP][135] ([Intel XE#1499]) +1 other test skip
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_vrr@flip-basic.html
* igt@kms_vrr@flip-dpms:
- shard-dg2-set2: NOTRUN -> [SKIP][136] ([Intel XE#455]) +5 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@kms_vrr@flip-dpms.html
* igt@kms_vrr@negative-basic:
- shard-bmg: [PASS][137] -> [SKIP][138] ([Intel XE#1499])
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-7/igt@kms_vrr@negative-basic.html
[138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_vrr@negative-basic.html
* igt@xe_compute@ccs-mode-compute-kernel:
- shard-adlp: NOTRUN -> [SKIP][139] ([Intel XE#1447] / [Intel XE#5596])
[139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@xe_compute@ccs-mode-compute-kernel.html
- shard-bmg: NOTRUN -> [FAIL][140] ([Intel XE#5963])
[140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@xe_compute@ccs-mode-compute-kernel.html
- shard-lnl: NOTRUN -> [SKIP][141] ([Intel XE#1447])
[141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-5/igt@xe_compute@ccs-mode-compute-kernel.html
* igt@xe_copy_basic@mem-set-linear-0x3fff:
- shard-adlp: NOTRUN -> [SKIP][142] ([Intel XE#1126])
[142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@xe_copy_basic@mem-set-linear-0x3fff.html
- shard-dg2-set2: NOTRUN -> [SKIP][143] ([Intel XE#1126])
[143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@xe_copy_basic@mem-set-linear-0x3fff.html
* igt@xe_eu_stall@unprivileged-access:
- shard-adlp: NOTRUN -> [SKIP][144] ([Intel XE#5626])
[144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@xe_eu_stall@unprivileged-access.html
- shard-dg2-set2: NOTRUN -> [SKIP][145] ([Intel XE#5626])
[145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-433/igt@xe_eu_stall@unprivileged-access.html
* igt@xe_eudebug@basic-close:
- shard-lnl: NOTRUN -> [SKIP][146] ([Intel XE#4837]) +4 other tests skip
[146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-7/igt@xe_eudebug@basic-close.html
* igt@xe_eudebug_online@interrupt-other:
- shard-adlp: NOTRUN -> [SKIP][147] ([Intel XE#4837] / [Intel XE#5565]) +2 other tests skip
[147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@xe_eudebug_online@interrupt-other.html
- shard-bmg: NOTRUN -> [SKIP][148] ([Intel XE#4837]) +7 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-8/igt@xe_eudebug_online@interrupt-other.html
- shard-dg2-set2: NOTRUN -> [SKIP][149] ([Intel XE#4837]) +4 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-436/igt@xe_eudebug_online@interrupt-other.html
* igt@xe_evict@evict-beng-large:
- shard-adlp: NOTRUN -> [SKIP][150] ([Intel XE#261] / [Intel XE#5564])
[150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@xe_evict@evict-beng-large.html
- shard-lnl: NOTRUN -> [SKIP][151] ([Intel XE#688]) +1 other test skip
[151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@xe_evict@evict-beng-large.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null:
- shard-lnl: NOTRUN -> [SKIP][152] ([Intel XE#1392]) +3 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-rebind:
- shard-adlp: NOTRUN -> [SKIP][153] ([Intel XE#1392] / [Intel XE#5575]) +1 other test skip
[153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-6/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-rebind.html
* igt@xe_exec_basic@multigpu-once-basic:
- shard-dg2-set2: NOTRUN -> [SKIP][154] ([Intel XE#1392])
[154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@xe_exec_basic@multigpu-once-basic.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][155] ([Intel XE#2322]) +4 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race:
- shard-dg2-set2: [PASS][156] -> [SKIP][157] ([Intel XE#1392]) +3 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-433/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race.html
[157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-432/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race.html
* igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-invalidate-race:
- shard-dg2-set2: NOTRUN -> [SKIP][158] ([Intel XE#288]) +12 other tests skip
[158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-invalidate-race.html
* igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-prefetch:
- shard-adlp: NOTRUN -> [SKIP][159] ([Intel XE#288] / [Intel XE#5561]) +5 other tests skip
[159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-prefetch.html
* igt@xe_exec_mix_modes@exec-spinner-interrupted-dma-fence:
- shard-adlp: NOTRUN -> [SKIP][160] ([Intel XE#2360] / [Intel XE#5573])
[160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-4/igt@xe_exec_mix_modes@exec-spinner-interrupted-dma-fence.html
* igt@xe_exec_reset@cm-close-fd:
- shard-adlp: [PASS][161] -> [DMESG-WARN][162] ([Intel XE#3868])
[161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-4/igt@xe_exec_reset@cm-close-fd.html
[162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@xe_exec_reset@cm-close-fd.html
* igt@xe_exec_reset@parallel-gt-reset:
- shard-adlp: [PASS][163] -> [DMESG-WARN][164] ([Intel XE#3876])
[163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-2/igt@xe_exec_reset@parallel-gt-reset.html
[164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-4/igt@xe_exec_reset@parallel-gt-reset.html
* igt@xe_exec_system_allocator@threads-many-large-mmap-shared-remap:
- shard-adlp: NOTRUN -> [SKIP][165] ([Intel XE#4915]) +60 other tests skip
[165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@xe_exec_system_allocator@threads-many-large-mmap-shared-remap.html
* igt@xe_exec_system_allocator@threads-many-stride-new-nomemset:
- shard-dg2-set2: NOTRUN -> [SKIP][166] ([Intel XE#4915]) +128 other tests skip
[166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@xe_exec_system_allocator@threads-many-stride-new-nomemset.html
* igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-mmap-new-huge:
- shard-bmg: NOTRUN -> [SKIP][167] ([Intel XE#4943]) +17 other tests skip
[167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-mmap-new-huge.html
* igt@xe_exec_system_allocator@threads-shared-vm-many-large-mmap-free-huge:
- shard-lnl: NOTRUN -> [SKIP][168] ([Intel XE#4943]) +5 other tests skip
[168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@xe_exec_system_allocator@threads-shared-vm-many-large-mmap-free-huge.html
* igt@xe_oa@closed-fd-and-unmapped-access:
- shard-dg2-set2: NOTRUN -> [SKIP][169] ([Intel XE#3573]) +3 other tests skip
[169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-435/igt@xe_oa@closed-fd-and-unmapped-access.html
* igt@xe_oa@non-system-wide-paranoid:
- shard-adlp: NOTRUN -> [SKIP][170] ([Intel XE#3573]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@xe_oa@non-system-wide-paranoid.html
* igt@xe_peer2peer@read:
- shard-bmg: NOTRUN -> [SKIP][171] ([Intel XE#2427]) +1 other test skip
[171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@xe_peer2peer@read.html
* igt@xe_peer2peer@write:
- shard-adlp: NOTRUN -> [SKIP][172] ([Intel XE#1061] / [Intel XE#5568])
[172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@xe_peer2peer@write.html
- shard-lnl: NOTRUN -> [SKIP][173] ([Intel XE#1061])
[173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-4/igt@xe_peer2peer@write.html
* igt@xe_peer2peer@write@write-gpua-vram01-gpub-system-p2p:
- shard-dg2-set2: NOTRUN -> [FAIL][174] ([Intel XE#1173]) +1 other test fail
[174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@xe_peer2peer@write@write-gpua-vram01-gpub-system-p2p.html
* igt@xe_pm@d3cold-basic-exec:
- shard-dg2-set2: NOTRUN -> [SKIP][175] ([Intel XE#2284] / [Intel XE#366]) +2 other tests skip
[175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@xe_pm@d3cold-basic-exec.html
* igt@xe_pm@d3cold-mocs:
- shard-bmg: NOTRUN -> [SKIP][176] ([Intel XE#2284]) +2 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-3/igt@xe_pm@d3cold-mocs.html
* igt@xe_pm@s3-mocs:
- shard-adlp: [PASS][177] -> [DMESG-WARN][178] ([Intel XE#2953] / [Intel XE#4173] / [Intel XE#569])
[177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-6/igt@xe_pm@s3-mocs.html
[178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@xe_pm@s3-mocs.html
* igt@xe_pmu@fn-engine-activity-sched-if-idle:
- shard-lnl: NOTRUN -> [SKIP][179] ([Intel XE#4650])
[179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-8/igt@xe_pmu@fn-engine-activity-sched-if-idle.html
* igt@xe_pmu@gt-frequency:
- shard-dg2-set2: [PASS][180] -> [FAIL][181] ([Intel XE#4819]) +1 other test fail
[180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-466/igt@xe_pmu@gt-frequency.html
[181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-435/igt@xe_pmu@gt-frequency.html
* igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq:
- shard-adlp: NOTRUN -> [SKIP][182] ([Intel XE#4733] / [Intel XE#5594])
[182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html
- shard-bmg: NOTRUN -> [SKIP][183] ([Intel XE#4733]) +1 other test skip
[183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html
- shard-dg2-set2: NOTRUN -> [SKIP][184] ([Intel XE#4733])
[184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-466/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html
* igt@xe_sriov_auto_provisioning@selfconfig-reprovision-reduce-numvfs:
- shard-bmg: [PASS][185] -> [FAIL][186] ([Intel XE#6006]) +1 other test fail
[185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-4/igt@xe_sriov_auto_provisioning@selfconfig-reprovision-reduce-numvfs.html
[186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@xe_sriov_auto_provisioning@selfconfig-reprovision-reduce-numvfs.html
* igt@xe_sriov_flr@flr-twice:
- shard-dg2-set2: NOTRUN -> [SKIP][187] ([Intel XE#4273])
[187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@xe_sriov_flr@flr-twice.html
- shard-lnl: NOTRUN -> [SKIP][188] ([Intel XE#4273])
[188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-7/igt@xe_sriov_flr@flr-twice.html
#### Possible fixes ####
* igt@intel_hwmon@hwmon-write:
- shard-bmg: [FAIL][189] ([Intel XE#4665]) -> [PASS][190]
[189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-5/igt@intel_hwmon@hwmon-write.html
[190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@intel_hwmon@hwmon-write.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-adlp: [DMESG-FAIL][191] ([Intel XE#4543]) -> [PASS][192] +5 other tests pass
[191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-6/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
[192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs:
- shard-dg2-set2: [INCOMPLETE][193] ([Intel XE#2705] / [Intel XE#4212] / [Intel XE#4345]) -> [PASS][194]
[193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
[194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-c-dp-4:
- shard-dg2-set2: [INCOMPLETE][195] ([Intel XE#2705] / [Intel XE#4212]) -> [PASS][196]
[195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-c-dp-4.html
[196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-c-dp-4.html
* igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
- shard-bmg: [SKIP][197] ([Intel XE#2291]) -> [PASS][198]
[197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
[198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
* igt@kms_dp_linktrain_fallback@dp-fallback:
- shard-bmg: [SKIP][199] ([Intel XE#4294]) -> [PASS][200]
[199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_dp_linktrain_fallback@dp-fallback.html
[200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_dp_linktrain_fallback@dp-fallback.html
* igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible:
- shard-bmg: [SKIP][201] ([Intel XE#2316]) -> [PASS][202] +3 other tests pass
[201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html
[202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@d-hdmi-a1:
- shard-adlp: [DMESG-WARN][203] ([Intel XE#4543]) -> [PASS][204] +23 other tests pass
[203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-8/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-hdmi-a1.html
[204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-8/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-hdmi-a1.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-bmg: [INCOMPLETE][205] ([Intel XE#2049] / [Intel XE#2597]) -> [PASS][206] +1 other test pass
[205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-5/igt@kms_flip@flip-vs-suspend-interruptible.html
[206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_flip@flip-vs-suspend-interruptible.html
- shard-dg2-set2: [INCOMPLETE][207] ([Intel XE#2049] / [Intel XE#2597]) -> [PASS][208] +1 other test pass
[207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-463/igt@kms_flip@flip-vs-suspend-interruptible.html
[208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-435/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling:
- shard-adlp: [DMESG-FAIL][209] ([Intel XE#4543] / [Intel XE#4921]) -> [PASS][210] +3 other tests pass
[209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-8/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling.html
[210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-3/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling.html
* igt@kms_hdr@static-toggle-dpms:
- shard-bmg: [SKIP][211] ([Intel XE#1503]) -> [PASS][212]
[211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_hdr@static-toggle-dpms.html
[212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-5/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-bmg: [SKIP][213] ([Intel XE#2685] / [Intel XE#3307]) -> [PASS][214]
[213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-3/igt@kms_plane_scaling@intel-max-src-size.html
[214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_plane_scaling@intel-max-src-size.html
- shard-dg2-set2: [SKIP][215] ([Intel XE#455]) -> [PASS][216]
[215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-435/igt@kms_plane_scaling@intel-max-src-size.html
[216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-464/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_pm_dc@dc6-psr:
- shard-lnl: [FAIL][217] ([Intel XE#718]) -> [PASS][218] +2 other tests pass
[217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-lnl-7/igt@kms_pm_dc@dc6-psr.html
[218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-lnl-3/igt@kms_pm_dc@dc6-psr.html
* igt@kms_setmode@clone-exclusive-crtc:
- shard-bmg: [SKIP][219] ([Intel XE#1435]) -> [PASS][220]
[219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_setmode@clone-exclusive-crtc.html
[220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-2/igt@kms_setmode@clone-exclusive-crtc.html
* igt@xe_exec_basic@multigpu-no-exec-null-defer-bind:
- shard-dg2-set2: [SKIP][221] ([Intel XE#1392]) -> [PASS][222] +5 other tests pass
[221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-null-defer-bind.html
[222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-463/igt@xe_exec_basic@multigpu-no-exec-null-defer-bind.html
* igt@xe_exec_reset@parallel-gt-reset:
- shard-dg2-set2: [DMESG-WARN][223] ([Intel XE#3876]) -> [PASS][224]
[223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-dg2-435/igt@xe_exec_reset@parallel-gt-reset.html
[224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-dg2-435/igt@xe_exec_reset@parallel-gt-reset.html
* igt@xe_exec_threads@threads-userptr-invalidate:
- shard-bmg: [DMESG-FAIL][225] ([Intel XE#3876]) -> [PASS][226]
[225]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@xe_exec_threads@threads-userptr-invalidate.html
[226]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-8/igt@xe_exec_threads@threads-userptr-invalidate.html
* igt@xe_pm@s4-vm-bind-unbind-all:
- shard-adlp: [DMESG-WARN][227] ([Intel XE#2953] / [Intel XE#4173]) -> [PASS][228] +3 other tests pass
[227]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-6/igt@xe_pm@s4-vm-bind-unbind-all.html
[228]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-6/igt@xe_pm@s4-vm-bind-unbind-all.html
#### Warnings ####
* igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
- shard-adlp: [DMESG-FAIL][229] ([Intel XE#4543]) -> [DMESG-WARN][230] ([Intel XE#2953] / [Intel XE#4173])
[229]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-9/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html
[230]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-9/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html
* igt@kms_content_protection@legacy:
- shard-bmg: [SKIP][231] ([Intel XE#2341]) -> [FAIL][232] ([Intel XE#1178])
[231]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_content_protection@legacy.html
[232]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-4/igt@kms_content_protection@legacy.html
* igt@kms_flip@flip-vs-rmfb-interruptible:
- shard-adlp: [DMESG-WARN][233] ([Intel XE#4543] / [Intel XE#5208]) -> [DMESG-WARN][234] ([Intel XE#5208])
[233]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-4/igt@kms_flip@flip-vs-rmfb-interruptible.html
[234]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-4/igt@kms_flip@flip-vs-rmfb-interruptible.html
* igt@kms_flip@plain-flip-ts-check:
- shard-adlp: [DMESG-WARN][235] ([Intel XE#4543]) -> [DMESG-WARN][236] ([Intel XE#2953] / [Intel XE#4173])
[235]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-adlp-1/igt@kms_flip@plain-flip-ts-check.html
[236]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-adlp-1/igt@kms_flip@plain-flip-ts-check.html
* igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw:
- shard-bmg: [SKIP][237] ([Intel XE#2312]) -> [SKIP][238] ([Intel XE#2311]) +4 other tests skip
[237]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
[238]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc:
- shard-bmg: [SKIP][239] ([Intel XE#2311]) -> [SKIP][240] ([Intel XE#2312]) +11 other tests skip
[239]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
[240]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt:
- shard-bmg: [SKIP][241] ([Intel XE#5390]) -> [SKIP][242] ([Intel XE#2312]) +8 other tests skip
[241]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt.html
[242]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen:
- shard-bmg: [SKIP][243] ([Intel XE#2312]) -> [SKIP][244] ([Intel XE#5390]) +5 other tests skip
[243]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html
[244]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-fullscreen.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw:
- shard-bmg: [SKIP][245] ([Intel XE#2313]) -> [SKIP][246] ([Intel XE#2312]) +13 other tests skip
[245]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw.html
[246]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render:
- shard-bmg: [SKIP][247] ([Intel XE#2312]) -> [SKIP][248] ([Intel XE#2313]) +5 other tests skip
[247]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render.html
[248]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-render.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area:
- shard-bmg: [INCOMPLETE][249] ([Intel XE#2594]) -> [SKIP][250] ([Intel XE#1406] / [Intel XE#1489])
[249]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-4/igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area.html
[250]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-7/igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-bmg: [FAIL][251] ([Intel XE#1729]) -> [SKIP][252] ([Intel XE#2426])
[251]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-1/igt@kms_tiled_display@basic-test-pattern.html
[252]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern.html
* igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
- shard-bmg: [ABORT][253] ([Intel XE#4917] / [Intel XE#5466] / [Intel XE#5530]) -> [ABORT][254] ([Intel XE#5466] / [Intel XE#5530])
[253]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
[254]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-4/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
* igt@xe_pm@s2idle-d3cold-basic-exec:
- shard-bmg: [ABORT][255] ([Intel XE#4760] / [Intel XE#5545]) -> [SKIP][256] ([Intel XE#2284])
[255]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3672-09933716bb37eda75f5b3562a76e58a17c447647/shard-bmg-6/igt@xe_pm@s2idle-d3cold-basic-exec.html
[256]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/shard-bmg-4/igt@xe_pm@s2idle-d3cold-basic-exec.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#1061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1061
[Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1126]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1126
[Intel XE#1151]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1151
[Intel XE#1173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1173
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[Intel XE#1188]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1188
[Intel XE#1340]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1340
[Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
[Intel XE#1401]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1401
[Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
[Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
[Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
[Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
[Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
[Intel XE#1447]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1447
[Intel XE#1468]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1468
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
[Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
[Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
[Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
[Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
[Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
[Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2244]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2244
[Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
[Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
[Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
[Intel XE#2293]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2293
[Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
[Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
[Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
[Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
[Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
[Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321
[Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
[Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
[Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
[Intel XE#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341
[Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
[Intel XE#2360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2360
[Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373
[Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
[Intel XE#2390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2390
[Intel XE#2391]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2391
[Intel XE#2413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2413
[Intel XE#2414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2414
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2427]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2427
[Intel XE#2486]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2486
[Intel XE#2501]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2501
[Intel XE#2505]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2505
[Intel XE#2594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2594
[Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
[Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261
[Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652
[Intel XE#2685]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2685
[Intel XE#2705]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2705
[Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893
[Intel XE#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
[Intel XE#2927]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2927
[Intel XE#2953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2953
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#3012]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3012
[Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
[Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
[Intel XE#3113]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3113
[Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
[Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
[Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307
[Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
[Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
[Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362
[Intel XE#3658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3658
[Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
[Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#3868]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3868
[Intel XE#3876]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3876
[Intel XE#3884]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3884
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
[Intel XE#4212]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4212
[Intel XE#4273]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4273
[Intel XE#4294]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4294
[Intel XE#4329]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4329
[Intel XE#4345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4345
[Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
[Intel XE#4359]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4359
[Intel XE#4417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4417
[Intel XE#4522]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4522
[Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
[Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
[Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
[Intel XE#4609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4609
[Intel XE#4650]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4650
[Intel XE#4665]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4665
[Intel XE#4689]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4689
[Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
[Intel XE#4760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4760
[Intel XE#4819]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4819
[Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
[Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915
[Intel XE#4917]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4917
[Intel XE#4921]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4921
[Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
[Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021
[Intel XE#5208]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5208
[Intel XE#5354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5354
[Intel XE#5376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5376
[Intel XE#5390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5390
[Intel XE#5466]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5466
[Intel XE#5530]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5530
[Intel XE#5545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5545
[Intel XE#5561]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5561
[Intel XE#5564]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5564
[Intel XE#5565]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5565
[Intel XE#5568]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5568
[Intel XE#5573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5573
[Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575
[Intel XE#5594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5594
[Intel XE#5596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5596
[Intel XE#5626]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5626
[Intel XE#569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/569
[Intel XE#5963]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5963
[Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
[Intel XE#6006]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6006
[Intel XE#6011]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6011
[Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
[Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
[Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
[Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
[Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
[Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
[Intel XE#908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/908
[Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
Build changes
-------------
* IGT: IGT_8520 -> IGT_8521
* Linux: xe-3672-09933716bb37eda75f5b3562a76e58a17c447647 -> xe-pw-153981v1
IGT_8520: 8520
IGT_8521: 8521
xe-3672-09933716bb37eda75f5b3562a76e58a17c447647: 09933716bb37eda75f5b3562a76e58a17c447647
xe-pw-153981v1: 153981v1
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-153981v1/index.html
[-- Attachment #2: Type: text/html, Size: 105201 bytes --]
^ permalink raw reply [flat|nested] 32+ messages in thread