* [PATCH v7 0/5] User readable error codes on atomic_ioctl failure
@ 2026-01-06 4:37 Arun R Murthy
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
` (9 more replies)
0 siblings, 10 replies; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:37 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
The series focuses on providing a user readable error value on a failure
in drm_atomic_ioctl(). Usually -EINVAL is returned in most of the error
cases and it is difficult for the user to decode the error and get to
know the real cause for the error. If user gets to know the reason for
the error then corrective measurements can be taken up.
TODO: driver specific error codes are to be added and will be done in
the follow-up patches.
The IGT related changes are pushed for review @
https://patchwork.freedesktop.org/series/153330/
To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
To: suraj.kandpal@intel.com>
To: Maxime Ripard <mripard@kernel.org>
To: Thomas Zimmermann <tzimmermann@suse.de>
To: David Airlie <airlied@gmail.com>
To: Simona Vetter <simona@ffwll.ch>
To: Jani Nikula <jani.nikula@linux.intel.com>
To: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
To: Tvrtko Ursulin <tursulin@ursulin.net>
To: xaver.hugl@kde.org
To: harry.wentland@amd.com
To: uma.shankar@intel.com
To: louis.chauvet@bootlin.com
Cc: dri-devel@lists.freedesktop.org
Cc: intel-gfx@lists.freedesktop.org
Cc: intel-xe@lists.freedesktop.org
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
Arun R Murthy (5):
drm: Define user readable error codes for atomic ioctl
drm/atomic: Add error_code element in atomic_state
drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl
drm/atomic: Return user readable error in atomic_ioctl
drm/i915/display: Error codes for async flip failures
drivers/gpu/drm/drm_atomic.c | 31 ++++++++++
drivers/gpu/drm/drm_atomic_uapi.c | 91 +++++++++++++++++++---------
drivers/gpu/drm/i915/display/intel_display.c | 25 ++++----
include/drm/drm_atomic.h | 10 +++
include/uapi/drm/drm_mode.h | 41 +++++++++++++
5 files changed, 159 insertions(+), 39 deletions(-)
---
base-commit: 5fc5192372599f11da8dee072fd8beb4414f8eca
change-id: 20250728-atomic-c9713fd357e4
Best regards,
--
Arun R Murthy <arun.r.murthy@intel.com>
^ permalink raw reply [flat|nested] 22+ messages in thread
* [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
@ 2026-01-06 4:37 ` Arun R Murthy
2026-01-08 6:13 ` Kandpal, Suraj
2026-01-21 13:47 ` Xaver Hugl
2026-01-06 4:37 ` [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state Arun R Murthy
` (8 subsequent siblings)
9 siblings, 2 replies; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:37 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
There can be multiple reasons for a failure in atomic_ioctl. Most often
in these error conditions -EINVAL is returned. User/Compositor would
have to blindly take a call on failure of this ioctl so as to use
ALLOW_MODESET or retry. It would be good if user/compositor gets a
readable error code on failure so they can take proper corrections in
the next commit.
The struct drm_mode_atomic is being passed by the user/compositor which
holds the properties for modeset/flip. Reusing the same struct for
returning the error code in case of failure, thereby creation of new
uapi/interface for returning the error code is not required.
The element 'reserved' in the struct drm_mode_atomic is used for
returning the user readable error code. This points to the struct
drm_mode_atomic_err_code. Failure reasons as a string can also be added
on need basis by the variable failure_string in the same struct
drm_mode_atomic_err_code.
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
include/uapi/drm/drm_mode.h | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
index cbbbfc1dfe2b806c641c720b0215e825e350bd03..024c39eba6b25e14a99b14224d96b7254ccebd61 100644
--- a/include/uapi/drm/drm_mode.h
+++ b/include/uapi/drm/drm_mode.h
@@ -45,6 +45,7 @@ extern "C" {
#define DRM_CONNECTOR_NAME_LEN 32
#define DRM_DISPLAY_MODE_LEN 32
#define DRM_PROP_NAME_LEN 32
+#define DRM_MODE_ATOMIC_FAILURE_STRING_LEN 128
#define DRM_MODE_TYPE_BUILTIN (1<<0) /* deprecated */
#define DRM_MODE_TYPE_CLOCK_C ((1<<1) | DRM_MODE_TYPE_BUILTIN) /* deprecated */
@@ -1339,6 +1340,46 @@ struct drm_mode_destroy_dumb {
DRM_MODE_ATOMIC_NONBLOCK |\
DRM_MODE_ATOMIC_ALLOW_MODESET)
+/**
+ * enum drm_mode_atomic_err_code - error codes for failures in atomic_ioctl
+ * @DRM_MODE_ATOMIC_INVALID_API_USAGE: invallid API usage(DRM_ATOMIC not
+ * enabled, invalid falg, page_flip event
+ * with test-only, etc)
+ * @DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET: Need full modeset on this crtc
+ * @DRM_MODE_ATOMIC_NEED_FULL_MODESET: Need full modeset on all connected crtc's
+ * @DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE: Aync flip not supported on this plane
+ * DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP: Modifier not supported by async flip
+ * @DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED: Property changed in async flip
+ */
+enum drm_mode_atomic_failure_codes {
+ DRM_MODE_ATOMIC_INVALID_API_USAGE,
+ DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
+ DRM_MODE_ATOMIC_NEED_FULL_MODESET,
+ DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
+ DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
+ DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
+};
+
+/**
+ * drm_mode_atomic_err_code - struct to store the error code
+ *
+ * pointer to this struct will be stored in reserved variable of
+ * struct drm_mode_atomic to report the failure cause to the user.
+ *
+ * @failure_code: error codes defined in enum drm_moide_atomic_failure_code
+ * @failure_string_ptr: pointer to user readable error message string
+ * @failure_obj_ptr: pointer to the drm_object that caused error
+ * @reserved: reserved for future use
+ * @count_objs: count of drm_objects if multiple drm_objects caused error
+ */
+struct drm_mode_atomic_err_code {
+ __u64 failure_code;
+ __u64 failure_objs_ptr;
+ __u64 reserved;
+ __u32 count_objs;
+ char failure_string[DRM_MODE_ATOMIC_FAILURE_STRING_LEN];
+};
+
struct drm_mode_atomic {
__u32 flags;
__u32 count_objs;
--
2.25.1
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
@ 2026-01-06 4:37 ` Arun R Murthy
2026-01-08 6:15 ` Kandpal, Suraj
2026-01-06 4:37 ` [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl Arun R Murthy
` (7 subsequent siblings)
9 siblings, 1 reply; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:37 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
Now that a proper error code will be returned to the user on any failure
in atomic_ioctl() via struct drm_mode_atomic, add a new element
error_code in the struct drm_atomic_state so as to hold the error code
during the atomic_check() and atomic_commit() phases.
New function added to print the error message and fill the struct
err_code with proper error message and error code.
v5: Add a function for printing the error message and filling err_code
struct
v6: Replace drm_err with drm_dbg_atomic print
v6: Add keyword "commit failed" in dbg msg (Suraj)
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
drivers/gpu/drm/drm_atomic.c | 31 +++++++++++++++++++++++++++++++
include/drm/drm_atomic.h | 10 ++++++++++
2 files changed, 41 insertions(+)
diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 52738b80ddbeb124896f6124df5628e2ac27faa4..0f4f6071cc305a114654c6973272bbc4b1ff36c8 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -2105,6 +2105,37 @@ void drm_state_dump(struct drm_device *dev, struct drm_printer *p)
}
EXPORT_SYMBOL(drm_state_dump);
+/**
+ * drm_mode_atomic_add_error_msg - function to add error code and error string
+ *
+ * @err_code: pointer to struct drm_mode_atomic_err_code that stores the failure
+ * reason
+ * @failure_code: failure code in enum drm_mode_atomic_failure_codes
+ * @failure_string: failure reason string message
+ *
+ * Returns: void
+ */
+void drm_mode_atomic_add_error_msg(struct drm_mode_atomic_err_code *err_code,
+ __u64 failure_code, const char *format, ...)
+{
+ struct drm_atomic_state *state = container_of(err_code,
+ struct drm_atomic_state,
+ error_code);
+ va_list varg;
+ char *failure_string;
+
+ err_code->failure_code = failure_code;
+
+ va_start(varg, format);
+ failure_string = kvasprintf(GFP_ATOMIC, format, varg);
+
+ drm_dbg_atomic(state->dev, "Commit failed: %s\n", failure_string);
+ strscpy_pad(err_code->failure_string, failure_string,
+ sizeof(err_code->failure_string));
+ va_end(varg);
+}
+EXPORT_SYMBOL(drm_mode_atomic_add_error_msg);
+
#ifdef CONFIG_DEBUG_FS
static int drm_state_info(struct seq_file *m, void *data)
{
diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
index 178f8f62c80fc58fe42e8564a716da1a99ddb7da..b080f981ec1afd4b2569aba703c93fc1ea582cbf 100644
--- a/include/drm/drm_atomic.h
+++ b/include/drm/drm_atomic.h
@@ -633,6 +633,13 @@ struct drm_atomic_state {
* commit without blocking.
*/
struct work_struct commit_work;
+
+ /* @error_code: pointer to struct holding failure reason and string
+ *
+ * struct to convey user readable error to the user.
+ * Error codes defined in enum drm_mode_atomic_failure_flags
+ */
+ struct drm_mode_atomic_err_code error_code;
};
void __drm_crtc_commit_free(struct kref *kref);
@@ -1360,5 +1367,8 @@ drm_atomic_get_old_bridge_state(const struct drm_atomic_state *state,
struct drm_bridge_state *
drm_atomic_get_new_bridge_state(const struct drm_atomic_state *state,
struct drm_bridge *bridge);
+__printf(3, 4)
+void drm_mode_atomic_add_error_msg(struct drm_mode_atomic_err_code *err_code,
+ __u64 failure_code, const char *format, ...);
#endif /* DRM_ATOMIC_H_ */
--
2.25.1
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
2026-01-06 4:37 ` [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state Arun R Murthy
@ 2026-01-06 4:37 ` Arun R Murthy
2026-01-07 11:03 ` Louis Chauvet
2026-01-06 4:37 ` [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl Arun R Murthy
` (6 subsequent siblings)
9 siblings, 1 reply; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:37 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
Move atomic_state allocation to the beginning of the atomic_ioctl
to accommodate drm_mode_atomic_err_code usage for returning error
code on failures.
As atomic state is required for drm_mode_atomic_err_code to store the
error codes.
v7: Reframe commit message (Suraj)
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
drivers/gpu/drm/drm_atomic_uapi.c | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
index 7320db4b8489f10e24ed772094c77e2172951633..02029b5d7832eeaf4a225096a94947344083fc0b 100644
--- a/drivers/gpu/drm/drm_atomic_uapi.c
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
@@ -1553,13 +1553,21 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
struct drm_modeset_acquire_ctx ctx;
struct drm_out_fence_state *fence_state;
int ret = 0;
- unsigned int i, j, num_fences;
+ unsigned int i, j, num_fences = 0;
bool async_flip = false;
/* disallow for drivers not supporting atomic: */
if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
return -EOPNOTSUPP;
+ state = drm_atomic_state_alloc(dev);
+ if (!state)
+ return -ENOMEM;
+
+ drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
+ state->acquire_ctx = &ctx;
+ state->allow_modeset = !!(arg->flags & DRM_MODE_ATOMIC_ALLOW_MODESET);
+
/* disallow for userspace that has not enabled atomic cap (even
* though this may be a bit overkill, since legacy userspace
* wouldn't know how to call this ioctl)
@@ -1598,13 +1606,6 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
return -EINVAL;
}
- state = drm_atomic_state_alloc(dev);
- if (!state)
- return -ENOMEM;
-
- drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
- state->acquire_ctx = &ctx;
- state->allow_modeset = !!(arg->flags & DRM_MODE_ATOMIC_ALLOW_MODESET);
state->plane_color_pipeline = file_priv->plane_color_pipeline;
retry:
@@ -1703,7 +1704,8 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
}
out:
- complete_signaling(dev, state, fence_state, num_fences, !ret);
+ if (num_fences)
+ complete_signaling(dev, state, fence_state, num_fences, !ret);
if (ret == -EDEADLK) {
drm_atomic_state_clear(state);
--
2.25.1
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (2 preceding siblings ...)
2026-01-06 4:37 ` [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl Arun R Murthy
@ 2026-01-06 4:37 ` Arun R Murthy
2026-01-08 6:20 ` Kandpal, Suraj
2026-01-06 4:38 ` [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures Arun R Murthy
` (5 subsequent siblings)
9 siblings, 1 reply; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:37 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
Add user readable error codes for failure cases in drm_atomic_ioctl() so
that user can decode the error code and take corrective measurements.
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
drivers/gpu/drm/drm_atomic_uapi.c | 71 ++++++++++++++++++++++++++++-----------
1 file changed, 52 insertions(+), 19 deletions(-)
diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
index 02029b5d7832eeaf4a225096a94947344083fc0b..909c71bc88122ee57cf82eefe5588c42a5d4a037 100644
--- a/drivers/gpu/drm/drm_atomic_uapi.c
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
@@ -1180,6 +1180,11 @@ int drm_atomic_set_property(struct drm_atomic_state *state,
ret = drm_atomic_connector_get_property(connector, connector_state,
prop, &old_val);
ret = drm_atomic_check_prop_changes(ret, old_val, prop_value, prop);
+ if (ret) {
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
+ "property change not allowed in async flip");
+ }
break;
}
@@ -1202,6 +1207,11 @@ int drm_atomic_set_property(struct drm_atomic_state *state,
ret = drm_atomic_crtc_get_property(crtc, crtc_state,
prop, &old_val);
ret = drm_atomic_check_prop_changes(ret, old_val, prop_value, prop);
+ if (ret) {
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
+ "property change not allowed in async flip");
+ }
break;
}
@@ -1240,9 +1250,10 @@ int drm_atomic_set_property(struct drm_atomic_state *state,
ret = plane_funcs->atomic_async_check(plane, state, true);
if (ret) {
- drm_dbg_atomic(prop->dev,
- "[PLANE:%d:%s] does not support async flips\n",
- obj->id, plane->name);
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
+ "[PLANE:%d:%s] does not support async flip",
+ obj->id, plane->name);
break;
}
}
@@ -1552,6 +1563,7 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
struct drm_atomic_state *state;
struct drm_modeset_acquire_ctx ctx;
struct drm_out_fence_state *fence_state;
+ struct drm_mode_atomic_err_code __user *error_code_ptr;
int ret = 0;
unsigned int i, j, num_fences = 0;
bool async_flip = false;
@@ -1560,6 +1572,14 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
return -EOPNOTSUPP;
+ if (!arg->reserved)
+ drm_dbg_atomic(dev,
+ "memory not allocated for drm_atomic error reporting\n");
+ else
+ /* Update the error code if any error to allow user handling it */
+ error_code_ptr = (struct drm_mode_atomic_err_code __user *)
+ (unsigned long)arg->reserved;
+
state = drm_atomic_state_alloc(dev);
if (!state)
return -ENOMEM;
@@ -1568,31 +1588,35 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
state->acquire_ctx = &ctx;
state->allow_modeset = !!(arg->flags & DRM_MODE_ATOMIC_ALLOW_MODESET);
+ memset(&state->error_code, 0, sizeof(*error_code_ptr));
+
/* disallow for userspace that has not enabled atomic cap (even
* though this may be a bit overkill, since legacy userspace
* wouldn't know how to call this ioctl)
*/
if (!file_priv->atomic) {
- drm_dbg_atomic(dev,
- "commit failed: atomic cap not enabled\n");
- return -EINVAL;
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_INVALID_API_USAGE,
+ "arm atomic capability not enabled");
+ ret = -EINVAL;
+ goto out;
}
if (arg->flags & ~DRM_MODE_ATOMIC_FLAGS) {
- drm_dbg_atomic(dev, "commit failed: invalid flag\n");
- return -EINVAL;
- }
-
- if (arg->reserved) {
- drm_dbg_atomic(dev, "commit failed: reserved field set\n");
- return -EINVAL;
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_INVALID_API_USAGE,
+ "invalid flag");
+ ret = -EINVAL;
+ goto out;
}
if (arg->flags & DRM_MODE_PAGE_FLIP_ASYNC) {
if (!dev->mode_config.async_page_flip) {
- drm_dbg_atomic(dev,
- "commit failed: DRM_MODE_PAGE_FLIP_ASYNC not supported\n");
- return -EINVAL;
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_INVALID_API_USAGE,
+ "DRM_MODE_PAGE_FLIP_ASYNC not supported with ATOMIC ioctl");
+ ret = -EINVAL;
+ goto out;
}
async_flip = true;
@@ -1601,9 +1625,11 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
/* can't test and expect an event at the same time. */
if ((arg->flags & DRM_MODE_ATOMIC_TEST_ONLY) &&
(arg->flags & DRM_MODE_PAGE_FLIP_EVENT)) {
- drm_dbg_atomic(dev,
- "commit failed: page-flip event requested with test-only commit\n");
- return -EINVAL;
+ drm_mode_atomic_add_error_msg(&state->error_code,
+ DRM_MODE_ATOMIC_INVALID_API_USAGE,
+ "page-flip event requested with test-only commit");
+ ret = -EINVAL;
+ goto out;
}
state->plane_color_pipeline = file_priv->plane_color_pipeline;
@@ -1704,6 +1730,13 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
}
out:
+ /* Update the error code if any error to allow user handling it */
+ if (ret < 0 && arg->reserved) {
+ if (copy_to_user(error_code_ptr, &state->error_code,
+ sizeof(state->error_code)))
+ return -EFAULT;
+ }
+
if (num_fences)
complete_signaling(dev, state, fence_state, num_fences, !ret);
--
2.25.1
^ permalink raw reply related [flat|nested] 22+ messages in thread
* [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (3 preceding siblings ...)
2026-01-06 4:37 ` [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl Arun R Murthy
@ 2026-01-06 4:38 ` Arun R Murthy
2026-01-08 6:24 ` Kandpal, Suraj
2026-01-06 4:46 ` ✗ CI.checkpatch: warning for User readable error codes on atomic_ioctl failure (rev6) Patchwork
` (4 subsequent siblings)
9 siblings, 1 reply; 22+ messages in thread
From: Arun R Murthy @ 2026-01-06 4:38 UTC (permalink / raw)
To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, xaver.hugl, harry.wentland, uma.shankar,
louis.chauvet
Cc: dri-devel, intel-gfx, intel-xe, Arun R Murthy
For failures in async flip atomic check/commit path return user readable
error codes in struct drm_atomic_state.
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
drivers/gpu/drm/i915/display/intel_display.c | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 81b3a6692ca20198ed4460af25a61b2d48e76023..737a07f9c0ca08682b13c20ab5877c1b57c09990 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -6016,9 +6016,10 @@ static int intel_async_flip_check_uapi(struct intel_atomic_state *state,
}
if (intel_crtc_needs_modeset(new_crtc_state)) {
- drm_dbg_kms(display->drm,
- "[CRTC:%d:%s] modeset required\n",
- crtc->base.base.id, crtc->base.name);
+ drm_mode_atomic_add_error_msg(&state->base.error_code,
+ DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
+ "[CRTC:%d:%s] requires full modeset",
+ crtc->base.base.id, crtc->base.name);
return -EINVAL;
}
@@ -6085,9 +6086,10 @@ static int intel_async_flip_check_hw(struct intel_atomic_state *state, struct in
}
if (intel_crtc_needs_modeset(new_crtc_state)) {
- drm_dbg_kms(display->drm,
- "[CRTC:%d:%s] modeset required\n",
- crtc->base.base.id, crtc->base.name);
+ drm_mode_atomic_add_error_msg(&state->base.error_code,
+ DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
+ "[CRTC:%d:%s] requires full modeset",
+ crtc->base.base.id, crtc->base.name);
return -EINVAL;
}
@@ -6125,11 +6127,12 @@ static int intel_async_flip_check_hw(struct intel_atomic_state *state, struct in
if (!intel_plane_can_async_flip(plane, new_plane_state->hw.fb->format,
new_plane_state->hw.fb->modifier)) {
- drm_dbg_kms(display->drm,
- "[PLANE:%d:%s] pixel format %p4cc / modifier 0x%llx does not support async flip\n",
- plane->base.base.id, plane->base.name,
- &new_plane_state->hw.fb->format->format,
- new_plane_state->hw.fb->modifier);
+ drm_mode_atomic_add_error_msg(&state->base.error_code,
+ DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
+ "[PLANE:%d:%s] pixel format %p4cc / 0x%llx modifier does not support async flip",
+ plane->base.base.id, plane->base.name,
+ &new_plane_state->hw.fb->format->format,
+ new_plane_state->hw.fb->modifier);
return -EINVAL;
}
--
2.25.1
^ permalink raw reply related [flat|nested] 22+ messages in thread
* ✗ CI.checkpatch: warning for User readable error codes on atomic_ioctl failure (rev6)
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (4 preceding siblings ...)
2026-01-06 4:38 ` [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures Arun R Murthy
@ 2026-01-06 4:46 ` Patchwork
2026-01-06 4:47 ` ✓ CI.KUnit: success " Patchwork
` (3 subsequent siblings)
9 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2026-01-06 4:46 UTC (permalink / raw)
To: Arun R Murthy; +Cc: intel-xe
== Series Details ==
Series: User readable error codes on atomic_ioctl failure (rev6)
URL : https://patchwork.freedesktop.org/series/152277/
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
9f1cb6875f3f9eb0925ed50c16100322a2df513c
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 0dd76c872e5d885ee5c9d78f83bfbd1f0e2abc9b
Author: Arun R Murthy <arun.r.murthy@intel.com>
Date: Tue Jan 6 10:08:00 2026 +0530
drm/i915/display: Error codes for async flip failures
For failures in async flip atomic check/commit path return user readable
error codes in struct drm_atomic_state.
Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
+ /mt/dim checkpatch b3845fe8af5ec5c1d4b26e40ac6b4c7370e5fa35 drm-intel
bbf45f3f424e drm: Define user readable error codes for atomic ioctl
5ee9e7acc5de drm/atomic: Add error_code element in atomic_state
843310ce8b87 drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl
23c47d64713b drm/atomic: Return user readable error in atomic_ioctl
-:47: WARNING:LONG_LINE: line length of 107 exceeds 100 columns
#47: FILE: drivers/gpu/drm/drm_atomic_uapi.c:1254:
+ DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
total: 0 errors, 1 warnings, 0 checks, 131 lines checked
0dd76c872e5d drm/i915/display: Error codes for async flip failures
^ permalink raw reply [flat|nested] 22+ messages in thread
* ✓ CI.KUnit: success for User readable error codes on atomic_ioctl failure (rev6)
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (5 preceding siblings ...)
2026-01-06 4:46 ` ✗ CI.checkpatch: warning for User readable error codes on atomic_ioctl failure (rev6) Patchwork
@ 2026-01-06 4:47 ` Patchwork
2026-01-06 5:03 ` ✗ CI.checksparse: warning " Patchwork
` (2 subsequent siblings)
9 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2026-01-06 4:47 UTC (permalink / raw)
To: Arun R Murthy; +Cc: intel-xe
== Series Details ==
Series: User readable error codes on atomic_ioctl failure (rev6)
URL : https://patchwork.freedesktop.org/series/152277/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[04:46:18] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[04:46:22] 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
[04:46:54] Starting KUnit Kernel (1/1)...
[04:46:54] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[04:46:54] ================== guc_buf (11 subtests) ===================
[04:46:54] [PASSED] test_smallest
[04:46:54] [PASSED] test_largest
[04:46:54] [PASSED] test_granular
[04:46:54] [PASSED] test_unique
[04:46:54] [PASSED] test_overlap
[04:46:54] [PASSED] test_reusable
[04:46:54] [PASSED] test_too_big
[04:46:54] [PASSED] test_flush
[04:46:54] [PASSED] test_lookup
[04:46:54] [PASSED] test_data
[04:46:54] [PASSED] test_class
[04:46:54] ===================== [PASSED] guc_buf =====================
[04:46:54] =================== guc_dbm (7 subtests) ===================
[04:46:54] [PASSED] test_empty
[04:46:54] [PASSED] test_default
[04:46:54] ======================== test_size ========================
[04:46:54] [PASSED] 4
[04:46:54] [PASSED] 8
[04:46:54] [PASSED] 32
[04:46:54] [PASSED] 256
[04:46:54] ==================== [PASSED] test_size ====================
[04:46:54] ======================= test_reuse ========================
[04:46:54] [PASSED] 4
[04:46:54] [PASSED] 8
[04:46:54] [PASSED] 32
[04:46:54] [PASSED] 256
[04:46:54] =================== [PASSED] test_reuse ====================
[04:46:54] =================== test_range_overlap ====================
[04:46:54] [PASSED] 4
[04:46:54] [PASSED] 8
[04:46:54] [PASSED] 32
[04:46:54] [PASSED] 256
[04:46:54] =============== [PASSED] test_range_overlap ================
[04:46:54] =================== test_range_compact ====================
[04:46:54] [PASSED] 4
[04:46:54] [PASSED] 8
[04:46:54] [PASSED] 32
[04:46:54] [PASSED] 256
[04:46:54] =============== [PASSED] test_range_compact ================
[04:46:54] ==================== test_range_spare =====================
[04:46:54] [PASSED] 4
[04:46:54] [PASSED] 8
[04:46:54] [PASSED] 32
[04:46:54] [PASSED] 256
[04:46:54] ================ [PASSED] test_range_spare =================
[04:46:54] ===================== [PASSED] guc_dbm =====================
[04:46:54] =================== guc_idm (6 subtests) ===================
[04:46:54] [PASSED] bad_init
[04:46:54] [PASSED] no_init
[04:46:54] [PASSED] init_fini
[04:46:54] [PASSED] check_used
[04:46:54] [PASSED] check_quota
[04:46:54] [PASSED] check_all
[04:46:54] ===================== [PASSED] guc_idm =====================
[04:46:54] ================== no_relay (3 subtests) ===================
[04:46:54] [PASSED] xe_drops_guc2pf_if_not_ready
[04:46:54] [PASSED] xe_drops_guc2vf_if_not_ready
[04:46:54] [PASSED] xe_rejects_send_if_not_ready
[04:46:54] ==================== [PASSED] no_relay =====================
[04:46:54] ================== pf_relay (14 subtests) ==================
[04:46:54] [PASSED] pf_rejects_guc2pf_too_short
[04:46:54] [PASSED] pf_rejects_guc2pf_too_long
[04:46:54] [PASSED] pf_rejects_guc2pf_no_payload
[04:46:54] [PASSED] pf_fails_no_payload
[04:46:54] [PASSED] pf_fails_bad_origin
[04:46:54] [PASSED] pf_fails_bad_type
[04:46:54] [PASSED] pf_txn_reports_error
[04:46:54] [PASSED] pf_txn_sends_pf2guc
[04:46:54] [PASSED] pf_sends_pf2guc
[04:46:54] [SKIPPED] pf_loopback_nop
[04:46:54] [SKIPPED] pf_loopback_echo
[04:46:54] [SKIPPED] pf_loopback_fail
[04:46:54] [SKIPPED] pf_loopback_busy
[04:46:54] [SKIPPED] pf_loopback_retry
[04:46:54] ==================== [PASSED] pf_relay =====================
[04:46:54] ================== vf_relay (3 subtests) ===================
[04:46:54] [PASSED] vf_rejects_guc2vf_too_short
[04:46:54] [PASSED] vf_rejects_guc2vf_too_long
[04:46:54] [PASSED] vf_rejects_guc2vf_no_payload
[04:46:54] ==================== [PASSED] vf_relay =====================
[04:46:54] ================ pf_gt_config (6 subtests) =================
[04:46:54] [PASSED] fair_contexts_1vf
[04:46:54] [PASSED] fair_doorbells_1vf
[04:46:54] [PASSED] fair_ggtt_1vf
[04:46:54] ====================== fair_contexts ======================
[04:46:54] [PASSED] 1 VF
[04:46:54] [PASSED] 2 VFs
[04:46:54] [PASSED] 3 VFs
[04:46:54] [PASSED] 4 VFs
[04:46:54] [PASSED] 5 VFs
[04:46:54] [PASSED] 6 VFs
[04:46:54] [PASSED] 7 VFs
[04:46:54] [PASSED] 8 VFs
[04:46:54] [PASSED] 9 VFs
[04:46:54] [PASSED] 10 VFs
[04:46:54] [PASSED] 11 VFs
[04:46:54] [PASSED] 12 VFs
[04:46:54] [PASSED] 13 VFs
[04:46:54] [PASSED] 14 VFs
[04:46:54] [PASSED] 15 VFs
[04:46:54] [PASSED] 16 VFs
[04:46:54] [PASSED] 17 VFs
[04:46:54] [PASSED] 18 VFs
[04:46:54] [PASSED] 19 VFs
[04:46:54] [PASSED] 20 VFs
[04:46:54] [PASSED] 21 VFs
[04:46:54] [PASSED] 22 VFs
[04:46:54] [PASSED] 23 VFs
[04:46:54] [PASSED] 24 VFs
[04:46:54] [PASSED] 25 VFs
[04:46:54] [PASSED] 26 VFs
[04:46:54] [PASSED] 27 VFs
[04:46:54] [PASSED] 28 VFs
[04:46:54] [PASSED] 29 VFs
[04:46:54] [PASSED] 30 VFs
[04:46:54] [PASSED] 31 VFs
[04:46:54] [PASSED] 32 VFs
[04:46:54] [PASSED] 33 VFs
[04:46:54] [PASSED] 34 VFs
[04:46:54] [PASSED] 35 VFs
[04:46:54] [PASSED] 36 VFs
[04:46:54] [PASSED] 37 VFs
[04:46:54] [PASSED] 38 VFs
[04:46:54] [PASSED] 39 VFs
[04:46:54] [PASSED] 40 VFs
[04:46:54] [PASSED] 41 VFs
[04:46:54] [PASSED] 42 VFs
[04:46:54] [PASSED] 43 VFs
[04:46:54] [PASSED] 44 VFs
[04:46:54] [PASSED] 45 VFs
[04:46:54] [PASSED] 46 VFs
[04:46:54] [PASSED] 47 VFs
[04:46:54] [PASSED] 48 VFs
[04:46:54] [PASSED] 49 VFs
[04:46:54] [PASSED] 50 VFs
[04:46:54] [PASSED] 51 VFs
[04:46:54] [PASSED] 52 VFs
[04:46:54] [PASSED] 53 VFs
[04:46:54] [PASSED] 54 VFs
[04:46:54] [PASSED] 55 VFs
[04:46:54] [PASSED] 56 VFs
[04:46:54] [PASSED] 57 VFs
[04:46:54] [PASSED] 58 VFs
[04:46:54] [PASSED] 59 VFs
[04:46:54] [PASSED] 60 VFs
[04:46:54] [PASSED] 61 VFs
[04:46:54] [PASSED] 62 VFs
[04:46:54] [PASSED] 63 VFs
[04:46:54] ================== [PASSED] fair_contexts ==================
[04:46:54] ===================== fair_doorbells ======================
[04:46:54] [PASSED] 1 VF
[04:46:54] [PASSED] 2 VFs
[04:46:54] [PASSED] 3 VFs
[04:46:54] [PASSED] 4 VFs
[04:46:54] [PASSED] 5 VFs
[04:46:54] [PASSED] 6 VFs
[04:46:54] [PASSED] 7 VFs
[04:46:54] [PASSED] 8 VFs
[04:46:54] [PASSED] 9 VFs
[04:46:54] [PASSED] 10 VFs
[04:46:54] [PASSED] 11 VFs
[04:46:54] [PASSED] 12 VFs
[04:46:54] [PASSED] 13 VFs
[04:46:54] [PASSED] 14 VFs
[04:46:54] [PASSED] 15 VFs
[04:46:54] [PASSED] 16 VFs
[04:46:54] [PASSED] 17 VFs
[04:46:54] [PASSED] 18 VFs
[04:46:54] [PASSED] 19 VFs
[04:46:54] [PASSED] 20 VFs
[04:46:54] [PASSED] 21 VFs
[04:46:54] [PASSED] 22 VFs
[04:46:54] [PASSED] 23 VFs
[04:46:54] [PASSED] 24 VFs
[04:46:54] [PASSED] 25 VFs
[04:46:54] [PASSED] 26 VFs
[04:46:54] [PASSED] 27 VFs
[04:46:54] [PASSED] 28 VFs
[04:46:54] [PASSED] 29 VFs
[04:46:54] [PASSED] 30 VFs
[04:46:54] [PASSED] 31 VFs
[04:46:54] [PASSED] 32 VFs
[04:46:54] [PASSED] 33 VFs
[04:46:54] [PASSED] 34 VFs
[04:46:54] [PASSED] 35 VFs
[04:46:54] [PASSED] 36 VFs
[04:46:54] [PASSED] 37 VFs
[04:46:54] [PASSED] 38 VFs
[04:46:54] [PASSED] 39 VFs
[04:46:54] [PASSED] 40 VFs
[04:46:54] [PASSED] 41 VFs
[04:46:54] [PASSED] 42 VFs
[04:46:54] [PASSED] 43 VFs
[04:46:54] [PASSED] 44 VFs
[04:46:54] [PASSED] 45 VFs
[04:46:54] [PASSED] 46 VFs
[04:46:54] [PASSED] 47 VFs
[04:46:54] [PASSED] 48 VFs
[04:46:54] [PASSED] 49 VFs
[04:46:54] [PASSED] 50 VFs
[04:46:54] [PASSED] 51 VFs
[04:46:54] [PASSED] 52 VFs
[04:46:54] [PASSED] 53 VFs
[04:46:54] [PASSED] 54 VFs
[04:46:54] [PASSED] 55 VFs
[04:46:54] [PASSED] 56 VFs
[04:46:54] [PASSED] 57 VFs
[04:46:54] [PASSED] 58 VFs
[04:46:54] [PASSED] 59 VFs
[04:46:54] [PASSED] 60 VFs
[04:46:54] [PASSED] 61 VFs
[04:46:54] [PASSED] 62 VFs
[04:46:54] [PASSED] 63 VFs
[04:46:54] ================= [PASSED] fair_doorbells ==================
[04:46:54] ======================== fair_ggtt ========================
[04:46:54] [PASSED] 1 VF
[04:46:54] [PASSED] 2 VFs
[04:46:54] [PASSED] 3 VFs
[04:46:54] [PASSED] 4 VFs
[04:46:54] [PASSED] 5 VFs
[04:46:54] [PASSED] 6 VFs
[04:46:54] [PASSED] 7 VFs
[04:46:54] [PASSED] 8 VFs
[04:46:54] [PASSED] 9 VFs
[04:46:54] [PASSED] 10 VFs
[04:46:54] [PASSED] 11 VFs
[04:46:54] [PASSED] 12 VFs
[04:46:54] [PASSED] 13 VFs
[04:46:54] [PASSED] 14 VFs
[04:46:54] [PASSED] 15 VFs
[04:46:54] [PASSED] 16 VFs
[04:46:54] [PASSED] 17 VFs
[04:46:54] [PASSED] 18 VFs
[04:46:54] [PASSED] 19 VFs
[04:46:54] [PASSED] 20 VFs
[04:46:54] [PASSED] 21 VFs
[04:46:54] [PASSED] 22 VFs
[04:46:54] [PASSED] 23 VFs
[04:46:54] [PASSED] 24 VFs
[04:46:54] [PASSED] 25 VFs
[04:46:54] [PASSED] 26 VFs
[04:46:54] [PASSED] 27 VFs
[04:46:54] [PASSED] 28 VFs
[04:46:54] [PASSED] 29 VFs
[04:46:54] [PASSED] 30 VFs
[04:46:54] [PASSED] 31 VFs
[04:46:54] [PASSED] 32 VFs
[04:46:54] [PASSED] 33 VFs
[04:46:54] [PASSED] 34 VFs
[04:46:54] [PASSED] 35 VFs
[04:46:54] [PASSED] 36 VFs
[04:46:54] [PASSED] 37 VFs
[04:46:54] [PASSED] 38 VFs
[04:46:54] [PASSED] 39 VFs
[04:46:54] [PASSED] 40 VFs
[04:46:54] [PASSED] 41 VFs
[04:46:54] [PASSED] 42 VFs
[04:46:54] [PASSED] 43 VFs
[04:46:54] [PASSED] 44 VFs
[04:46:54] [PASSED] 45 VFs
[04:46:54] [PASSED] 46 VFs
[04:46:54] [PASSED] 47 VFs
[04:46:54] [PASSED] 48 VFs
[04:46:54] [PASSED] 49 VFs
[04:46:54] [PASSED] 50 VFs
[04:46:54] [PASSED] 51 VFs
[04:46:54] [PASSED] 52 VFs
[04:46:54] [PASSED] 53 VFs
[04:46:54] [PASSED] 54 VFs
[04:46:54] [PASSED] 55 VFs
[04:46:54] [PASSED] 56 VFs
[04:46:54] [PASSED] 57 VFs
[04:46:54] [PASSED] 58 VFs
[04:46:54] [PASSED] 59 VFs
[04:46:54] [PASSED] 60 VFs
[04:46:54] [PASSED] 61 VFs
[04:46:54] [PASSED] 62 VFs
[04:46:54] [PASSED] 63 VFs
[04:46:54] ==================== [PASSED] fair_ggtt ====================
[04:46:54] ================== [PASSED] pf_gt_config ===================
[04:46:54] ===================== lmtt (1 subtest) =====================
[04:46:54] ======================== test_ops =========================
[04:46:54] [PASSED] 2-level
[04:46:54] [PASSED] multi-level
[04:46:54] ==================== [PASSED] test_ops =====================
[04:46:54] ====================== [PASSED] lmtt =======================
[04:46:54] ================= pf_service (11 subtests) =================
[04:46:54] [PASSED] pf_negotiate_any
[04:46:54] [PASSED] pf_negotiate_base_match
[04:46:54] [PASSED] pf_negotiate_base_newer
[04:46:54] [PASSED] pf_negotiate_base_next
[04:46:54] [SKIPPED] pf_negotiate_base_older
[04:46:54] [PASSED] pf_negotiate_base_prev
[04:46:54] [PASSED] pf_negotiate_latest_match
[04:46:54] [PASSED] pf_negotiate_latest_newer
[04:46:54] [PASSED] pf_negotiate_latest_next
[04:46:54] [SKIPPED] pf_negotiate_latest_older
[04:46:54] [SKIPPED] pf_negotiate_latest_prev
[04:46:54] =================== [PASSED] pf_service ====================
[04:46:54] ================= xe_guc_g2g (2 subtests) ==================
[04:46:54] ============== xe_live_guc_g2g_kunit_default ==============
[04:46:54] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[04:46:54] ============== xe_live_guc_g2g_kunit_allmem ===============
[04:46:54] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[04:46:54] =================== [SKIPPED] xe_guc_g2g ===================
[04:46:54] =================== xe_mocs (2 subtests) ===================
[04:46:54] ================ xe_live_mocs_kernel_kunit ================
[04:46:54] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[04:46:54] ================ xe_live_mocs_reset_kunit =================
[04:46:54] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[04:46:54] ==================== [SKIPPED] xe_mocs =====================
[04:46:54] ================= xe_migrate (2 subtests) ==================
[04:46:54] ================= xe_migrate_sanity_kunit =================
[04:46:54] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[04:46:54] ================== xe_validate_ccs_kunit ==================
[04:46:54] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[04:46:54] =================== [SKIPPED] xe_migrate ===================
[04:46:54] ================== xe_dma_buf (1 subtest) ==================
[04:46:54] ==================== xe_dma_buf_kunit =====================
[04:46:54] ================ [SKIPPED] xe_dma_buf_kunit ================
[04:46:54] =================== [SKIPPED] xe_dma_buf ===================
[04:46:54] ================= xe_bo_shrink (1 subtest) =================
[04:46:54] =================== xe_bo_shrink_kunit ====================
[04:46:54] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[04:46:54] ================== [SKIPPED] xe_bo_shrink ==================
[04:46:54] ==================== xe_bo (2 subtests) ====================
[04:46:54] ================== xe_ccs_migrate_kunit ===================
[04:46:54] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[04:46:54] ==================== xe_bo_evict_kunit ====================
[04:46:54] =============== [SKIPPED] xe_bo_evict_kunit ================
[04:46:54] ===================== [SKIPPED] xe_bo ======================
[04:46:54] ==================== args (13 subtests) ====================
[04:46:54] [PASSED] count_args_test
[04:46:54] [PASSED] call_args_example
[04:46:54] [PASSED] call_args_test
[04:46:54] [PASSED] drop_first_arg_example
[04:46:54] [PASSED] drop_first_arg_test
[04:46:54] [PASSED] first_arg_example
[04:46:54] [PASSED] first_arg_test
[04:46:54] [PASSED] last_arg_example
[04:46:54] [PASSED] last_arg_test
[04:46:54] [PASSED] pick_arg_example
[04:46:54] [PASSED] if_args_example
[04:46:54] [PASSED] if_args_test
[04:46:54] [PASSED] sep_comma_example
[04:46:54] ====================== [PASSED] args =======================
[04:46:54] =================== xe_pci (3 subtests) ====================
[04:46:54] ==================== check_graphics_ip ====================
[04:46:54] [PASSED] 12.00 Xe_LP
[04:46:54] [PASSED] 12.10 Xe_LP+
[04:46:54] [PASSED] 12.55 Xe_HPG
[04:46:54] [PASSED] 12.60 Xe_HPC
[04:46:54] [PASSED] 12.70 Xe_LPG
[04:46:54] [PASSED] 12.71 Xe_LPG
[04:46:54] [PASSED] 12.74 Xe_LPG+
[04:46:54] [PASSED] 20.01 Xe2_HPG
[04:46:54] [PASSED] 20.02 Xe2_HPG
[04:46:54] [PASSED] 20.04 Xe2_LPG
[04:46:54] [PASSED] 30.00 Xe3_LPG
[04:46:54] [PASSED] 30.01 Xe3_LPG
[04:46:54] [PASSED] 30.03 Xe3_LPG
[04:46:54] [PASSED] 30.04 Xe3_LPG
[04:46:54] [PASSED] 30.05 Xe3_LPG
[04:46:54] [PASSED] 35.11 Xe3p_XPC
[04:46:54] ================ [PASSED] check_graphics_ip ================
[04:46:54] ===================== check_media_ip ======================
[04:46:54] [PASSED] 12.00 Xe_M
[04:46:54] [PASSED] 12.55 Xe_HPM
[04:46:54] [PASSED] 13.00 Xe_LPM+
[04:46:54] [PASSED] 13.01 Xe2_HPM
[04:46:54] [PASSED] 20.00 Xe2_LPM
[04:46:54] [PASSED] 30.00 Xe3_LPM
[04:46:54] [PASSED] 30.02 Xe3_LPM
[04:46:54] [PASSED] 35.00 Xe3p_LPM
[04:46:54] [PASSED] 35.03 Xe3p_HPM
[04:46:54] ================= [PASSED] check_media_ip ==================
[04:46:54] =================== check_platform_desc ===================
[04:46:54] [PASSED] 0x9A60 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A68 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A70 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A40 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A49 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A59 (TIGERLAKE)
[04:46:54] [PASSED] 0x9A78 (TIGERLAKE)
[04:46:54] [PASSED] 0x9AC0 (TIGERLAKE)
[04:46:54] [PASSED] 0x9AC9 (TIGERLAKE)
[04:46:54] [PASSED] 0x9AD9 (TIGERLAKE)
[04:46:54] [PASSED] 0x9AF8 (TIGERLAKE)
[04:46:54] [PASSED] 0x4C80 (ROCKETLAKE)
[04:46:54] [PASSED] 0x4C8A (ROCKETLAKE)
[04:46:54] [PASSED] 0x4C8B (ROCKETLAKE)
[04:46:54] [PASSED] 0x4C8C (ROCKETLAKE)
[04:46:54] [PASSED] 0x4C90 (ROCKETLAKE)
[04:46:54] [PASSED] 0x4C9A (ROCKETLAKE)
[04:46:54] [PASSED] 0x4680 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4682 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4688 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x468A (ALDERLAKE_S)
[04:46:54] [PASSED] 0x468B (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4690 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4692 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4693 (ALDERLAKE_S)
[04:46:54] [PASSED] 0x46A0 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46A1 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46A2 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46A3 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46A6 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46A8 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46AA (ALDERLAKE_P)
[04:46:54] [PASSED] 0x462A (ALDERLAKE_P)
[04:46:54] [PASSED] 0x4626 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x4628 (ALDERLAKE_P)
stty: 'standard input': Inappropriate ioctl for device
[04:46:54] [PASSED] 0x46B0 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46B1 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46B2 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46B3 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46C0 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46C1 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46C2 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46C3 (ALDERLAKE_P)
[04:46:54] [PASSED] 0x46D0 (ALDERLAKE_N)
[04:46:54] [PASSED] 0x46D1 (ALDERLAKE_N)
[04:46:54] [PASSED] 0x46D2 (ALDERLAKE_N)
[04:46:54] [PASSED] 0x46D3 (ALDERLAKE_N)
[04:46:54] [PASSED] 0x46D4 (ALDERLAKE_N)
[04:46:54] [PASSED] 0xA721 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7A1 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7A9 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7AC (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7AD (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA720 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7A0 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7A8 (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7AA (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA7AB (ALDERLAKE_P)
[04:46:54] [PASSED] 0xA780 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA781 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA782 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA783 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA788 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA789 (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA78A (ALDERLAKE_S)
[04:46:54] [PASSED] 0xA78B (ALDERLAKE_S)
[04:46:54] [PASSED] 0x4905 (DG1)
[04:46:54] [PASSED] 0x4906 (DG1)
[04:46:54] [PASSED] 0x4907 (DG1)
[04:46:54] [PASSED] 0x4908 (DG1)
[04:46:54] [PASSED] 0x4909 (DG1)
[04:46:54] [PASSED] 0x56C0 (DG2)
[04:46:54] [PASSED] 0x56C2 (DG2)
[04:46:54] [PASSED] 0x56C1 (DG2)
[04:46:54] [PASSED] 0x7D51 (METEORLAKE)
[04:46:54] [PASSED] 0x7DD1 (METEORLAKE)
[04:46:54] [PASSED] 0x7D41 (METEORLAKE)
[04:46:54] [PASSED] 0x7D67 (METEORLAKE)
[04:46:54] [PASSED] 0xB640 (METEORLAKE)
[04:46:54] [PASSED] 0x56A0 (DG2)
[04:46:54] [PASSED] 0x56A1 (DG2)
[04:46:54] [PASSED] 0x56A2 (DG2)
[04:46:54] [PASSED] 0x56BE (DG2)
[04:46:54] [PASSED] 0x56BF (DG2)
[04:46:54] [PASSED] 0x5690 (DG2)
[04:46:54] [PASSED] 0x5691 (DG2)
[04:46:54] [PASSED] 0x5692 (DG2)
[04:46:54] [PASSED] 0x56A5 (DG2)
[04:46:54] [PASSED] 0x56A6 (DG2)
[04:46:54] [PASSED] 0x56B0 (DG2)
[04:46:54] [PASSED] 0x56B1 (DG2)
[04:46:54] [PASSED] 0x56BA (DG2)
[04:46:54] [PASSED] 0x56BB (DG2)
[04:46:54] [PASSED] 0x56BC (DG2)
[04:46:54] [PASSED] 0x56BD (DG2)
[04:46:54] [PASSED] 0x5693 (DG2)
[04:46:54] [PASSED] 0x5694 (DG2)
[04:46:54] [PASSED] 0x5695 (DG2)
[04:46:54] [PASSED] 0x56A3 (DG2)
[04:46:54] [PASSED] 0x56A4 (DG2)
[04:46:54] [PASSED] 0x56B2 (DG2)
[04:46:54] [PASSED] 0x56B3 (DG2)
[04:46:54] [PASSED] 0x5696 (DG2)
[04:46:54] [PASSED] 0x5697 (DG2)
[04:46:54] [PASSED] 0xB69 (PVC)
[04:46:54] [PASSED] 0xB6E (PVC)
[04:46:54] [PASSED] 0xBD4 (PVC)
[04:46:54] [PASSED] 0xBD5 (PVC)
[04:46:54] [PASSED] 0xBD6 (PVC)
[04:46:54] [PASSED] 0xBD7 (PVC)
[04:46:54] [PASSED] 0xBD8 (PVC)
[04:46:54] [PASSED] 0xBD9 (PVC)
[04:46:54] [PASSED] 0xBDA (PVC)
[04:46:54] [PASSED] 0xBDB (PVC)
[04:46:54] [PASSED] 0xBE0 (PVC)
[04:46:54] [PASSED] 0xBE1 (PVC)
[04:46:54] [PASSED] 0xBE5 (PVC)
[04:46:54] [PASSED] 0x7D40 (METEORLAKE)
[04:46:54] [PASSED] 0x7D45 (METEORLAKE)
[04:46:54] [PASSED] 0x7D55 (METEORLAKE)
[04:46:54] [PASSED] 0x7D60 (METEORLAKE)
[04:46:54] [PASSED] 0x7DD5 (METEORLAKE)
[04:46:54] [PASSED] 0x6420 (LUNARLAKE)
[04:46:54] [PASSED] 0x64A0 (LUNARLAKE)
[04:46:54] [PASSED] 0x64B0 (LUNARLAKE)
[04:46:54] [PASSED] 0xE202 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE209 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE20B (BATTLEMAGE)
[04:46:54] [PASSED] 0xE20C (BATTLEMAGE)
[04:46:54] [PASSED] 0xE20D (BATTLEMAGE)
[04:46:54] [PASSED] 0xE210 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE211 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE212 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE216 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE220 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE221 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE222 (BATTLEMAGE)
[04:46:54] [PASSED] 0xE223 (BATTLEMAGE)
[04:46:54] [PASSED] 0xB080 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB081 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB082 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB083 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB084 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB085 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB086 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB087 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB08F (PANTHERLAKE)
[04:46:54] [PASSED] 0xB090 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB0A0 (PANTHERLAKE)
[04:46:54] [PASSED] 0xB0B0 (PANTHERLAKE)
[04:46:54] [PASSED] 0xFD80 (PANTHERLAKE)
[04:46:54] [PASSED] 0xFD81 (PANTHERLAKE)
[04:46:54] [PASSED] 0xD740 (NOVALAKE_S)
[04:46:54] [PASSED] 0xD741 (NOVALAKE_S)
[04:46:54] [PASSED] 0xD742 (NOVALAKE_S)
[04:46:54] [PASSED] 0xD743 (NOVALAKE_S)
[04:46:54] [PASSED] 0xD744 (NOVALAKE_S)
[04:46:54] [PASSED] 0xD745 (NOVALAKE_S)
[04:46:54] [PASSED] 0x674C (CRESCENTISLAND)
[04:46:54] =============== [PASSED] check_platform_desc ===============
[04:46:54] ===================== [PASSED] xe_pci ======================
[04:46:54] =================== xe_rtp (2 subtests) ====================
[04:46:54] =============== xe_rtp_process_to_sr_tests ================
[04:46:54] [PASSED] coalesce-same-reg
[04:46:54] [PASSED] no-match-no-add
[04:46:54] [PASSED] match-or
[04:46:54] [PASSED] match-or-xfail
[04:46:54] [PASSED] no-match-no-add-multiple-rules
[04:46:54] [PASSED] two-regs-two-entries
[04:46:54] [PASSED] clr-one-set-other
[04:46:54] [PASSED] set-field
[04:46:54] [PASSED] conflict-duplicate
[04:46:54] [PASSED] conflict-not-disjoint
[04:46:54] [PASSED] conflict-reg-type
[04:46:54] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[04:46:54] ================== xe_rtp_process_tests ===================
[04:46:54] [PASSED] active1
[04:46:54] [PASSED] active2
[04:46:54] [PASSED] active-inactive
[04:46:54] [PASSED] inactive-active
[04:46:54] [PASSED] inactive-1st_or_active-inactive
[04:46:54] [PASSED] inactive-2nd_or_active-inactive
[04:46:54] [PASSED] inactive-last_or_active-inactive
[04:46:54] [PASSED] inactive-no_or_active-inactive
[04:46:54] ============== [PASSED] xe_rtp_process_tests ===============
[04:46:54] ===================== [PASSED] xe_rtp ======================
[04:46:54] ==================== xe_wa (1 subtest) =====================
[04:46:54] ======================== xe_wa_gt =========================
[04:46:54] [PASSED] TIGERLAKE B0
[04:46:54] [PASSED] DG1 A0
[04:46:54] [PASSED] DG1 B0
[04:46:54] [PASSED] ALDERLAKE_S A0
[04:46:54] [PASSED] ALDERLAKE_S B0
[04:46:54] [PASSED] ALDERLAKE_S C0
[04:46:54] [PASSED] ALDERLAKE_S D0
[04:46:54] [PASSED] ALDERLAKE_P A0
[04:46:54] [PASSED] ALDERLAKE_P B0
[04:46:54] [PASSED] ALDERLAKE_P C0
[04:46:54] [PASSED] ALDERLAKE_S RPLS D0
[04:46:54] [PASSED] ALDERLAKE_P RPLU E0
[04:46:54] [PASSED] DG2 G10 C0
[04:46:54] [PASSED] DG2 G11 B1
[04:46:54] [PASSED] DG2 G12 A1
[04:46:54] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[04:46:54] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[04:46:54] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[04:46:54] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[04:46:54] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[04:46:54] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[04:46:54] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[04:46:54] ==================== [PASSED] xe_wa_gt =====================
[04:46:54] ====================== [PASSED] xe_wa ======================
[04:46:54] ============================================================
[04:46:54] Testing complete. Ran 512 tests: passed: 494, skipped: 18
[04:46:54] Elapsed time: 36.197s total, 4.219s configuring, 31.512s building, 0.454s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[04:46:54] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[04:46:56] 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
[04:47:21] Starting KUnit Kernel (1/1)...
[04:47:21] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[04:47:21] ============ drm_test_pick_cmdline (2 subtests) ============
[04:47:21] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[04:47:21] =============== drm_test_pick_cmdline_named ===============
[04:47:21] [PASSED] NTSC
[04:47:21] [PASSED] NTSC-J
[04:47:21] [PASSED] PAL
[04:47:21] [PASSED] PAL-M
[04:47:21] =========== [PASSED] drm_test_pick_cmdline_named ===========
[04:47:21] ============== [PASSED] drm_test_pick_cmdline ==============
[04:47:21] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[04:47:21] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[04:47:21] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[04:47:21] =========== drm_validate_clone_mode (2 subtests) ===========
[04:47:21] ============== drm_test_check_in_clone_mode ===============
[04:47:21] [PASSED] in_clone_mode
[04:47:21] [PASSED] not_in_clone_mode
[04:47:21] ========== [PASSED] drm_test_check_in_clone_mode ===========
[04:47:21] =============== drm_test_check_valid_clones ===============
[04:47:21] [PASSED] not_in_clone_mode
[04:47:21] [PASSED] valid_clone
[04:47:21] [PASSED] invalid_clone
[04:47:21] =========== [PASSED] drm_test_check_valid_clones ===========
[04:47:21] ============= [PASSED] drm_validate_clone_mode =============
[04:47:21] ============= drm_validate_modeset (1 subtest) =============
[04:47:21] [PASSED] drm_test_check_connector_changed_modeset
[04:47:21] ============== [PASSED] drm_validate_modeset ===============
[04:47:21] ====== drm_test_bridge_get_current_state (2 subtests) ======
[04:47:21] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[04:47:21] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[04:47:21] ======== [PASSED] drm_test_bridge_get_current_state ========
[04:47:21] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[04:47:21] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[04:47:21] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[04:47:21] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[04:47:21] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[04:47:21] ============== drm_bridge_alloc (2 subtests) ===============
[04:47:21] [PASSED] drm_test_drm_bridge_alloc_basic
[04:47:21] [PASSED] drm_test_drm_bridge_alloc_get_put
[04:47:21] ================ [PASSED] drm_bridge_alloc =================
[04:47:21] ================== drm_buddy (8 subtests) ==================
[04:47:21] [PASSED] drm_test_buddy_alloc_limit
[04:47:21] [PASSED] drm_test_buddy_alloc_optimistic
[04:47:21] [PASSED] drm_test_buddy_alloc_pessimistic
[04:47:21] [PASSED] drm_test_buddy_alloc_pathological
[04:47:21] [PASSED] drm_test_buddy_alloc_contiguous
[04:47:21] [PASSED] drm_test_buddy_alloc_clear
[04:47:21] [PASSED] drm_test_buddy_alloc_range_bias
[04:47:21] [PASSED] drm_test_buddy_fragmentation_performance
[04:47:21] ==================== [PASSED] drm_buddy ====================
[04:47:21] ============= drm_cmdline_parser (40 subtests) =============
[04:47:21] [PASSED] drm_test_cmdline_force_d_only
[04:47:21] [PASSED] drm_test_cmdline_force_D_only_dvi
[04:47:21] [PASSED] drm_test_cmdline_force_D_only_hdmi
[04:47:21] [PASSED] drm_test_cmdline_force_D_only_not_digital
[04:47:21] [PASSED] drm_test_cmdline_force_e_only
[04:47:21] [PASSED] drm_test_cmdline_res
[04:47:21] [PASSED] drm_test_cmdline_res_vesa
[04:47:21] [PASSED] drm_test_cmdline_res_vesa_rblank
[04:47:21] [PASSED] drm_test_cmdline_res_rblank
[04:47:21] [PASSED] drm_test_cmdline_res_bpp
[04:47:21] [PASSED] drm_test_cmdline_res_refresh
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[04:47:21] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[04:47:21] [PASSED] drm_test_cmdline_res_margins_force_on
[04:47:21] [PASSED] drm_test_cmdline_res_vesa_margins
[04:47:21] [PASSED] drm_test_cmdline_name
[04:47:21] [PASSED] drm_test_cmdline_name_bpp
[04:47:21] [PASSED] drm_test_cmdline_name_option
[04:47:21] [PASSED] drm_test_cmdline_name_bpp_option
[04:47:21] [PASSED] drm_test_cmdline_rotate_0
[04:47:21] [PASSED] drm_test_cmdline_rotate_90
[04:47:21] [PASSED] drm_test_cmdline_rotate_180
[04:47:21] [PASSED] drm_test_cmdline_rotate_270
[04:47:21] [PASSED] drm_test_cmdline_hmirror
[04:47:21] [PASSED] drm_test_cmdline_vmirror
[04:47:21] [PASSED] drm_test_cmdline_margin_options
[04:47:21] [PASSED] drm_test_cmdline_multiple_options
[04:47:21] [PASSED] drm_test_cmdline_bpp_extra_and_option
[04:47:21] [PASSED] drm_test_cmdline_extra_and_option
[04:47:21] [PASSED] drm_test_cmdline_freestanding_options
[04:47:21] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[04:47:21] [PASSED] drm_test_cmdline_panel_orientation
[04:47:21] ================ drm_test_cmdline_invalid =================
[04:47:21] [PASSED] margin_only
[04:47:21] [PASSED] interlace_only
[04:47:21] [PASSED] res_missing_x
[04:47:21] [PASSED] res_missing_y
[04:47:21] [PASSED] res_bad_y
[04:47:21] [PASSED] res_missing_y_bpp
[04:47:21] [PASSED] res_bad_bpp
[04:47:21] [PASSED] res_bad_refresh
[04:47:21] [PASSED] res_bpp_refresh_force_on_off
[04:47:21] [PASSED] res_invalid_mode
[04:47:21] [PASSED] res_bpp_wrong_place_mode
[04:47:21] [PASSED] name_bpp_refresh
[04:47:21] [PASSED] name_refresh
[04:47:21] [PASSED] name_refresh_wrong_mode
[04:47:21] [PASSED] name_refresh_invalid_mode
[04:47:21] [PASSED] rotate_multiple
[04:47:21] [PASSED] rotate_invalid_val
[04:47:21] [PASSED] rotate_truncated
[04:47:21] [PASSED] invalid_option
[04:47:21] [PASSED] invalid_tv_option
[04:47:21] [PASSED] truncated_tv_option
[04:47:21] ============ [PASSED] drm_test_cmdline_invalid =============
[04:47:21] =============== drm_test_cmdline_tv_options ===============
[04:47:21] [PASSED] NTSC
[04:47:21] [PASSED] NTSC_443
[04:47:21] [PASSED] NTSC_J
[04:47:21] [PASSED] PAL
[04:47:21] [PASSED] PAL_M
[04:47:21] [PASSED] PAL_N
[04:47:21] [PASSED] SECAM
[04:47:21] [PASSED] MONO_525
[04:47:21] [PASSED] MONO_625
[04:47:21] =========== [PASSED] drm_test_cmdline_tv_options ===========
[04:47:21] =============== [PASSED] drm_cmdline_parser ================
[04:47:21] ========== drmm_connector_hdmi_init (20 subtests) ==========
[04:47:21] [PASSED] drm_test_connector_hdmi_init_valid
[04:47:21] [PASSED] drm_test_connector_hdmi_init_bpc_8
[04:47:21] [PASSED] drm_test_connector_hdmi_init_bpc_10
[04:47:21] [PASSED] drm_test_connector_hdmi_init_bpc_12
[04:47:21] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[04:47:21] [PASSED] drm_test_connector_hdmi_init_bpc_null
[04:47:21] [PASSED] drm_test_connector_hdmi_init_formats_empty
[04:47:21] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[04:47:21] === drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[04:47:21] [PASSED] supported_formats=0x9 yuv420_allowed=1
[04:47:21] [PASSED] supported_formats=0x9 yuv420_allowed=0
[04:47:21] [PASSED] supported_formats=0x3 yuv420_allowed=1
[04:47:21] [PASSED] supported_formats=0x3 yuv420_allowed=0
[04:47:21] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[04:47:21] [PASSED] drm_test_connector_hdmi_init_null_ddc
[04:47:21] [PASSED] drm_test_connector_hdmi_init_null_product
[04:47:21] [PASSED] drm_test_connector_hdmi_init_null_vendor
[04:47:21] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[04:47:21] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[04:47:21] [PASSED] drm_test_connector_hdmi_init_product_valid
[04:47:21] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[04:47:21] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[04:47:21] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[04:47:21] ========= drm_test_connector_hdmi_init_type_valid =========
[04:47:21] [PASSED] HDMI-A
[04:47:21] [PASSED] HDMI-B
[04:47:21] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[04:47:21] ======== drm_test_connector_hdmi_init_type_invalid ========
[04:47:21] [PASSED] Unknown
[04:47:21] [PASSED] VGA
[04:47:21] [PASSED] DVI-I
[04:47:21] [PASSED] DVI-D
[04:47:21] [PASSED] DVI-A
[04:47:21] [PASSED] Composite
[04:47:21] [PASSED] SVIDEO
[04:47:21] [PASSED] LVDS
[04:47:21] [PASSED] Component
[04:47:21] [PASSED] DIN
[04:47:21] [PASSED] DP
[04:47:21] [PASSED] TV
[04:47:21] [PASSED] eDP
[04:47:21] [PASSED] Virtual
[04:47:21] [PASSED] DSI
[04:47:21] [PASSED] DPI
[04:47:21] [PASSED] Writeback
[04:47:21] [PASSED] SPI
[04:47:21] [PASSED] USB
[04:47:21] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[04:47:21] ============ [PASSED] drmm_connector_hdmi_init =============
[04:47:21] ============= drmm_connector_init (3 subtests) =============
[04:47:21] [PASSED] drm_test_drmm_connector_init
[04:47:21] [PASSED] drm_test_drmm_connector_init_null_ddc
[04:47:21] ========= drm_test_drmm_connector_init_type_valid =========
[04:47:21] [PASSED] Unknown
[04:47:21] [PASSED] VGA
[04:47:21] [PASSED] DVI-I
[04:47:21] [PASSED] DVI-D
[04:47:21] [PASSED] DVI-A
[04:47:21] [PASSED] Composite
[04:47:21] [PASSED] SVIDEO
[04:47:21] [PASSED] LVDS
[04:47:21] [PASSED] Component
[04:47:21] [PASSED] DIN
[04:47:21] [PASSED] DP
[04:47:21] [PASSED] HDMI-A
[04:47:21] [PASSED] HDMI-B
[04:47:21] [PASSED] TV
[04:47:21] [PASSED] eDP
[04:47:21] [PASSED] Virtual
[04:47:21] [PASSED] DSI
[04:47:21] [PASSED] DPI
[04:47:21] [PASSED] Writeback
[04:47:21] [PASSED] SPI
[04:47:21] [PASSED] USB
[04:47:21] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[04:47:21] =============== [PASSED] drmm_connector_init ===============
[04:47:21] ========= drm_connector_dynamic_init (6 subtests) ==========
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_init
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_init_properties
[04:47:21] ===== drm_test_drm_connector_dynamic_init_type_valid ======
[04:47:21] [PASSED] Unknown
[04:47:21] [PASSED] VGA
[04:47:21] [PASSED] DVI-I
[04:47:21] [PASSED] DVI-D
[04:47:21] [PASSED] DVI-A
[04:47:21] [PASSED] Composite
[04:47:21] [PASSED] SVIDEO
[04:47:21] [PASSED] LVDS
[04:47:21] [PASSED] Component
[04:47:21] [PASSED] DIN
[04:47:21] [PASSED] DP
[04:47:21] [PASSED] HDMI-A
[04:47:21] [PASSED] HDMI-B
[04:47:21] [PASSED] TV
[04:47:21] [PASSED] eDP
[04:47:21] [PASSED] Virtual
[04:47:21] [PASSED] DSI
[04:47:21] [PASSED] DPI
[04:47:21] [PASSED] Writeback
[04:47:21] [PASSED] SPI
[04:47:21] [PASSED] USB
[04:47:21] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[04:47:21] ======== drm_test_drm_connector_dynamic_init_name =========
[04:47:21] [PASSED] Unknown
[04:47:21] [PASSED] VGA
[04:47:21] [PASSED] DVI-I
[04:47:21] [PASSED] DVI-D
[04:47:21] [PASSED] DVI-A
[04:47:21] [PASSED] Composite
[04:47:21] [PASSED] SVIDEO
[04:47:21] [PASSED] LVDS
[04:47:21] [PASSED] Component
[04:47:21] [PASSED] DIN
[04:47:21] [PASSED] DP
[04:47:21] [PASSED] HDMI-A
[04:47:21] [PASSED] HDMI-B
[04:47:21] [PASSED] TV
[04:47:21] [PASSED] eDP
[04:47:21] [PASSED] Virtual
[04:47:21] [PASSED] DSI
[04:47:21] [PASSED] DPI
[04:47:21] [PASSED] Writeback
[04:47:21] [PASSED] SPI
[04:47:21] [PASSED] USB
[04:47:21] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[04:47:21] =========== [PASSED] drm_connector_dynamic_init ============
[04:47:21] ==== drm_connector_dynamic_register_early (4 subtests) =====
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[04:47:21] ====== [PASSED] drm_connector_dynamic_register_early =======
[04:47:21] ======= drm_connector_dynamic_register (7 subtests) ========
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[04:47:21] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[04:47:21] ========= [PASSED] drm_connector_dynamic_register ==========
[04:47:21] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[04:47:21] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[04:47:21] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[04:47:21] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[04:47:21] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[04:47:21] ========== drm_test_get_tv_mode_from_name_valid ===========
[04:47:21] [PASSED] NTSC
[04:47:21] [PASSED] NTSC-443
[04:47:21] [PASSED] NTSC-J
[04:47:21] [PASSED] PAL
[04:47:21] [PASSED] PAL-M
[04:47:21] [PASSED] PAL-N
[04:47:21] [PASSED] SECAM
[04:47:21] [PASSED] Mono
[04:47:21] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[04:47:21] [PASSED] drm_test_get_tv_mode_from_name_truncated
[04:47:21] ============ [PASSED] drm_get_tv_mode_from_name ============
[04:47:21] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[04:47:21] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[04:47:21] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid =
[04:47:21] [PASSED] VIC 96
[04:47:21] [PASSED] VIC 97
[04:47:21] [PASSED] VIC 101
[04:47:21] [PASSED] VIC 102
[04:47:21] [PASSED] VIC 106
[04:47:21] [PASSED] VIC 107
[04:47:21] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[04:47:21] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[04:47:21] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[04:47:21] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[04:47:21] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[04:47:21] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[04:47:21] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[04:47:21] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[04:47:21] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ====
[04:47:21] [PASSED] Automatic
[04:47:21] [PASSED] Full
[04:47:21] [PASSED] Limited 16:235
[04:47:21] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[04:47:21] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[04:47:21] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[04:47:21] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[04:47:21] === drm_test_drm_hdmi_connector_get_output_format_name ====
[04:47:21] [PASSED] RGB
[04:47:21] [PASSED] YUV 4:2:0
[04:47:21] [PASSED] YUV 4:2:2
[04:47:21] [PASSED] YUV 4:4:4
[04:47:21] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[04:47:21] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[04:47:21] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[04:47:21] ============= drm_damage_helper (21 subtests) ==============
[04:47:21] [PASSED] drm_test_damage_iter_no_damage
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_src_moved
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_not_visible
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[04:47:21] [PASSED] drm_test_damage_iter_no_damage_no_fb
[04:47:21] [PASSED] drm_test_damage_iter_simple_damage
[04:47:21] [PASSED] drm_test_damage_iter_single_damage
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_outside_src
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_src_moved
[04:47:21] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[04:47:21] [PASSED] drm_test_damage_iter_damage
[04:47:21] [PASSED] drm_test_damage_iter_damage_one_intersect
[04:47:21] [PASSED] drm_test_damage_iter_damage_one_outside
[04:47:21] [PASSED] drm_test_damage_iter_damage_src_moved
[04:47:21] [PASSED] drm_test_damage_iter_damage_not_visible
[04:47:21] ================ [PASSED] drm_damage_helper ================
[04:47:21] ============== drm_dp_mst_helper (3 subtests) ==============
[04:47:21] ============== drm_test_dp_mst_calc_pbn_mode ==============
[04:47:21] [PASSED] Clock 154000 BPP 30 DSC disabled
[04:47:21] [PASSED] Clock 234000 BPP 30 DSC disabled
[04:47:21] [PASSED] Clock 297000 BPP 24 DSC disabled
[04:47:21] [PASSED] Clock 332880 BPP 24 DSC enabled
[04:47:21] [PASSED] Clock 324540 BPP 24 DSC enabled
[04:47:21] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[04:47:21] ============== drm_test_dp_mst_calc_pbn_div ===============
[04:47:21] [PASSED] Link rate 2000000 lane count 4
[04:47:21] [PASSED] Link rate 2000000 lane count 2
[04:47:21] [PASSED] Link rate 2000000 lane count 1
[04:47:21] [PASSED] Link rate 1350000 lane count 4
[04:47:21] [PASSED] Link rate 1350000 lane count 2
[04:47:21] [PASSED] Link rate 1350000 lane count 1
[04:47:21] [PASSED] Link rate 1000000 lane count 4
[04:47:21] [PASSED] Link rate 1000000 lane count 2
[04:47:21] [PASSED] Link rate 1000000 lane count 1
[04:47:21] [PASSED] Link rate 810000 lane count 4
[04:47:21] [PASSED] Link rate 810000 lane count 2
[04:47:21] [PASSED] Link rate 810000 lane count 1
[04:47:21] [PASSED] Link rate 540000 lane count 4
[04:47:21] [PASSED] Link rate 540000 lane count 2
[04:47:21] [PASSED] Link rate 540000 lane count 1
[04:47:21] [PASSED] Link rate 270000 lane count 4
[04:47:21] [PASSED] Link rate 270000 lane count 2
[04:47:21] [PASSED] Link rate 270000 lane count 1
[04:47:21] [PASSED] Link rate 162000 lane count 4
[04:47:21] [PASSED] Link rate 162000 lane count 2
[04:47:21] [PASSED] Link rate 162000 lane count 1
[04:47:21] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[04:47:21] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[04:47:21] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[04:47:21] [PASSED] DP_POWER_UP_PHY with port number
[04:47:21] [PASSED] DP_POWER_DOWN_PHY with port number
[04:47:21] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[04:47:21] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[04:47:21] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[04:47:21] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[04:47:21] [PASSED] DP_QUERY_PAYLOAD with port number
[04:47:21] [PASSED] DP_QUERY_PAYLOAD with VCPI
[04:47:21] [PASSED] DP_REMOTE_DPCD_READ with port number
[04:47:21] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[04:47:21] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[04:47:21] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[04:47:21] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[04:47:21] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[04:47:21] [PASSED] DP_REMOTE_I2C_READ with port number
[04:47:21] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[04:47:21] [PASSED] DP_REMOTE_I2C_READ with transactions array
[04:47:21] [PASSED] DP_REMOTE_I2C_WRITE with port number
[04:47:21] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[04:47:21] [PASSED] DP_REMOTE_I2C_WRITE with data array
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[04:47:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[04:47:21] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[04:47:21] ================ [PASSED] drm_dp_mst_helper ================
[04:47:21] ================== drm_exec (7 subtests) ===================
[04:47:21] [PASSED] sanitycheck
[04:47:21] [PASSED] test_lock
[04:47:21] [PASSED] test_lock_unlock
[04:47:21] [PASSED] test_duplicates
[04:47:21] [PASSED] test_prepare
[04:47:21] [PASSED] test_prepare_array
[04:47:21] [PASSED] test_multiple_loops
[04:47:21] ==================== [PASSED] drm_exec =====================
[04:47:21] =========== drm_format_helper_test (17 subtests) ===========
[04:47:21] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[04:47:21] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[04:47:21] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[04:47:21] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[04:47:21] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[04:47:21] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[04:47:21] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[04:47:21] ============= drm_test_fb_xrgb8888_to_bgr888 ==============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[04:47:21] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[04:47:21] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[04:47:21] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[04:47:21] ============== drm_test_fb_xrgb8888_to_mono ===============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[04:47:21] ==================== drm_test_fb_swab =====================
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ================ [PASSED] drm_test_fb_swab =================
[04:47:21] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[04:47:21] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[04:47:21] [PASSED] single_pixel_source_buffer
[04:47:21] [PASSED] single_pixel_clip_rectangle
[04:47:21] [PASSED] well_known_colors
[04:47:21] [PASSED] destination_pitch
[04:47:21] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[04:47:21] ================= drm_test_fb_clip_offset =================
[04:47:21] [PASSED] pass through
[04:47:21] [PASSED] horizontal offset
[04:47:21] [PASSED] vertical offset
[04:47:21] [PASSED] horizontal and vertical offset
[04:47:21] [PASSED] horizontal offset (custom pitch)
[04:47:21] [PASSED] vertical offset (custom pitch)
[04:47:21] [PASSED] horizontal and vertical offset (custom pitch)
[04:47:21] ============= [PASSED] drm_test_fb_clip_offset =============
[04:47:21] =================== drm_test_fb_memcpy ====================
[04:47:21] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[04:47:21] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[04:47:21] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[04:47:21] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[04:47:21] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[04:47:21] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[04:47:21] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[04:47:21] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[04:47:21] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[04:47:21] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[04:47:21] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[04:47:21] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[04:47:21] =============== [PASSED] drm_test_fb_memcpy ================
[04:47:21] ============= [PASSED] drm_format_helper_test ==============
[04:47:21] ================= drm_format (18 subtests) =================
[04:47:21] [PASSED] drm_test_format_block_width_invalid
[04:47:21] [PASSED] drm_test_format_block_width_one_plane
[04:47:21] [PASSED] drm_test_format_block_width_two_plane
[04:47:21] [PASSED] drm_test_format_block_width_three_plane
[04:47:21] [PASSED] drm_test_format_block_width_tiled
[04:47:21] [PASSED] drm_test_format_block_height_invalid
[04:47:21] [PASSED] drm_test_format_block_height_one_plane
[04:47:21] [PASSED] drm_test_format_block_height_two_plane
[04:47:21] [PASSED] drm_test_format_block_height_three_plane
[04:47:21] [PASSED] drm_test_format_block_height_tiled
[04:47:21] [PASSED] drm_test_format_min_pitch_invalid
[04:47:21] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[04:47:21] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[04:47:21] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[04:47:21] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[04:47:21] [PASSED] drm_test_format_min_pitch_two_plane
[04:47:21] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[04:47:21] [PASSED] drm_test_format_min_pitch_tiled
[04:47:21] =================== [PASSED] drm_format ====================
[04:47:21] ============== drm_framebuffer (10 subtests) ===============
[04:47:21] ========== drm_test_framebuffer_check_src_coords ==========
[04:47:21] [PASSED] Success: source fits into fb
[04:47:21] [PASSED] Fail: overflowing fb with x-axis coordinate
[04:47:21] [PASSED] Fail: overflowing fb with y-axis coordinate
[04:47:21] [PASSED] Fail: overflowing fb with source width
[04:47:21] [PASSED] Fail: overflowing fb with source height
[04:47:21] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[04:47:21] [PASSED] drm_test_framebuffer_cleanup
[04:47:21] =============== drm_test_framebuffer_create ===============
[04:47:21] [PASSED] ABGR8888 normal sizes
[04:47:21] [PASSED] ABGR8888 max sizes
[04:47:21] [PASSED] ABGR8888 pitch greater than min required
[04:47:21] [PASSED] ABGR8888 pitch less than min required
[04:47:21] [PASSED] ABGR8888 Invalid width
[04:47:21] [PASSED] ABGR8888 Invalid buffer handle
[04:47:21] [PASSED] No pixel format
[04:47:21] [PASSED] ABGR8888 Width 0
[04:47:21] [PASSED] ABGR8888 Height 0
[04:47:21] [PASSED] ABGR8888 Out of bound height * pitch combination
[04:47:21] [PASSED] ABGR8888 Large buffer offset
[04:47:21] [PASSED] ABGR8888 Buffer offset for inexistent plane
[04:47:21] [PASSED] ABGR8888 Invalid flag
[04:47:21] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[04:47:21] [PASSED] ABGR8888 Valid buffer modifier
[04:47:21] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[04:47:21] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] NV12 Normal sizes
[04:47:21] [PASSED] NV12 Max sizes
[04:47:21] [PASSED] NV12 Invalid pitch
[04:47:21] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[04:47:21] [PASSED] NV12 different modifier per-plane
[04:47:21] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[04:47:21] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] NV12 Modifier for inexistent plane
[04:47:21] [PASSED] NV12 Handle for inexistent plane
[04:47:21] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[04:47:21] [PASSED] YVU420 Normal sizes
[04:47:21] [PASSED] YVU420 Max sizes
[04:47:21] [PASSED] YVU420 Invalid pitch
[04:47:21] [PASSED] YVU420 Different pitches
[04:47:21] [PASSED] YVU420 Different buffer offsets/pitches
[04:47:21] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[04:47:21] [PASSED] YVU420 Valid modifier
[04:47:21] [PASSED] YVU420 Different modifiers per plane
[04:47:21] [PASSED] YVU420 Modifier for inexistent plane
[04:47:21] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[04:47:21] [PASSED] X0L2 Normal sizes
[04:47:21] [PASSED] X0L2 Max sizes
[04:47:21] [PASSED] X0L2 Invalid pitch
[04:47:21] [PASSED] X0L2 Pitch greater than minimum required
[04:47:21] [PASSED] X0L2 Handle for inexistent plane
[04:47:21] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[04:47:21] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[04:47:21] [PASSED] X0L2 Valid modifier
[04:47:21] [PASSED] X0L2 Modifier for inexistent plane
[04:47:21] =========== [PASSED] drm_test_framebuffer_create ===========
[04:47:21] [PASSED] drm_test_framebuffer_free
[04:47:21] [PASSED] drm_test_framebuffer_init
[04:47:21] [PASSED] drm_test_framebuffer_init_bad_format
[04:47:21] [PASSED] drm_test_framebuffer_init_dev_mismatch
[04:47:21] [PASSED] drm_test_framebuffer_lookup
[04:47:21] [PASSED] drm_test_framebuffer_lookup_inexistent
[04:47:21] [PASSED] drm_test_framebuffer_modifiers_not_supported
[04:47:21] ================= [PASSED] drm_framebuffer =================
[04:47:21] ================ drm_gem_shmem (8 subtests) ================
[04:47:21] [PASSED] drm_gem_shmem_test_obj_create
[04:47:21] [PASSED] drm_gem_shmem_test_obj_create_private
[04:47:21] [PASSED] drm_gem_shmem_test_pin_pages
[04:47:21] [PASSED] drm_gem_shmem_test_vmap
[04:47:21] [PASSED] drm_gem_shmem_test_get_sg_table
[04:47:21] [PASSED] drm_gem_shmem_test_get_pages_sgt
[04:47:21] [PASSED] drm_gem_shmem_test_madvise
[04:47:21] [PASSED] drm_gem_shmem_test_purge
[04:47:21] ================== [PASSED] drm_gem_shmem ==================
[04:47:21] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[04:47:21] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420 =======
[04:47:21] [PASSED] Automatic
[04:47:21] [PASSED] Full
[04:47:21] [PASSED] Limited 16:235
[04:47:21] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[04:47:21] [PASSED] drm_test_check_disable_connector
[04:47:21] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[04:47:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[04:47:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[04:47:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[04:47:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[04:47:21] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[04:47:21] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[04:47:21] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[04:47:21] [PASSED] drm_test_check_output_bpc_dvi
[04:47:21] [PASSED] drm_test_check_output_bpc_format_vic_1
[04:47:21] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[04:47:21] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[04:47:21] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[04:47:21] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[04:47:21] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[04:47:21] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[04:47:21] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[04:47:21] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[04:47:21] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[04:47:21] [PASSED] drm_test_check_broadcast_rgb_value
[04:47:21] [PASSED] drm_test_check_bpc_8_value
[04:47:21] [PASSED] drm_test_check_bpc_10_value
[04:47:21] [PASSED] drm_test_check_bpc_12_value
[04:47:21] [PASSED] drm_test_check_format_value
[04:47:21] [PASSED] drm_test_check_tmds_char_value
[04:47:21] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[04:47:21] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[04:47:21] [PASSED] drm_test_check_mode_valid
[04:47:21] [PASSED] drm_test_check_mode_valid_reject
[04:47:21] [PASSED] drm_test_check_mode_valid_reject_rate
[04:47:21] [PASSED] drm_test_check_mode_valid_reject_max_clock
[04:47:21] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[04:47:21] ================= drm_managed (2 subtests) =================
[04:47:21] [PASSED] drm_test_managed_release_action
[04:47:21] [PASSED] drm_test_managed_run_action
[04:47:21] =================== [PASSED] drm_managed ===================
[04:47:21] =================== drm_mm (6 subtests) ====================
[04:47:21] [PASSED] drm_test_mm_init
[04:47:21] [PASSED] drm_test_mm_debug
[04:47:21] [PASSED] drm_test_mm_align32
[04:47:21] [PASSED] drm_test_mm_align64
[04:47:21] [PASSED] drm_test_mm_lowest
[04:47:21] [PASSED] drm_test_mm_highest
[04:47:21] ===================== [PASSED] drm_mm ======================
[04:47:21] ============= drm_modes_analog_tv (5 subtests) =============
[04:47:21] [PASSED] drm_test_modes_analog_tv_mono_576i
[04:47:21] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[04:47:21] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[04:47:21] [PASSED] drm_test_modes_analog_tv_pal_576i
[04:47:21] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[04:47:21] =============== [PASSED] drm_modes_analog_tv ===============
[04:47:21] ============== drm_plane_helper (2 subtests) ===============
[04:47:21] =============== drm_test_check_plane_state ================
[04:47:21] [PASSED] clipping_simple
[04:47:21] [PASSED] clipping_rotate_reflect
[04:47:21] [PASSED] positioning_simple
[04:47:21] [PASSED] upscaling
[04:47:21] [PASSED] downscaling
[04:47:21] [PASSED] rounding1
[04:47:21] [PASSED] rounding2
[04:47:21] [PASSED] rounding3
[04:47:21] [PASSED] rounding4
[04:47:21] =========== [PASSED] drm_test_check_plane_state ============
[04:47:21] =========== drm_test_check_invalid_plane_state ============
[04:47:21] [PASSED] positioning_invalid
[04:47:21] [PASSED] upscaling_invalid
[04:47:21] [PASSED] downscaling_invalid
[04:47:21] ======= [PASSED] drm_test_check_invalid_plane_state ========
[04:47:21] ================ [PASSED] drm_plane_helper =================
[04:47:21] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[04:47:21] ====== drm_test_connector_helper_tv_get_modes_check =======
[04:47:21] [PASSED] None
[04:47:21] [PASSED] PAL
[04:47:21] [PASSED] NTSC
[04:47:21] [PASSED] Both, NTSC Default
[04:47:21] [PASSED] Both, PAL Default
[04:47:21] [PASSED] Both, NTSC Default, with PAL on command-line
[04:47:21] [PASSED] Both, PAL Default, with NTSC on command-line
[04:47:21] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[04:47:21] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[04:47:21] ================== drm_rect (9 subtests) ===================
[04:47:21] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[04:47:21] [PASSED] drm_test_rect_clip_scaled_not_clipped
[04:47:21] [PASSED] drm_test_rect_clip_scaled_clipped
[04:47:21] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[04:47:21] ================= drm_test_rect_intersect =================
[04:47:21] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[04:47:21] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[04:47:21] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[04:47:21] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[04:47:21] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[04:47:21] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[04:47:21] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[04:47:21] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[04:47:21] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[04:47:21] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[04:47:21] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[04:47:21] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[04:47:21] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[04:47:21] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[04:47:21] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[04:47:21] ============= [PASSED] drm_test_rect_intersect =============
[04:47:21] ================ drm_test_rect_calc_hscale ================
[04:47:21] [PASSED] normal use
[04:47:21] [PASSED] out of max range
[04:47:21] [PASSED] out of min range
[04:47:21] [PASSED] zero dst
[04:47:22] [PASSED] negative src
[04:47:22] [PASSED] negative dst
[04:47:22] ============ [PASSED] drm_test_rect_calc_hscale ============
[04:47:22] ================ drm_test_rect_calc_vscale ================
[04:47:22] [PASSED] normal use
stty: 'standard input': Inappropriate ioctl for device
[04:47:22] [PASSED] out of max range
[04:47:22] [PASSED] out of min range
[04:47:22] [PASSED] zero dst
[04:47:22] [PASSED] negative src
[04:47:22] [PASSED] negative dst
[04:47:22] ============ [PASSED] drm_test_rect_calc_vscale ============
[04:47:22] ================== drm_test_rect_rotate ===================
[04:47:22] [PASSED] reflect-x
[04:47:22] [PASSED] reflect-y
[04:47:22] [PASSED] rotate-0
[04:47:22] [PASSED] rotate-90
[04:47:22] [PASSED] rotate-180
[04:47:22] [PASSED] rotate-270
[04:47:22] ============== [PASSED] drm_test_rect_rotate ===============
[04:47:22] ================ drm_test_rect_rotate_inv =================
[04:47:22] [PASSED] reflect-x
[04:47:22] [PASSED] reflect-y
[04:47:22] [PASSED] rotate-0
[04:47:22] [PASSED] rotate-90
[04:47:22] [PASSED] rotate-180
[04:47:22] [PASSED] rotate-270
[04:47:22] ============ [PASSED] drm_test_rect_rotate_inv =============
[04:47:22] ==================== [PASSED] drm_rect =====================
[04:47:22] ============ drm_sysfb_modeset_test (1 subtest) ============
[04:47:22] ============ drm_test_sysfb_build_fourcc_list =============
[04:47:22] [PASSED] no native formats
[04:47:22] [PASSED] XRGB8888 as native format
[04:47:22] [PASSED] remove duplicates
[04:47:22] [PASSED] convert alpha formats
[04:47:22] [PASSED] random formats
[04:47:22] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[04:47:22] ============= [PASSED] drm_sysfb_modeset_test ==============
[04:47:22] ================== drm_fixp (2 subtests) ===================
[04:47:22] [PASSED] drm_test_int2fixp
[04:47:22] [PASSED] drm_test_sm2fixp
[04:47:22] ==================== [PASSED] drm_fixp =====================
[04:47:22] ============================================================
[04:47:22] Testing complete. Ran 624 tests: passed: 624
[04:47:22] Elapsed time: 27.399s total, 1.712s configuring, 25.315s building, 0.370s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[04:47:22] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[04:47:23] 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
[04:47:33] Starting KUnit Kernel (1/1)...
[04:47:33] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[04:47:33] ================= ttm_device (5 subtests) ==================
[04:47:33] [PASSED] ttm_device_init_basic
[04:47:33] [PASSED] ttm_device_init_multiple
[04:47:33] [PASSED] ttm_device_fini_basic
[04:47:33] [PASSED] ttm_device_init_no_vma_man
[04:47:33] ================== ttm_device_init_pools ==================
[04:47:33] [PASSED] No DMA allocations, no DMA32 required
[04:47:33] [PASSED] DMA allocations, DMA32 required
[04:47:33] [PASSED] No DMA allocations, DMA32 required
[04:47:33] [PASSED] DMA allocations, no DMA32 required
[04:47:33] ============== [PASSED] ttm_device_init_pools ==============
[04:47:33] =================== [PASSED] ttm_device ====================
[04:47:33] ================== ttm_pool (8 subtests) ===================
[04:47:33] ================== ttm_pool_alloc_basic ===================
[04:47:33] [PASSED] One page
[04:47:33] [PASSED] More than one page
[04:47:33] [PASSED] Above the allocation limit
[04:47:33] [PASSED] One page, with coherent DMA mappings enabled
[04:47:33] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[04:47:33] ============== [PASSED] ttm_pool_alloc_basic ===============
[04:47:33] ============== ttm_pool_alloc_basic_dma_addr ==============
[04:47:33] [PASSED] One page
[04:47:33] [PASSED] More than one page
[04:47:33] [PASSED] Above the allocation limit
[04:47:33] [PASSED] One page, with coherent DMA mappings enabled
[04:47:33] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[04:47:33] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[04:47:33] [PASSED] ttm_pool_alloc_order_caching_match
[04:47:33] [PASSED] ttm_pool_alloc_caching_mismatch
[04:47:33] [PASSED] ttm_pool_alloc_order_mismatch
[04:47:33] [PASSED] ttm_pool_free_dma_alloc
[04:47:33] [PASSED] ttm_pool_free_no_dma_alloc
[04:47:33] [PASSED] ttm_pool_fini_basic
[04:47:33] ==================== [PASSED] ttm_pool =====================
[04:47:33] ================ ttm_resource (8 subtests) =================
[04:47:33] ================= ttm_resource_init_basic =================
[04:47:33] [PASSED] Init resource in TTM_PL_SYSTEM
[04:47:33] [PASSED] Init resource in TTM_PL_VRAM
[04:47:33] [PASSED] Init resource in a private placement
[04:47:33] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[04:47:33] ============= [PASSED] ttm_resource_init_basic =============
[04:47:33] [PASSED] ttm_resource_init_pinned
[04:47:33] [PASSED] ttm_resource_fini_basic
[04:47:33] [PASSED] ttm_resource_manager_init_basic
[04:47:33] [PASSED] ttm_resource_manager_usage_basic
[04:47:33] [PASSED] ttm_resource_manager_set_used_basic
[04:47:33] [PASSED] ttm_sys_man_alloc_basic
[04:47:33] [PASSED] ttm_sys_man_free_basic
[04:47:33] ================== [PASSED] ttm_resource ===================
[04:47:33] =================== ttm_tt (15 subtests) ===================
[04:47:33] ==================== ttm_tt_init_basic ====================
[04:47:33] [PASSED] Page-aligned size
[04:47:33] [PASSED] Extra pages requested
[04:47:33] ================ [PASSED] ttm_tt_init_basic ================
[04:47:33] [PASSED] ttm_tt_init_misaligned
[04:47:33] [PASSED] ttm_tt_fini_basic
[04:47:33] [PASSED] ttm_tt_fini_sg
[04:47:33] [PASSED] ttm_tt_fini_shmem
[04:47:33] [PASSED] ttm_tt_create_basic
[04:47:33] [PASSED] ttm_tt_create_invalid_bo_type
[04:47:33] [PASSED] ttm_tt_create_ttm_exists
[04:47:33] [PASSED] ttm_tt_create_failed
[04:47:33] [PASSED] ttm_tt_destroy_basic
[04:47:33] [PASSED] ttm_tt_populate_null_ttm
[04:47:33] [PASSED] ttm_tt_populate_populated_ttm
[04:47:33] [PASSED] ttm_tt_unpopulate_basic
[04:47:33] [PASSED] ttm_tt_unpopulate_empty_ttm
[04:47:33] [PASSED] ttm_tt_swapin_basic
[04:47:33] ===================== [PASSED] ttm_tt ======================
[04:47:33] =================== ttm_bo (14 subtests) ===================
[04:47:33] =========== ttm_bo_reserve_optimistic_no_ticket ===========
[04:47:33] [PASSED] Cannot be interrupted and sleeps
[04:47:33] [PASSED] Cannot be interrupted, locks straight away
[04:47:33] [PASSED] Can be interrupted, sleeps
[04:47:33] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[04:47:33] [PASSED] ttm_bo_reserve_locked_no_sleep
[04:47:33] [PASSED] ttm_bo_reserve_no_wait_ticket
[04:47:33] [PASSED] ttm_bo_reserve_double_resv
[04:47:33] [PASSED] ttm_bo_reserve_interrupted
[04:47:33] [PASSED] ttm_bo_reserve_deadlock
[04:47:33] [PASSED] ttm_bo_unreserve_basic
[04:47:33] [PASSED] ttm_bo_unreserve_pinned
[04:47:33] [PASSED] ttm_bo_unreserve_bulk
[04:47:33] [PASSED] ttm_bo_fini_basic
[04:47:33] [PASSED] ttm_bo_fini_shared_resv
[04:47:33] [PASSED] ttm_bo_pin_basic
[04:47:33] [PASSED] ttm_bo_pin_unpin_resource
[04:47:33] [PASSED] ttm_bo_multiple_pin_one_unpin
[04:47:33] ===================== [PASSED] ttm_bo ======================
[04:47:33] ============== ttm_bo_validate (21 subtests) ===============
[04:47:33] ============== ttm_bo_init_reserved_sys_man ===============
[04:47:33] [PASSED] Buffer object for userspace
[04:47:33] [PASSED] Kernel buffer object
[04:47:33] [PASSED] Shared buffer object
[04:47:33] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[04:47:33] ============== ttm_bo_init_reserved_mock_man ==============
[04:47:33] [PASSED] Buffer object for userspace
[04:47:33] [PASSED] Kernel buffer object
[04:47:33] [PASSED] Shared buffer object
[04:47:33] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[04:47:33] [PASSED] ttm_bo_init_reserved_resv
[04:47:33] ================== ttm_bo_validate_basic ==================
[04:47:33] [PASSED] Buffer object for userspace
[04:47:33] [PASSED] Kernel buffer object
[04:47:33] [PASSED] Shared buffer object
[04:47:33] ============== [PASSED] ttm_bo_validate_basic ==============
[04:47:33] [PASSED] ttm_bo_validate_invalid_placement
[04:47:33] ============= ttm_bo_validate_same_placement ==============
[04:47:33] [PASSED] System manager
[04:47:33] [PASSED] VRAM manager
[04:47:33] ========= [PASSED] ttm_bo_validate_same_placement ==========
[04:47:33] [PASSED] ttm_bo_validate_failed_alloc
[04:47:33] [PASSED] ttm_bo_validate_pinned
[04:47:33] [PASSED] ttm_bo_validate_busy_placement
[04:47:33] ================ ttm_bo_validate_multihop =================
[04:47:33] [PASSED] Buffer object for userspace
[04:47:33] [PASSED] Kernel buffer object
[04:47:33] [PASSED] Shared buffer object
[04:47:33] ============ [PASSED] ttm_bo_validate_multihop =============
[04:47:33] ========== ttm_bo_validate_no_placement_signaled ==========
[04:47:33] [PASSED] Buffer object in system domain, no page vector
[04:47:33] [PASSED] Buffer object in system domain with an existing page vector
[04:47:33] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[04:47:33] ======== ttm_bo_validate_no_placement_not_signaled ========
[04:47:33] [PASSED] Buffer object for userspace
[04:47:33] [PASSED] Kernel buffer object
[04:47:33] [PASSED] Shared buffer object
[04:47:33] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[04:47:33] [PASSED] ttm_bo_validate_move_fence_signaled
[04:47:33] ========= ttm_bo_validate_move_fence_not_signaled =========
[04:47:33] [PASSED] Waits for GPU
[04:47:33] [PASSED] Tries to lock straight away
[04:47:33] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[04:47:33] [PASSED] ttm_bo_validate_happy_evict
[04:47:33] [PASSED] ttm_bo_validate_all_pinned_evict
[04:47:33] [PASSED] ttm_bo_validate_allowed_only_evict
[04:47:33] [PASSED] ttm_bo_validate_deleted_evict
[04:47:33] [PASSED] ttm_bo_validate_busy_domain_evict
[04:47:33] [PASSED] ttm_bo_validate_evict_gutting
[04:47:33] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[04:47:33] ================= [PASSED] ttm_bo_validate =================
[04:47:33] ============================================================
[04:47:33] Testing complete. Ran 101 tests: passed: 101
[04:47:33] Elapsed time: 11.423s total, 1.662s configuring, 9.545s building, 0.185s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 22+ messages in thread
* ✗ CI.checksparse: warning for User readable error codes on atomic_ioctl failure (rev6)
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (6 preceding siblings ...)
2026-01-06 4:47 ` ✓ CI.KUnit: success " Patchwork
@ 2026-01-06 5:03 ` Patchwork
2026-01-06 5:34 ` ✓ Xe.CI.BAT: success " Patchwork
2026-01-06 7:12 ` ✗ Xe.CI.Full: failure " Patchwork
9 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2026-01-06 5:03 UTC (permalink / raw)
To: Arun R Murthy; +Cc: intel-xe
== Series Details ==
Series: User readable error codes on atomic_ioctl failure (rev6)
URL : https://patchwork.freedesktop.org/series/152277/
State : warning
== Summary ==
+ trap cleanup EXIT
+ KERNEL=/kernel
+ MT=/root/linux/maintainer-tools
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools /root/linux/maintainer-tools
Cloning into '/root/linux/maintainer-tools'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ make -C /root/linux/maintainer-tools
make: Entering directory '/root/linux/maintainer-tools'
cc -O2 -g -Wextra -o remap-log remap-log.c
make: Leaving directory '/root/linux/maintainer-tools'
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ /root/linux/maintainer-tools/dim sparse --fast b3845fe8af5ec5c1d4b26e40ac6b4c7370e5fa35
Sparse version: 0.6.4 (Ubuntu: 0.6.4-4ubuntu3)
Fast mode used, each commit won't be checked separately.
+drivers/gpu/drm/display/drm_dp_helper.c:1979:1: error: bad constant expression
+drivers/gpu/drm/display/drm_dp_helper.c:1980:1: error: bad constant expression
+drivers/gpu/drm/display/drm_dp_helper.c:2144:1: error: bad constant expression
+drivers/gpu/drm/display/drm_dp_helper.c:2145:1: error: bad constant expression
+drivers/gpu/drm/drm_bridge.c:1643:1: error: bad constant expression
+drivers/gpu/drm/drm_bridge.c:1644:1: error: bad constant expression
+drivers/gpu/drm/drm_bridge.c:1645:1: error: bad constant expression
+drivers/gpu/drm/drm_bridge.c:1645:1: error: bad constant expression
+drivers/gpu/drm/drm_buddy.c:1325:1: error: bad constant expression
+drivers/gpu/drm/drm_buddy.c:1326:1: error: bad constant expression
+drivers/gpu/drm/drm_buddy.c:1326:1: error: bad constant expression
+drivers/gpu/drm/drm_drv.c:60:1: error: bad constant expression
+drivers/gpu/drm/drm_drv.c:61:1: error: bad constant expression
+drivers/gpu/drm/drm_drv.c:62:1: error: bad constant expression
+drivers/gpu/drm/drm_drv.c:62:1: error: bad constant expression
+drivers/gpu/drm/drm_edid.c:1800:1: error: bad constant expression
+drivers/gpu/drm/drm_edid.c:1801:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_framebuffer_helper.c:23:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_shmem_helper.c:28:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_shmem_helper.c:967:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_shmem_helper.c:968:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_shmem_helper.c:969:1: error: bad constant expression
+drivers/gpu/drm/drm_gem_shmem_helper.c:969:1: error: bad constant expression
+drivers/gpu/drm/drm_mipi_dsi.c:2051:1: error: bad constant expression
+drivers/gpu/drm/drm_mipi_dsi.c:2052:1: error: bad constant expression
+drivers/gpu/drm/drm_mipi_dsi.c:2053:1: error: bad constant expression
+drivers/gpu/drm/drm_mipi_dsi.c:2053:1: error: bad constant expression
+drivers/gpu/drm/drm_panel.c:733:1: error: bad constant expression
+drivers/gpu/drm/drm_panel.c:734:1: error: bad constant expression
+drivers/gpu/drm/drm_panel.c:735:1: error: bad constant expression
+drivers/gpu/drm/drm_panel.c:735:1: error: bad constant expression
+drivers/gpu/drm/drm_panel_orientation_quirks.c:601:1: error: bad constant expression
+drivers/gpu/drm/drm_panel_orientation_quirks.c:602:1: error: bad constant expression
+drivers/gpu/drm/drm_panel_orientation_quirks.c:602:1: error: bad constant expression
+drivers/gpu/drm/drm_prime.c:44:1: error: bad constant expression
+drivers/gpu/drm/drm_print.c:46:1: error: bad constant expression
+drivers/gpu/drm/drm_print.c:57:1: error: bad constant expression
+drivers/gpu/drm/drm_probe_helper.c:68:1: error: bad constant expression
+drivers/gpu/drm/drm_simple_kms_helper.c:457:1: error: bad constant expression
+drivers/gpu/drm/drm_simple_kms_helper.c:458:1: error: bad constant expression
+drivers/gpu/drm/drm_simple_kms_helper.c:458:1: error: bad constant expression
+drivers/gpu/drm/drm_vblank.c:173:1: error: bad constant expression
+drivers/gpu/drm/drm_vblank.c:174:1: error: bad constant expression
+drivers/gpu/drm/drm_vblank.c:175:1: error: bad constant expression
+drivers/gpu/drm/drm_vblank.c:176:1: error: bad constant expression
+drivers/gpu/drm/i915/display/dvo_ch7017.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/dvo_ch7xxx.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/dvo_ivch.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/dvo_ns2501.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/dvo_sil164.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/dvo_tfp410.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/g4x_dp.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/g4x_hdmi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/hsw_ips.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/i9xx_plane.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/i9xx_wm.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/icl_dsi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_dsi.h):
+drivers/gpu/drm/i915/display/intel_acpi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_alpm.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_atomic.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_audio.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_backlight.c: note: in included file:
+drivers/gpu/drm/i915/display/intel_bios.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_bw.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_casf.c:147:21: error: too long token expansion
+drivers/gpu/drm/i915/display/intel_casf.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_cdclk.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_color.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_colorop.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_color_pipeline.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_combo_phy.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_connector.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_crtc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_crt.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_crtc_state_dump.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_cursor.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_cx0_phy.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dbuf_bw.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_ddi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_debugfs.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_device.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_driver.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_irq.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_display_params.c:102:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:102:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:105:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:105:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:108:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:108:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:111:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:111:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:114:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:114:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:118:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:118:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:123:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:123:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:126:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:126:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:132:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:132:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:137:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:137:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:35:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:35:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:39:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:39:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:42:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:42:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:46:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:46:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:50:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:50:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:54:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:54:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:59:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:59:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:62:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:62:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:65:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:65:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:68:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:68:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:71:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:71:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:75:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:75:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:77:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:77:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:85:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:85:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:90:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:90:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:94:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:94:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:98:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_params.c:98:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_display_power.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_power_map.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_power_well.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_reset.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_display_rps.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dmc.c:131:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:134:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:137:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:140:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:143:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:146:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:149:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:153:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:154:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:157:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:160:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:163:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:166:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:170:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:174:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:178:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:182:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c:186:1: error: bad constant expression
+drivers/gpu/drm/i915/display/intel_dmc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_aux.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_hdcp.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dpio_phy.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_link_training.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dpll.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dpll_mgr.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_mst.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dpt.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dpt_common.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dp_test.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_drrs.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dsb.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dsi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_dsi.h):
+drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dsi_vbt.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_dvo.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_encoder.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_fb_bo.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_fbc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_fb.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_fb_pin.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_fdi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_fifo_underrun.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_flipq.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_frontbuffer.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_global_state.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_gmbus.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_hdcp.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_hdmi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_hotplug.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_hotplug_irq.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_initial_plane.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_link_bw.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_load_detect.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_lspcon.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_lt_phy.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_lvds.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_modeset_lock.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_modeset_setup.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_modeset_verify.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_opregion.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_overlay.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_panel.c: note: in included file:
+drivers/gpu/drm/i915/display/intel_pch_display.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_pch_refclk.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_pfit.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_pipe_crc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_plane.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_pmdemand.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/intel_pps.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_psr.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_quirks.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_sdvo.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_snps_hdmi_pll.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_snps_phy.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_sprite.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_sprite_uapi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_tc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_tv.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_vblank.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_vdsc.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_vga.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_vrr.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/intel_wm.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/skl_prefill.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/skl_scaler.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h, drivers/gpu/drm/i915/display/intel_display_trace.h):
+drivers/gpu/drm/i915/display/skl_universal_plane.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/skl_watermark.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/vlv_clock.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/vlv_dsi.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/vlv_dsi_pll.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/display/vlv_sideband.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c:18:1: error: bad constant expression
+drivers/gpu/drm/i915/gem/i915_gem_pages.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/gt/intel_reset.c:1569:12: warning: context imbalance in '_intel_gt_reset_lock' - different lock contexts for basic block
+drivers/gpu/drm/i915/gt/intel_sseu.c:600:17: error: too long token expansion
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:191:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:192:1: error: bad constant expression
+drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c:193:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_active.c:1062:16: warning: context imbalance in '__i915_active_fence_set' - different lock contexts for basic block
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: error: incompatible types in comparison expression (different address spaces):
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: error: incompatible types in comparison expression (different address spaces):
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: expected struct list_head const *list
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: got struct list_head [noderef] __rcu *pos
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: struct list_head *
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: struct list_head *
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: struct list_head [noderef] __rcu *
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: struct list_head [noderef] __rcu *
+drivers/gpu/drm/i915/i915_drm_client.c:92:9: warning: incorrect type in argument 1 (different address spaces)
+drivers/gpu/drm/i915/i915_gpu_error.c:692:3: warning: symbol 'guc_hw_reg_state' was not declared. Should it be static?
+drivers/gpu/drm/i915/i915_initial_plane.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/i915_irq.c:467:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:467:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:475:16: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:475:16: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:480:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:480:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:480:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:518:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:518:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:526:16: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:526:16: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:531:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:531:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:531:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:575:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:575:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:578:15: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:578:15: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:582:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:582:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:589:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:589:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:589:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_irq.c:589:9: warning: unreplaced symbol '<noident>'
+drivers/gpu/drm/i915/i915_mitigations.c:133:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_module.c:125:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_module.c:126:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_module.c:128:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_module.c:129:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_module.c:129:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_panic.c: note: in included file (through drivers/gpu/drm/i915/display/intel_display_types.h):
+drivers/gpu/drm/i915/i915_params.c:100:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:100:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:104:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:104:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:107:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:107:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:110:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:110:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:119:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:119:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:123:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:123:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:125:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:125:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:66:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:66:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:69:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:69:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:73:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:73:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:79:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:79:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:84:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:84:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:88:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:88:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:91:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:91:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:95:1: error: bad constant expression
+drivers/gpu/drm/i915/i915_params.c:95:1: error: bad constant expression
+drivers/gpu/drm/i915/intel_uncore.c:1930:1: warning: context imbalance in 'fwtable_read8' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:1931:1: warning: context imbalance in 'fwtable_read16' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:1932:1: warning: context imbalance in 'fwtable_read32' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:1933:1: warning: context imbalance in 'fwtable_read64' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:1998:1: warning: context imbalance in 'gen6_write8' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:1999:1: warning: context imbalance in 'gen6_write16' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:2000:1: warning: context imbalance in 'gen6_write32' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:2020:1: warning: context imbalance in 'fwtable_write8' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:2021:1: warning: context imbalance in 'fwtable_write16' - unexpected unlock
+drivers/gpu/drm/i915/intel_uncore.c:2022:1: warning: context imbalance in 'fwtable_write32' - unexpected unlock
+drivers/gpu/drm/i915/intel_wakeref.c:148:19: warning: context imbalance in 'wakeref_auto_timeout' - unexpected unlock
+drivers/gpu/drm/ttm/ttm_bo.c:1203:31: warning: symbol 'ttm_swap_ops' was not declared. Should it be static?
+drivers/gpu/drm/ttm/ttm_tt.c:54:1: error: bad constant expression
+drivers/gpu/drm/ttm/ttm_tt.c:55:1: error: bad constant expression
+drivers/gpu/drm/ttm/ttm_tt.c:59:1: error: bad constant expression
+drivers/gpu/drm/ttm/ttm_tt.c:60:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:217:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:218:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:218:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:219:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:220:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:221:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:52:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_drv.c:53:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_object.c:34:1: error: bad constant expression
+drivers/gpu/drm/virtio/virtgpu_prime.c:30:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+./include/linux/pwm.h:13:1: error: bad constant expression
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 22+ messages in thread
* ✓ Xe.CI.BAT: success for User readable error codes on atomic_ioctl failure (rev6)
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (7 preceding siblings ...)
2026-01-06 5:03 ` ✗ CI.checksparse: warning " Patchwork
@ 2026-01-06 5:34 ` Patchwork
2026-01-06 7:12 ` ✗ Xe.CI.Full: failure " Patchwork
9 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2026-01-06 5:34 UTC (permalink / raw)
To: Arun R Murthy; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 1563 bytes --]
== Series Details ==
Series: User readable error codes on atomic_ioctl failure (rev6)
URL : https://patchwork.freedesktop.org/series/152277/
State : success
== Summary ==
CI Bug Log - changes from xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04_BAT -> xe-pw-152277v6_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (12 -> 11)
------------------------------
Missing (1): bat-ptl-1
Known issues
------------
Here are the changes found in xe-pw-152277v6_BAT that come from known issues:
### IGT changes ###
#### Warnings ####
* igt@xe_module_load@load:
- bat-bmg-1: [ABORT][1] ([Intel XE#6922] / [Intel XE#6930]) -> [ABORT][2] ([Intel XE#6922])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/bat-bmg-1/igt@xe_module_load@load.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/bat-bmg-1/igt@xe_module_load@load.html
[Intel XE#6922]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6922
[Intel XE#6930]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6930
Build changes
-------------
* IGT: IGT_8684 -> IGT_8685
* Linux: xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04 -> xe-pw-152277v6
IGT_8684: 8684
IGT_8685: 8685
xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04: 9081abc2c80b75a0c38ba2880f867904acd13a04
xe-pw-152277v6: 152277v6
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/index.html
[-- Attachment #2: Type: text/html, Size: 2204 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* ✗ Xe.CI.Full: failure for User readable error codes on atomic_ioctl failure (rev6)
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
` (8 preceding siblings ...)
2026-01-06 5:34 ` ✓ Xe.CI.BAT: success " Patchwork
@ 2026-01-06 7:12 ` Patchwork
9 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2026-01-06 7:12 UTC (permalink / raw)
To: Arun R Murthy; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 45309 bytes --]
== Series Details ==
Series: User readable error codes on atomic_ioctl failure (rev6)
URL : https://patchwork.freedesktop.org/series/152277/
State : failure
== Summary ==
CI Bug Log - changes from xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04_FULL -> xe-pw-152277v6_FULL
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with xe-pw-152277v6_FULL absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in xe-pw-152277v6_FULL, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (2 -> 2)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in xe-pw-152277v6_FULL:
### IGT changes ###
#### Possible regressions ####
* igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-hdmi-a-3:
- shard-bmg: [PASS][1] -> [FAIL][2] +13 other tests fail
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-bmg-1/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-hdmi-a-3.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-b-hdmi-a-3.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
- shard-bmg: NOTRUN -> [FAIL][3] +6 other tests fail
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
* igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1:
- shard-lnl: [PASS][4] -> [FAIL][5] +5 other tests fail
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-7/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html
Known issues
------------
Here are the changes found in xe-pw-152277v6_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_big_fb@4-tiled-64bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][6] ([Intel XE#2327]) +4 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
- shard-lnl: NOTRUN -> [SKIP][7] ([Intel XE#3658])
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@linear-32bpp-rotate-90:
- shard-lnl: NOTRUN -> [SKIP][8] ([Intel XE#1407]) +1 other test skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_big_fb@linear-32bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-bmg: NOTRUN -> [SKIP][9] ([Intel XE#1124]) +14 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@yf-tiled-addfb:
- shard-lnl: NOTRUN -> [SKIP][10] ([Intel XE#1467])
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_big_fb@yf-tiled-addfb.html
* igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
- shard-bmg: NOTRUN -> [SKIP][11] ([Intel XE#607])
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-lnl: NOTRUN -> [SKIP][12] ([Intel XE#1124]) +2 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p:
- shard-lnl: NOTRUN -> [SKIP][13] ([Intel XE#2191]) +1 other test skip
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p.html
* igt@kms_bw@connected-linear-tiling-3-displays-3840x2160p:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#2314] / [Intel XE#2894]) +3 other tests skip
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_bw@connected-linear-tiling-3-displays-3840x2160p.html
* igt@kms_bw@linear-tiling-1-displays-2160x1440p:
- shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#367]) +4 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@kms_bw@linear-tiling-1-displays-2160x1440p.html
* igt@kms_ccs@bad-aux-stride-yf-tiled-ccs:
- shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#2887]) +29 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_ccs@bad-aux-stride-yf-tiled-ccs.html
* igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc:
- shard-lnl: NOTRUN -> [SKIP][17] ([Intel XE#2887]) +5 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-bmg: [PASS][18] -> [INCOMPLETE][19] ([Intel XE#3862]) +1 other test incomplete
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-bmg-9/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-a-edp-1:
- shard-lnl: NOTRUN -> [SKIP][20] ([Intel XE#2669] / [Intel XE#3433]) +3 other tests skip
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-a-edp-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs:
- shard-lnl: NOTRUN -> [SKIP][21] ([Intel XE#3432])
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][22] ([Intel XE#3432]) +5 other tests skip
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-bmg: NOTRUN -> [SKIP][23] ([Intel XE#2724])
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_color@ctm-0-25:
- shard-bmg: NOTRUN -> [SKIP][24] ([Intel XE#2325]) +2 other tests skip
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_chamelium_color@ctm-0-25.html
* igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode:
- shard-bmg: NOTRUN -> [SKIP][25] ([Intel XE#2252]) +13 other tests skip
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode.html
* igt@kms_chamelium_hpd@hdmi-hpd:
- shard-lnl: NOTRUN -> [SKIP][26] ([Intel XE#373]) +5 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-3/igt@kms_chamelium_hpd@hdmi-hpd.html
* igt@kms_chamelium_sharpness_filter@filter-basic:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#6507])
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_chamelium_sharpness_filter@filter-basic.html
* igt@kms_content_protection@atomic:
- shard-bmg: NOTRUN -> [FAIL][28] ([Intel XE#1178]) +5 other tests fail
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_content_protection@atomic.html
- shard-lnl: NOTRUN -> [SKIP][29] ([Intel XE#3278])
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-bmg: NOTRUN -> [SKIP][30] ([Intel XE#2390])
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@mei-interface:
- shard-bmg: NOTRUN -> [SKIP][31] ([Intel XE#2341])
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_content_protection@mei-interface.html
* igt@kms_cursor_crc@cursor-offscreen-128x42:
- shard-bmg: NOTRUN -> [SKIP][32] ([Intel XE#2320]) +7 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_cursor_crc@cursor-offscreen-128x42.html
* igt@kms_cursor_crc@cursor-onscreen-512x170:
- shard-bmg: NOTRUN -> [SKIP][33] ([Intel XE#2321]) +3 other tests skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_cursor_crc@cursor-onscreen-512x170.html
* igt@kms_cursor_crc@cursor-rapid-movement-max-size:
- shard-lnl: NOTRUN -> [SKIP][34] ([Intel XE#1424]) +1 other test skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html
* igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy:
- shard-lnl: NOTRUN -> [SKIP][35] ([Intel XE#309]) +1 other test skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-7/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-bmg: NOTRUN -> [SKIP][36] ([Intel XE#2286])
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
- shard-bmg: NOTRUN -> [SKIP][37] ([Intel XE#4210])
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-3:
- shard-bmg: NOTRUN -> [SKIP][38] ([Intel XE#1340])
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-3.html
* igt@kms_dp_link_training@uhbr-sst:
- shard-bmg: NOTRUN -> [SKIP][39] ([Intel XE#4354]) +1 other test skip
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@kms_dp_link_training@uhbr-sst.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#2244]) +2 other tests skip
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_fb_coherency@memset-crc:
- shard-bmg: NOTRUN -> [CRASH][41] ([Intel XE#6706]) +1 other test crash
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_fb_coherency@memset-crc.html
* igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
- shard-bmg: NOTRUN -> [SKIP][42] ([Intel XE#4422]) +2 other tests skip
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html
* igt@kms_fbcon_fbt@psr-suspend:
- shard-bmg: NOTRUN -> [SKIP][43] ([Intel XE#776])
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_fbcon_fbt@psr-suspend.html
* igt@kms_feature_discovery@dp-mst:
- shard-lnl: NOTRUN -> [SKIP][44] ([Intel XE#1137])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_feature_discovery@dp-mst.html
* igt@kms_feature_discovery@psr1:
- shard-bmg: NOTRUN -> [SKIP][45] ([Intel XE#2374])
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-flip-vs-dpms:
- shard-lnl: NOTRUN -> [SKIP][46] ([Intel XE#1421]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_flip@2x-flip-vs-dpms.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:
- shard-lnl: [PASS][47] -> [FAIL][48] ([Intel XE#301]) +2 other tests fail
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-5/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@c-edp1:
- shard-lnl: [PASS][49] -> [FAIL][50] ([Intel XE#301] / [Intel XE#3149]) +1 other test fail
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling:
- shard-lnl: NOTRUN -> [SKIP][51] ([Intel XE#1401] / [Intel XE#1745]) +1 other test skip
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-default-mode:
- shard-lnl: NOTRUN -> [SKIP][52] ([Intel XE#1401]) +1 other test skip
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling:
- shard-bmg: NOTRUN -> [SKIP][53] ([Intel XE#2293] / [Intel XE#2380]) +3 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode:
- shard-bmg: NOTRUN -> [SKIP][54] ([Intel XE#2293]) +3 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#4141]) +27 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][56] ([Intel XE#2352])
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_frontbuffer_tracking@fbc-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][57] ([Intel XE#2311]) +57 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcdrrs-modesetfrombusy:
- shard-lnl: NOTRUN -> [SKIP][58] ([Intel XE#651]) +4 other tests skip
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-3/igt@kms_frontbuffer_tracking@fbcdrrs-modesetfrombusy.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][59] ([Intel XE#2313]) +54 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-blt.html
* igt@kms_frontbuffer_tracking@plane-fbc-rte:
- shard-bmg: NOTRUN -> [SKIP][60] ([Intel XE#2350])
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_frontbuffer_tracking@plane-fbc-rte.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt:
- shard-lnl: NOTRUN -> [SKIP][61] ([Intel XE#656]) +13 other tests skip
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-5/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt.html
* igt@kms_hdr@static-swap:
- shard-bmg: NOTRUN -> [ABORT][62] ([Intel XE#6740]) +1 other test abort
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_hdr@static-swap.html
* igt@kms_joiner@invalid-modeset-force-ultra-joiner:
- shard-bmg: NOTRUN -> [SKIP][63] ([Intel XE#6911]) +1 other test skip
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-lnl: NOTRUN -> [SKIP][64] ([Intel XE#356])
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-bmg: NOTRUN -> [SKIP][65] ([Intel XE#2486])
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_pipe_stress@stress-xrgb8888-yftiled:
- shard-bmg: NOTRUN -> [SKIP][66] ([Intel XE#6912])
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html
- shard-lnl: NOTRUN -> [SKIP][67] ([Intel XE#6912])
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html
* igt@kms_pipe_stress@stress-xrgb8888-ytiled:
- shard-lnl: NOTRUN -> [SKIP][68] ([Intel XE#4329] / [Intel XE#6912])
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
* igt@kms_plane_multiple@2x-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][69] ([Intel XE#5021])
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@kms_plane_multiple@2x-tiling-y.html
* igt@kms_plane_multiple@tiling-y:
- shard-bmg: NOTRUN -> [SKIP][70] ([Intel XE#5020])
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_plane_multiple@tiling-y.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5:
- shard-bmg: NOTRUN -> [SKIP][71] ([Intel XE#6886]) +4 other tests skip
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-bmg: NOTRUN -> [SKIP][72] ([Intel XE#870])
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_dc@dc3co-vpb-simulation:
- shard-bmg: NOTRUN -> [SKIP][73] ([Intel XE#2391])
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pm_dc@dc5-psr:
- shard-lnl: [PASS][74] -> [FAIL][75] ([Intel XE#718]) +1 other test fail
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-5/igt@kms_pm_dc@dc5-psr.html
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-3/igt@kms_pm_dc@dc5-psr.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-bmg: NOTRUN -> [SKIP][76] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#836]) +1 other test skip
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf:
- shard-lnl: NOTRUN -> [SKIP][77] ([Intel XE#1406] / [Intel XE#2893])
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area:
- shard-lnl: NOTRUN -> [SKIP][78] ([Intel XE#1406] / [Intel XE#2893] / [Intel XE#4608])
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-a-edp-1:
- shard-lnl: NOTRUN -> [SKIP][79] ([Intel XE#1406] / [Intel XE#4608]) +1 other test skip
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-a-edp-1.html
* igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf:
- shard-bmg: NOTRUN -> [SKIP][80] ([Intel XE#1406] / [Intel XE#1489]) +13 other tests skip
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-bmg: NOTRUN -> [SKIP][81] ([Intel XE#1406] / [Intel XE#2387]) +1 other test skip
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@fbc-psr2-dpms:
- shard-lnl: NOTRUN -> [SKIP][82] ([Intel XE#1406])
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_psr@fbc-psr2-dpms.html
* igt@kms_psr@fbc-psr2-dpms@edp-1:
- shard-lnl: NOTRUN -> [SKIP][83] ([Intel XE#1406] / [Intel XE#4609])
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_psr@fbc-psr2-dpms@edp-1.html
* igt@kms_psr@psr-primary-page-flip:
- shard-bmg: NOTRUN -> [SKIP][84] ([Intel XE#1406] / [Intel XE#2234] / [Intel XE#2850]) +21 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@kms_psr@psr-primary-page-flip.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-bmg: NOTRUN -> [SKIP][85] ([Intel XE#1406] / [Intel XE#2414])
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
- shard-bmg: NOTRUN -> [SKIP][86] ([Intel XE#3414] / [Intel XE#3904]) +2 other tests skip
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
* igt@kms_setmode@basic@pipe-b-edp-1:
- shard-lnl: [PASS][87] -> [FAIL][88] ([Intel XE#6361]) +2 other tests fail
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-7/igt@kms_setmode@basic@pipe-b-edp-1.html
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_setmode@basic@pipe-b-edp-1.html
* igt@kms_setmode@invalid-clone-single-crtc:
- shard-lnl: NOTRUN -> [SKIP][89] ([Intel XE#1435])
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@kms_setmode@invalid-clone-single-crtc.html
* igt@kms_sharpness_filter@invalid-filter-with-scaling-mode:
- shard-bmg: NOTRUN -> [SKIP][90] ([Intel XE#6503]) +4 other tests skip
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@kms_sharpness_filter@invalid-filter-with-scaling-mode.html
* igt@kms_tv_load_detect@load-detect:
- shard-bmg: NOTRUN -> [SKIP][91] ([Intel XE#2450])
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@kms_tv_load_detect@load-detect.html
* igt@kms_vrr@flip-suspend:
- shard-bmg: NOTRUN -> [SKIP][92] ([Intel XE#1499]) +3 other tests skip
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@kms_vrr@flip-suspend.html
* igt@xe_compute@eu-busy-10s:
- shard-bmg: NOTRUN -> [SKIP][93] ([Intel XE#6599])
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@xe_compute@eu-busy-10s.html
* igt@xe_create@multigpu-create-massive-size:
- shard-bmg: NOTRUN -> [SKIP][94] ([Intel XE#2504])
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@xe_create@multigpu-create-massive-size.html
* igt@xe_eudebug@basic-close:
- shard-lnl: NOTRUN -> [SKIP][95] ([Intel XE#4837]) +3 other tests skip
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@xe_eudebug@basic-close.html
* igt@xe_eudebug@vma-ufence:
- shard-bmg: NOTRUN -> [SKIP][96] ([Intel XE#4837]) +10 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@xe_eudebug@vma-ufence.html
* igt@xe_eudebug_online@breakpoint-many-sessions-single-tile:
- shard-bmg: NOTRUN -> [SKIP][97] ([Intel XE#4837] / [Intel XE#6665]) +7 other tests skip
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@xe_eudebug_online@breakpoint-many-sessions-single-tile.html
* igt@xe_eudebug_online@pagefault-write-stress:
- shard-bmg: NOTRUN -> [SKIP][98] ([Intel XE#6665] / [Intel XE#6681])
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@xe_eudebug_online@pagefault-write-stress.html
* igt@xe_eudebug_online@resume-one:
- shard-lnl: NOTRUN -> [SKIP][99] ([Intel XE#4837] / [Intel XE#6665]) +2 other tests skip
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@xe_eudebug_online@resume-one.html
* igt@xe_eudebug_sriov@deny-eudebug:
- shard-bmg: NOTRUN -> [SKIP][100] ([Intel XE#5793])
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@xe_eudebug_sriov@deny-eudebug.html
* igt@xe_evict@evict-mixed-many-threads-small:
- shard-bmg: NOTRUN -> [INCOMPLETE][101] ([Intel XE#6321])
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@xe_evict@evict-mixed-many-threads-small.html
* igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd:
- shard-lnl: NOTRUN -> [SKIP][102] ([Intel XE#688]) +2 other tests skip
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-3/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html
* igt@xe_exec_basic@multigpu-no-exec-basic-defer-bind:
- shard-lnl: NOTRUN -> [SKIP][103] ([Intel XE#1392]) +2 other tests skip
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@xe_exec_basic@multigpu-no-exec-basic-defer-bind.html
* igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][104] ([Intel XE#2322]) +10 other tests skip
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_multi_queue@few-execs-close-fd:
- shard-lnl: NOTRUN -> [SKIP][105] ([Intel XE#6874]) +10 other tests skip
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@xe_exec_multi_queue@few-execs-close-fd.html
* igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][106] ([Intel XE#6874]) +58 other tests skip
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate.html
* igt@xe_exec_system_allocator@many-64k-mmap-huge-nomemset:
- shard-lnl: NOTRUN -> [SKIP][107] ([Intel XE#5007])
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@xe_exec_system_allocator@many-64k-mmap-huge-nomemset.html
* igt@xe_exec_system_allocator@many-64k-mmap-new-huge:
- shard-bmg: NOTRUN -> [SKIP][108] ([Intel XE#5007]) +1 other test skip
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-3/igt@xe_exec_system_allocator@many-64k-mmap-new-huge.html
* igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-comp-single-vma:
- shard-lnl: NOTRUN -> [SKIP][109] ([Intel XE#6196])
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-comp-single-vma.html
* igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma:
- shard-lnl: [PASS][110] -> [FAIL][111] ([Intel XE#5625])
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-1/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-7/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html
* igt@xe_exec_system_allocator@process-many-large-execqueues-mmap-new-huge:
- shard-bmg: NOTRUN -> [SKIP][112] ([Intel XE#4943]) +43 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@xe_exec_system_allocator@process-many-large-execqueues-mmap-new-huge.html
* igt@xe_exec_system_allocator@process-many-stride-mmap-huge:
- shard-lnl: NOTRUN -> [SKIP][113] ([Intel XE#4943]) +6 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@xe_exec_system_allocator@process-many-stride-mmap-huge.html
* igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
- shard-bmg: NOTRUN -> [ABORT][114] ([Intel XE#5466])
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-7/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
* igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit:
- shard-bmg: NOTRUN -> [SKIP][115] ([Intel XE#2229])
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-10/igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit.html
* igt@xe_live_ktest@xe_eudebug:
- shard-bmg: NOTRUN -> [SKIP][116] ([Intel XE#2833])
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_live_ktest@xe_eudebug.html
* igt@xe_media_fill@media-fill:
- shard-bmg: NOTRUN -> [SKIP][117] ([Intel XE#2459] / [Intel XE#2596])
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@xe_media_fill@media-fill.html
* igt@xe_mmap@pci-membarrier:
- shard-lnl: NOTRUN -> [SKIP][118] ([Intel XE#5100])
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-1/igt@xe_mmap@pci-membarrier.html
* igt@xe_mmap@small-bar:
- shard-bmg: NOTRUN -> [SKIP][119] ([Intel XE#586])
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_mmap@small-bar.html
* igt@xe_multigpu_svm@mgpu-atomic-op-basic:
- shard-bmg: NOTRUN -> [SKIP][120] ([Intel XE#6964]) +6 other tests skip
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@xe_multigpu_svm@mgpu-atomic-op-basic.html
* igt@xe_multigpu_svm@mgpu-concurrent-access-basic:
- shard-lnl: NOTRUN -> [SKIP][121] ([Intel XE#6964])
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-5/igt@xe_multigpu_svm@mgpu-concurrent-access-basic.html
* igt@xe_peer2peer@write:
- shard-bmg: NOTRUN -> [SKIP][122] ([Intel XE#2427] / [Intel XE#6953])
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_peer2peer@write.html
* igt@xe_pm@d3cold-i2c:
- shard-lnl: NOTRUN -> [SKIP][123] ([Intel XE#5694])
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@xe_pm@d3cold-i2c.html
* igt@xe_pm@s2idle-d3cold-basic-exec:
- shard-bmg: NOTRUN -> [SKIP][124] ([Intel XE#2284]) +2 other tests skip
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-2/igt@xe_pm@s2idle-d3cold-basic-exec.html
* igt@xe_pm@s3-mocs:
- shard-lnl: NOTRUN -> [SKIP][125] ([Intel XE#584])
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@xe_pm@s3-mocs.html
* igt@xe_pm@vram-d3cold-threshold:
- shard-lnl: NOTRUN -> [SKIP][126] ([Intel XE#579])
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-2/igt@xe_pm@vram-d3cold-threshold.html
* igt@xe_pmu@engine-activity-accuracy-90@engine-drm_xe_engine_class_video_decode0:
- shard-lnl: [PASS][127] -> [FAIL][128] ([Intel XE#6251]) +2 other tests fail
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-3/igt@xe_pmu@engine-activity-accuracy-90@engine-drm_xe_engine_class_video_decode0.html
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-4/igt@xe_pmu@engine-activity-accuracy-90@engine-drm_xe_engine_class_video_decode0.html
* igt@xe_pxp@pxp-stale-bo-exec-post-suspend:
- shard-bmg: NOTRUN -> [SKIP][129] ([Intel XE#4733]) +2 other tests skip
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-1/igt@xe_pxp@pxp-stale-bo-exec-post-suspend.html
* igt@xe_query@multigpu-query-config:
- shard-lnl: NOTRUN -> [SKIP][130] ([Intel XE#944])
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@xe_query@multigpu-query-config.html
* igt@xe_query@multigpu-query-invalid-cs-cycles:
- shard-bmg: NOTRUN -> [SKIP][131] ([Intel XE#944]) +4 other tests skip
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@xe_query@multigpu-query-invalid-cs-cycles.html
#### Possible fixes ####
* igt@kms_async_flips@async-flip-with-page-flip-events-linear:
- shard-lnl: [FAIL][132] ([Intel XE#5993]) -> [PASS][133] +3 other tests pass
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-3/igt@kms_async_flips@async-flip-with-page-flip-events-linear.html
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@kms_async_flips@async-flip-with-page-flip-events-linear.html
* igt@kms_cursor_legacy@cursora-vs-flipb-varying-size:
- shard-bmg: [DMESG-WARN][134] ([Intel XE#5354]) -> [PASS][135]
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-bmg-2/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-bmg-9/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html
* igt@xe_pmu@engine-activity-accuracy-50@engine-drm_xe_engine_class_video_decode0:
- shard-lnl: [FAIL][136] ([Intel XE#6251]) -> [PASS][137]
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04/shard-lnl-2/igt@xe_pmu@engine-activity-accuracy-50@engine-drm_xe_engine_class_video_decode0.html
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/shard-lnl-8/igt@xe_pmu@engine-activity-accuracy-50@engine-drm_xe_engine_class_video_decode0.html
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1137]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1137
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[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#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[Intel XE#1467]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1467
[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#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
[Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
[Intel XE#2229]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2229
[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#2286]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2286
[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#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
[Intel XE#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314
[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#2350]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2350
[Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
[Intel XE#2374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2374
[Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
[Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
[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#2414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2414
[Intel XE#2427]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2427
[Intel XE#2450]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2450
[Intel XE#2459]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2459
[Intel XE#2486]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2486
[Intel XE#2504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2504
[Intel XE#2596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2596
[Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669
[Intel XE#2724]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2724
[Intel XE#2833]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2833
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[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#2894]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2894
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
[Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
[Intel XE#3278]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3278
[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#3433]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3433
[Intel XE#356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/356
[Intel XE#3658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3658
[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#3862]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3862
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4210]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4210
[Intel XE#4329]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4329
[Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
[Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
[Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608
[Intel XE#4609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4609
[Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
[Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
[Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
[Intel XE#5007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5007
[Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
[Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021
[Intel XE#5100]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5100
[Intel XE#5354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5354
[Intel XE#5466]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5466
[Intel XE#5625]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5625
[Intel XE#5694]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5694
[Intel XE#579]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/579
[Intel XE#5793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5793
[Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
[Intel XE#586]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/586
[Intel XE#5993]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5993
[Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
[Intel XE#6196]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6196
[Intel XE#6251]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6251
[Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
[Intel XE#6361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6361
[Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
[Intel XE#6507]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6507
[Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
[Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
[Intel XE#6599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6599
[Intel XE#6665]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6665
[Intel XE#6681]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6681
[Intel XE#6706]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6706
[Intel XE#6740]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6740
[Intel XE#6874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6874
[Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886
[Intel XE#6911]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6911
[Intel XE#6912]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6912
[Intel XE#6953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6953
[Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
[Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
[Intel XE#776]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/776
[Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
[Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
Build changes
-------------
* IGT: IGT_8684 -> IGT_8685
* Linux: xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04 -> xe-pw-152277v6
IGT_8684: 8684
IGT_8685: 8685
xe-4332-9081abc2c80b75a0c38ba2880f867904acd13a04: 9081abc2c80b75a0c38ba2880f867904acd13a04
xe-pw-152277v6: 152277v6
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-152277v6/index.html
[-- Attachment #2: Type: text/html, Size: 50600 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl
2026-01-06 4:37 ` [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl Arun R Murthy
@ 2026-01-07 11:03 ` Louis Chauvet
2026-01-22 4:41 ` Murthy, Arun R
0 siblings, 1 reply; 22+ messages in thread
From: Louis Chauvet @ 2026-01-07 11:03 UTC (permalink / raw)
To: Arun R Murthy, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Rodrigo Vivi, Joonas Lahtinen, Tvrtko Ursulin, xaver.hugl,
harry.wentland, uma.shankar
Cc: dri-devel, intel-gfx, intel-xe
On 1/6/26 05:37, Arun R Murthy wrote:
> Move atomic_state allocation to the beginning of the atomic_ioctl
> to accommodate drm_mode_atomic_err_code usage for returning error
> code on failures.
> As atomic state is required for drm_mode_atomic_err_code to store the
> error codes.
>
> v7: Reframe commit message (Suraj)
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> ---
> drivers/gpu/drm/drm_atomic_uapi.c | 20 +++++++++++---------
> 1 file changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
> index 7320db4b8489f10e24ed772094c77e2172951633..02029b5d7832eeaf4a225096a94947344083fc0b 100644
> --- a/drivers/gpu/drm/drm_atomic_uapi.c
> +++ b/drivers/gpu/drm/drm_atomic_uapi.c
> @@ -1553,13 +1553,21 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> struct drm_modeset_acquire_ctx ctx;
> struct drm_out_fence_state *fence_state;
> int ret = 0;
> - unsigned int i, j, num_fences;
> + unsigned int i, j, num_fences = 0;
> bool async_flip = false;
>
> /* disallow for drivers not supporting atomic: */
> if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
> return -EOPNOTSUPP;
>
> + state = drm_atomic_state_alloc(dev);
> + if (!state)
> + return -ENOMEM;
It seems strange to add num_fences = 0 at the top and then don't use it
before the num_fences = 0. Did you forgot to replace return -ENOMEM by
goto out?
> +
> + drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
> + state->acquire_ctx = &ctx;
> + state->allow_modeset = !!(arg->flags & DRM_MODE_ATOMIC_ALLOW_MODESET);
> +
> /* disallow for userspace that has not enabled atomic cap (even
> * though this may be a bit overkill, since legacy userspace
> * wouldn't know how to call this ioctl)
> @@ -1598,13 +1606,6 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> return -EINVAL;
> }
>
> - state = drm_atomic_state_alloc(dev);
> - if (!state)
> - return -ENOMEM;
> -
> - drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
> - state->acquire_ctx = &ctx;
> - state->allow_modeset = !!(arg->flags & DRM_MODE_ATOMIC_ALLOW_MODESET);
> state->plane_color_pipeline = file_priv->plane_color_pipeline;
>
> retry:
> @@ -1703,7 +1704,8 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> }
>
> out:
> - complete_signaling(dev, state, fence_state, num_fences, !ret);
> + if (num_fences)
> + complete_signaling(dev, state, fence_state, num_fences, !ret);
Hello Arun,
I am not familiar with this part of DRM, but this num_fences change
seems strange and unrelated to this patch.
If this is intentional, I think this change the previous behavior:
num_fences = 0;
for (...) {
if (ret)
goto out;
}
ret = prepare_signaling(dev, state, arg, file_priv,
fence_state, &num_fences);
out:
complete_signaling(dev, state, fence_state, num_fences, !ret);
Without your change:
=> no error -> prepare_signaling/complete_signaling are called with
num_fences=0
=> error in prepare_signaling -> complete_signaling is called in all cases
=> error in loop = complete_signaling without prepare_signaling (very
strange, is it your fix?)
With your change:
=> no error -> same
=> error in prepare_signaling -> depends on prepare_signaling, only if
num_fences!=0 (a bit strange, but maybe expected)
=> error in loop -> don't call complete_signaling
I don't know if the previous behavior is broken, but if this change is
needed, maybe you can extract it in a different patch?
Thanks,
Louis Chauvet
> if (ret == -EDEADLK) {
> drm_atomic_state_clear(state);
>
^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
@ 2026-01-08 6:13 ` Kandpal, Suraj
2026-01-21 13:47 ` Xaver Hugl
1 sibling, 0 replies; 22+ messages in thread
From: Kandpal, Suraj @ 2026-01-08 6:13 UTC (permalink / raw)
To: Murthy, Arun R, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Vivi, Rodrigo, Joonas Lahtinen, Tvrtko Ursulin,
xaver.hugl@kde.org, harry.wentland@amd.com, Shankar, Uma,
louis.chauvet@bootlin.com
Cc: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, Murthy, Arun R
> Subject: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
>
> There can be multiple reasons for a failure in atomic_ioctl. Most often in these
> error conditions -EINVAL is returned. User/Compositor would have to blindly
> take a call on failure of this ioctl so as to use ALLOW_MODESET or retry. It
> would be good if user/compositor gets a readable error code on failure so they
> can take proper corrections in the next commit.
> The struct drm_mode_atomic is being passed by the user/compositor which
> holds the properties for modeset/flip. Reusing the same struct for returning
> the error code in case of failure, thereby creation of new uapi/interface for
> returning the error code is not required.
> The element 'reserved' in the struct drm_mode_atomic is used for returning
> the user readable error code. This points to the struct
> drm_mode_atomic_err_code. Failure reasons as a string can also be added on
> need basis by the variable failure_string in the same struct
> drm_mode_atomic_err_code.
You seemed to have missed adding the versioning changes, same for all patches
In this series so please add that too.
Other than that LGTM,
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> ---
> include/uapi/drm/drm_mode.h | 41
> +++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 41 insertions(+)
>
> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> index
> cbbbfc1dfe2b806c641c720b0215e825e350bd03..024c39eba6b25e14a99b14224
> d96b7254ccebd61 100644
> --- a/include/uapi/drm/drm_mode.h
> +++ b/include/uapi/drm/drm_mode.h
> @@ -45,6 +45,7 @@ extern "C" {
> #define DRM_CONNECTOR_NAME_LEN 32
> #define DRM_DISPLAY_MODE_LEN 32
> #define DRM_PROP_NAME_LEN 32
> +#define DRM_MODE_ATOMIC_FAILURE_STRING_LEN 128
>
> #define DRM_MODE_TYPE_BUILTIN (1<<0) /* deprecated */
> #define DRM_MODE_TYPE_CLOCK_C ((1<<1) | DRM_MODE_TYPE_BUILTIN)
> /* deprecated */
> @@ -1339,6 +1340,46 @@ struct drm_mode_destroy_dumb {
> DRM_MODE_ATOMIC_NONBLOCK |\
> DRM_MODE_ATOMIC_ALLOW_MODESET)
>
> +/**
> + * enum drm_mode_atomic_err_code - error codes for failures in
> +atomic_ioctl
> + * @DRM_MODE_ATOMIC_INVALID_API_USAGE: invallid API
> usage(DRM_ATOMIC not
> + * enabled, invalid falg, page_flip event
> + * with test-only, etc)
> + * @DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET: Need full modeset
> on this
> +crtc
> + * @DRM_MODE_ATOMIC_NEED_FULL_MODESET: Need full modeset on all
> +connected crtc's
> + * @DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE: Aync flip not
> supported on
> +this plane
> + * DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP: Modifier not
> supported by
> +async flip
> + * @DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED: Property changed in
> async flip
> +*/ enum drm_mode_atomic_failure_codes {
> + DRM_MODE_ATOMIC_INVALID_API_USAGE,
> + DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
> + DRM_MODE_ATOMIC_NEED_FULL_MODESET,
> + DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
> + DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
> + DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
> +};
> +
> +/**
> + * drm_mode_atomic_err_code - struct to store the error code
> + *
> + * pointer to this struct will be stored in reserved variable of
> + * struct drm_mode_atomic to report the failure cause to the user.
> + *
> + * @failure_code: error codes defined in enum
> +drm_moide_atomic_failure_code
> + * @failure_string_ptr: pointer to user readable error message string
> + * @failure_obj_ptr: pointer to the drm_object that caused error
> + * @reserved: reserved for future use
> + * @count_objs: count of drm_objects if multiple drm_objects caused
> +error */ struct drm_mode_atomic_err_code {
> + __u64 failure_code;
> + __u64 failure_objs_ptr;
> + __u64 reserved;
> + __u32 count_objs;
> + char failure_string[DRM_MODE_ATOMIC_FAILURE_STRING_LEN];
> +};
> +
> struct drm_mode_atomic {
> __u32 flags;
> __u32 count_objs;
>
> --
> 2.25.1
^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state
2026-01-06 4:37 ` [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state Arun R Murthy
@ 2026-01-08 6:15 ` Kandpal, Suraj
0 siblings, 0 replies; 22+ messages in thread
From: Kandpal, Suraj @ 2026-01-08 6:15 UTC (permalink / raw)
To: Murthy, Arun R, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Vivi, Rodrigo, Joonas Lahtinen, Tvrtko Ursulin,
xaver.hugl@kde.org, harry.wentland@amd.com, Shankar, Uma,
louis.chauvet@bootlin.com
Cc: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, Murthy, Arun R
> Subject: [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state
>
> Now that a proper error code will be returned to the user on any failure in
> atomic_ioctl() via struct drm_mode_atomic, add a new element error_code in
> the struct drm_atomic_state so as to hold the error code during the
> atomic_check() and atomic_commit() phases.
> New function added to print the error message and fill the struct err_code with
> proper error message and error code.
>
> v5: Add a function for printing the error message and filling err_code
> struct
> v6: Replace drm_err with drm_dbg_atomic print
> v6: Add keyword "commit failed" in dbg msg (Suraj)
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
LGTM,
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
> ---
> drivers/gpu/drm/drm_atomic.c | 31 +++++++++++++++++++++++++++++++
> include/drm/drm_atomic.h | 10 ++++++++++
> 2 files changed, 41 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index
> 52738b80ddbeb124896f6124df5628e2ac27faa4..0f4f6071cc305a114654c69732
> 72bbc4b1ff36c8 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -2105,6 +2105,37 @@ void drm_state_dump(struct drm_device *dev,
> struct drm_printer *p) } EXPORT_SYMBOL(drm_state_dump);
>
> +/**
> + * drm_mode_atomic_add_error_msg - function to add error code and error
> +string
> + *
> + * @err_code: pointer to struct drm_mode_atomic_err_code that stores the
> failure
> + * reason
> + * @failure_code: failure code in enum drm_mode_atomic_failure_codes
> + * @failure_string: failure reason string message
> + *
> + * Returns: void
> + */
> +void drm_mode_atomic_add_error_msg(struct drm_mode_atomic_err_code
> *err_code,
> + __u64 failure_code, const char *format, ...) {
> + struct drm_atomic_state *state = container_of(err_code,
> + struct drm_atomic_state,
> + error_code);
> + va_list varg;
> + char *failure_string;
> +
> + err_code->failure_code = failure_code;
> +
> + va_start(varg, format);
> + failure_string = kvasprintf(GFP_ATOMIC, format, varg);
> +
> + drm_dbg_atomic(state->dev, "Commit failed: %s\n", failure_string);
> + strscpy_pad(err_code->failure_string, failure_string,
> + sizeof(err_code->failure_string));
> + va_end(varg);
> +}
> +EXPORT_SYMBOL(drm_mode_atomic_add_error_msg);
> +
> #ifdef CONFIG_DEBUG_FS
> static int drm_state_info(struct seq_file *m, void *data) { diff --git
> a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h index
> 178f8f62c80fc58fe42e8564a716da1a99ddb7da..b080f981ec1afd4b2569aba703c
> 93fc1ea582cbf 100644
> --- a/include/drm/drm_atomic.h
> +++ b/include/drm/drm_atomic.h
> @@ -633,6 +633,13 @@ struct drm_atomic_state {
> * commit without blocking.
> */
> struct work_struct commit_work;
> +
> + /* @error_code: pointer to struct holding failure reason and string
> + *
> + * struct to convey user readable error to the user.
> + * Error codes defined in enum drm_mode_atomic_failure_flags
> + */
> + struct drm_mode_atomic_err_code error_code;
> };
>
> void __drm_crtc_commit_free(struct kref *kref); @@ -1360,5 +1367,8 @@
> drm_atomic_get_old_bridge_state(const struct drm_atomic_state *state,
> struct drm_bridge_state * drm_atomic_get_new_bridge_state(const struct
> drm_atomic_state *state,
> struct drm_bridge *bridge);
> +__printf(3, 4)
> +void drm_mode_atomic_add_error_msg(struct drm_mode_atomic_err_code
> *err_code,
> + __u64 failure_code, const char *format, ...);
>
> #endif /* DRM_ATOMIC_H_ */
>
> --
> 2.25.1
^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl
2026-01-06 4:37 ` [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl Arun R Murthy
@ 2026-01-08 6:20 ` Kandpal, Suraj
0 siblings, 0 replies; 22+ messages in thread
From: Kandpal, Suraj @ 2026-01-08 6:20 UTC (permalink / raw)
To: Murthy, Arun R, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Vivi, Rodrigo, Joonas Lahtinen, Tvrtko Ursulin,
xaver.hugl@kde.org, harry.wentland@amd.com, Shankar, Uma,
louis.chauvet@bootlin.com
Cc: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, Murthy, Arun R
> Subject: [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl
>
> Add user readable error codes for failure cases in drm_atomic_ioctl() so that
> user can decode the error code and take corrective measurements.
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> ---
> drivers/gpu/drm/drm_atomic_uapi.c | 71 ++++++++++++++++++++++++++++---
> --------
> 1 file changed, 52 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_atomic_uapi.c
> b/drivers/gpu/drm/drm_atomic_uapi.c
> index
> 02029b5d7832eeaf4a225096a94947344083fc0b..909c71bc88122ee57cf82eefe5
> 588c42a5d4a037 100644
> --- a/drivers/gpu/drm/drm_atomic_uapi.c
> +++ b/drivers/gpu/drm/drm_atomic_uapi.c
> @@ -1180,6 +1180,11 @@ int drm_atomic_set_property(struct
> drm_atomic_state *state,
> ret = drm_atomic_connector_get_property(connector,
> connector_state,
> prop,
> &old_val);
> ret = drm_atomic_check_prop_changes(ret, old_val,
> prop_value, prop);
> + if (ret) {
> + drm_mode_atomic_add_error_msg(&state-
> >error_code,
> +
> DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
> + "property change
> not allowed in async flip");
> + }
> break;
> }
>
> @@ -1202,6 +1207,11 @@ int drm_atomic_set_property(struct
> drm_atomic_state *state,
> ret = drm_atomic_crtc_get_property(crtc, crtc_state,
> prop, &old_val);
> ret = drm_atomic_check_prop_changes(ret, old_val,
> prop_value, prop);
> + if (ret) {
> + drm_mode_atomic_add_error_msg(&state-
> >error_code,
> +
> DRM_MODE_ATOMIC_ASYNC_PROP_CHANGED,
> + "property change
> not allowed in async flip");
> + }
> break;
> }
>
> @@ -1240,9 +1250,10 @@ int drm_atomic_set_property(struct
> drm_atomic_state *state,
> ret = plane_funcs-
> >atomic_async_check(plane, state, true);
>
> if (ret) {
> - drm_dbg_atomic(prop->dev,
> - "[PLANE:%d:%s] does not
> support async flips\n",
> - obj->id, plane->name);
> +
> drm_mode_atomic_add_error_msg(&state->error_code,
> +
> DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
> +
> "[PLANE:%d:%s] does not support async flip",
> + obj->id,
> plane->name);
> break;
> }
> }
> @@ -1552,6 +1563,7 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> struct drm_atomic_state *state;
> struct drm_modeset_acquire_ctx ctx;
> struct drm_out_fence_state *fence_state;
> + struct drm_mode_atomic_err_code __user *error_code_ptr;
> int ret = 0;
> unsigned int i, j, num_fences = 0;
> bool async_flip = false;
> @@ -1560,6 +1572,14 @@ int drm_mode_atomic_ioctl(struct drm_device
> *dev,
> if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
> return -EOPNOTSUPP;
>
> + if (!arg->reserved)
> + drm_dbg_atomic(dev,
> + "memory not allocated for drm_atomic error
> reporting\n");
> + else
> + /* Update the error code if any error to allow user handling it
> */
> + error_code_ptr = (struct drm_mode_atomic_err_code __user
> *)
> + (unsigned long)arg->reserved;
> +
> state = drm_atomic_state_alloc(dev);
> if (!state)
> return -ENOMEM;
> @@ -1568,31 +1588,35 @@ int drm_mode_atomic_ioctl(struct drm_device
> *dev,
> state->acquire_ctx = &ctx;
> state->allow_modeset = !!(arg->flags &
> DRM_MODE_ATOMIC_ALLOW_MODESET);
>
> + memset(&state->error_code, 0, sizeof(*error_code_ptr));
> +
> /* disallow for userspace that has not enabled atomic cap (even
> * though this may be a bit overkill, since legacy userspace
> * wouldn't know how to call this ioctl)
> */
> if (!file_priv->atomic) {
> - drm_dbg_atomic(dev,
> - "commit failed: atomic cap not enabled\n");
> - return -EINVAL;
> + drm_mode_atomic_add_error_msg(&state->error_code,
> +
> DRM_MODE_ATOMIC_INVALID_API_USAGE,
> + "arm atomic capability not
> enabled");
Do you mean drm atomic capability
With that fixed LGTM,
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
> + ret = -EINVAL;
> + goto out;
> }
>
> if (arg->flags & ~DRM_MODE_ATOMIC_FLAGS) {
> - drm_dbg_atomic(dev, "commit failed: invalid flag\n");
> - return -EINVAL;
> - }
> -
> - if (arg->reserved) {
> - drm_dbg_atomic(dev, "commit failed: reserved field set\n");
> - return -EINVAL;
> + drm_mode_atomic_add_error_msg(&state->error_code,
> +
> DRM_MODE_ATOMIC_INVALID_API_USAGE,
> + "invalid flag");
> + ret = -EINVAL;
> + goto out;
> }
>
> if (arg->flags & DRM_MODE_PAGE_FLIP_ASYNC) {
> if (!dev->mode_config.async_page_flip) {
> - drm_dbg_atomic(dev,
> - "commit failed:
> DRM_MODE_PAGE_FLIP_ASYNC not supported\n");
> - return -EINVAL;
> + drm_mode_atomic_add_error_msg(&state-
> >error_code,
> +
> DRM_MODE_ATOMIC_INVALID_API_USAGE,
> +
> "DRM_MODE_PAGE_FLIP_ASYNC not supported with ATOMIC ioctl");
> + ret = -EINVAL;
> + goto out;
> }
>
> async_flip = true;
> @@ -1601,9 +1625,11 @@ int drm_mode_atomic_ioctl(struct drm_device
> *dev,
> /* can't test and expect an event at the same time. */
> if ((arg->flags & DRM_MODE_ATOMIC_TEST_ONLY) &&
> (arg->flags & DRM_MODE_PAGE_FLIP_EVENT)) {
> - drm_dbg_atomic(dev,
> - "commit failed: page-flip event requested with
> test-only commit\n");
> - return -EINVAL;
> + drm_mode_atomic_add_error_msg(&state->error_code,
> +
> DRM_MODE_ATOMIC_INVALID_API_USAGE,
> + "page-flip event requested with
> test-only commit");
> + ret = -EINVAL;
> + goto out;
> }
>
> state->plane_color_pipeline = file_priv->plane_color_pipeline; @@ -
> 1704,6 +1730,13 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> }
>
> out:
> + /* Update the error code if any error to allow user handling it */
> + if (ret < 0 && arg->reserved) {
> + if (copy_to_user(error_code_ptr, &state->error_code,
> + sizeof(state->error_code)))
> + return -EFAULT;
> + }
> +
> if (num_fences)
> complete_signaling(dev, state, fence_state, num_fences, !ret);
>
>
> --
> 2.25.1
^ permalink raw reply [flat|nested] 22+ messages in thread
* RE: [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures
2026-01-06 4:38 ` [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures Arun R Murthy
@ 2026-01-08 6:24 ` Kandpal, Suraj
0 siblings, 0 replies; 22+ messages in thread
From: Kandpal, Suraj @ 2026-01-08 6:24 UTC (permalink / raw)
To: Murthy, Arun R, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Vivi, Rodrigo, Joonas Lahtinen, Tvrtko Ursulin,
xaver.hugl@kde.org, harry.wentland@amd.com, Shankar, Uma,
louis.chauvet@bootlin.com
Cc: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, Murthy, Arun R
> Subject: [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures
>
> For failures in async flip atomic check/commit path return user readable error
> codes in struct drm_atomic_state.
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
LGTM,
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 25 ++++++++++++++-----------
> 1 file changed, 14 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index
> 81b3a6692ca20198ed4460af25a61b2d48e76023..737a07f9c0ca08682b13c20ab
> 5877c1b57c09990 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -6016,9 +6016,10 @@ static int intel_async_flip_check_uapi(struct
> intel_atomic_state *state,
> }
>
> if (intel_crtc_needs_modeset(new_crtc_state)) {
> - drm_dbg_kms(display->drm,
> - "[CRTC:%d:%s] modeset required\n",
> - crtc->base.base.id, crtc->base.name);
> + drm_mode_atomic_add_error_msg(&state->base.error_code,
> +
> DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
> + "[CRTC:%d:%s] requires full
> modeset",
> + crtc->base.base.id, crtc-
> >base.name);
> return -EINVAL;
> }
>
> @@ -6085,9 +6086,10 @@ static int intel_async_flip_check_hw(struct
> intel_atomic_state *state, struct in
> }
>
> if (intel_crtc_needs_modeset(new_crtc_state)) {
> - drm_dbg_kms(display->drm,
> - "[CRTC:%d:%s] modeset required\n",
> - crtc->base.base.id, crtc->base.name);
> + drm_mode_atomic_add_error_msg(&state->base.error_code,
> +
> DRM_MODE_ATOMIC_CRTC_NEED_FULL_MODESET,
> + "[CRTC:%d:%s] requires full
> modeset",
> + crtc->base.base.id, crtc-
> >base.name);
> return -EINVAL;
> }
>
> @@ -6125,11 +6127,12 @@ static int intel_async_flip_check_hw(struct
> intel_atomic_state *state, struct in
>
> if (!intel_plane_can_async_flip(plane, new_plane_state->hw.fb-
> >format,
> new_plane_state->hw.fb-
> >modifier)) {
> - drm_dbg_kms(display->drm,
> - "[PLANE:%d:%s] pixel format %p4cc /
> modifier 0x%llx does not support async flip\n",
> - plane->base.base.id, plane->base.name,
> - &new_plane_state->hw.fb->format->format,
> - new_plane_state->hw.fb->modifier);
> + drm_mode_atomic_add_error_msg(&state-
> >base.error_code,
> +
> DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
> + "[PLANE:%d:%s] pixel
> format %p4cc / 0x%llx modifier does not support async flip",
> + plane->base.base.id,
> plane->base.name,
> + &new_plane_state->hw.fb-
> >format->format,
> + new_plane_state->hw.fb-
> >modifier);
> return -EINVAL;
> }
>
>
> --
> 2.25.1
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
2026-01-08 6:13 ` Kandpal, Suraj
@ 2026-01-21 13:47 ` Xaver Hugl
2026-01-21 13:58 ` Xaver Hugl
2026-01-22 2:48 ` Murthy, Arun R
1 sibling, 2 replies; 22+ messages in thread
From: Xaver Hugl @ 2026-01-21 13:47 UTC (permalink / raw)
To: Arun R Murthy
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, harry.wentland, uma.shankar, louis.chauvet,
dri-devel, intel-gfx, intel-xe
> + DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
I don't think it makes sense to have an enum value for this, the
per-plane support for async pageflips should be reported to the
compositor in a way that doesn't require atomic tests. Once that's
done, trying to do async flips with it is just invalid API usage.
> + DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
Same here, there's already a drm property for async-capable
format+modifiers on each plane, so this falls under invalid API usage.
One more thing I noticed for the failure codes: I think it would be
better if INVALID_API_USAGE and unspecified errors would be split,
with the latter being the default error code.
Afaict with the current version the compositor would be told it's
using the API wrong when it's just a normal test failure that the
driver hasn't added a more specific error code for yet.
INVALID_API_USAGE would then just be for actual "you should know
better than to try this" cases, which should never happen in correct
compositor operation.
Other than that, the API looks good to me. I'll put together a KWin
implementation soon.
- Xaver
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-21 13:47 ` Xaver Hugl
@ 2026-01-21 13:58 ` Xaver Hugl
2026-01-22 2:54 ` Murthy, Arun R
2026-01-22 2:48 ` Murthy, Arun R
1 sibling, 1 reply; 22+ messages in thread
From: Xaver Hugl @ 2026-01-21 13:58 UTC (permalink / raw)
To: Arun R Murthy
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, harry.wentland, uma.shankar, louis.chauvet,
dri-devel, intel-gfx, intel-xe
Oh, I just noticed: It would help if we had a CAP for this, so the
compositor knows if the new API is supported before doing atomic tests
with it.
- Xaver
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-21 13:47 ` Xaver Hugl
2026-01-21 13:58 ` Xaver Hugl
@ 2026-01-22 2:48 ` Murthy, Arun R
1 sibling, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2026-01-22 2:48 UTC (permalink / raw)
To: Xaver Hugl
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, harry.wentland, uma.shankar, louis.chauvet,
dri-devel, intel-gfx, intel-xe
On 21-01-2026 19:17, Xaver Hugl wrote:
>> + DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
> I don't think it makes sense to have an enum value for this, the
> per-plane support for async pageflips should be reported to the
> compositor in a way that doesn't require atomic tests. Once that's
> done, trying to do async flips with it is just invalid API usage.
Sure will remove this!
For getting to know if async flip is supported on a plane or not
IN_FORMATS_ASYNC can be used.
>
>> + DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
> Same here, there's already a drm property for async-capable
> format+modifiers on each plane, so this falls under invalid API usage.
>
> One more thing I noticed for the failure codes: I think it would be
> better if INVALID_API_USAGE and unspecified errors would be split,
> with the latter being the default error code.
> Afaict with the current version the compositor would be told it's
> using the API wrong when it's just a normal test failure that the
> driver hasn't added a more specific error code for yet.
> INVALID_API_USAGE would then just be for actual "you should know
> better than to try this" cases, which should never happen in correct
> compositor operation.
Got it, all driver compatibility/not supported will go with proper error
code and anything already known to compositor but still sends it wrongly
will fall under INVALID_API_USAGE.
> Other than that, the API looks good to me. I'll put together a KWin
> implementation soon.
Thanks for the inputs and review.
Thanks and Regards,
Arun R Murthy
-------------------
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-21 13:58 ` Xaver Hugl
@ 2026-01-22 2:54 ` Murthy, Arun R
2026-01-22 16:23 ` Xaver Hugl
0 siblings, 1 reply; 22+ messages in thread
From: Murthy, Arun R @ 2026-01-22 2:54 UTC (permalink / raw)
To: Xaver Hugl
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, harry.wentland, uma.shankar, louis.chauvet,
dri-devel, intel-gfx, intel-xe
On 21-01-2026 19:28, Xaver Hugl wrote:
> Oh, I just noticed: It would help if we had a CAP for this, so the
> compositor knows if the new API is supported before doing atomic tests
> with it.
No new UAPI is added for this and would be enabled by default with
atomic ioctl.
The reserved field in the struct drm_mode_atomic would be used to return
the error code. If this value is zero with a atomic_ioctl failure then
eventually should be a older kernel where this feature is not added. For
every failure on atomic_ioctl an error_code would be sent by the kernel.
Let me know if you still think a UAPI is required to get to know the
capability of this feature.
Thanks and Regards,
Arun R Murthy
--------------------
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl
2026-01-07 11:03 ` Louis Chauvet
@ 2026-01-22 4:41 ` Murthy, Arun R
0 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2026-01-22 4:41 UTC (permalink / raw)
To: Louis Chauvet, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Jani Nikula,
Rodrigo Vivi, Joonas Lahtinen, Tvrtko Ursulin, xaver.hugl,
harry.wentland, uma.shankar
Cc: dri-devel, intel-gfx, intel-xe
Thanks for the review and sorry I missed to reply back on this!
On 07-01-2026 16:33, Louis Chauvet wrote:
>
>
> On 1/6/26 05:37, Arun R Murthy wrote:
>> Move atomic_state allocation to the beginning of the atomic_ioctl
>> to accommodate drm_mode_atomic_err_code usage for returning error
>> code on failures.
>> As atomic state is required for drm_mode_atomic_err_code to store the
>> error codes.
>>
>> v7: Reframe commit message (Suraj)
>>
>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>> ---
>> drivers/gpu/drm/drm_atomic_uapi.c | 20 +++++++++++---------
>> 1 file changed, 11 insertions(+), 9 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/drm_atomic_uapi.c
>> b/drivers/gpu/drm/drm_atomic_uapi.c
>> index
>> 7320db4b8489f10e24ed772094c77e2172951633..02029b5d7832eeaf4a225096a94947344083fc0b
>> 100644
>> --- a/drivers/gpu/drm/drm_atomic_uapi.c
>> +++ b/drivers/gpu/drm/drm_atomic_uapi.c
>> @@ -1553,13 +1553,21 @@ int drm_mode_atomic_ioctl(struct drm_device
>> *dev,
>> struct drm_modeset_acquire_ctx ctx;
>> struct drm_out_fence_state *fence_state;
>> int ret = 0;
>> - unsigned int i, j, num_fences;
>> + unsigned int i, j, num_fences = 0;
>> bool async_flip = false;
>> /* disallow for drivers not supporting atomic: */
>> if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
>> return -EOPNOTSUPP;
>> + state = drm_atomic_state_alloc(dev);
>> + if (!state)
>> + return -ENOMEM;
>
> It seems strange to add num_fences = 0 at the top and then don't use
> it before the num_fences = 0. Did you forgot to replace return -ENOMEM
> by goto out?
>
As part of this series in places where we return on error has been
changed to goto out, cleanup and then return with error code. In cleanup
we will be completing the fences. Hence setting this num_fences to 0
initially.
>> +
>> + drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
>> + state->acquire_ctx = &ctx;
>> + state->allow_modeset = !!(arg->flags &
>> DRM_MODE_ATOMIC_ALLOW_MODESET);
>> +
>> /* disallow for userspace that has not enabled atomic cap (even
>> * though this may be a bit overkill, since legacy userspace
>> * wouldn't know how to call this ioctl)
>> @@ -1598,13 +1606,6 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
>> return -EINVAL;
>> }
>> - state = drm_atomic_state_alloc(dev);
>> - if (!state)
>> - return -ENOMEM;
>> -
>> - drm_modeset_acquire_init(&ctx, DRM_MODESET_ACQUIRE_INTERRUPTIBLE);
>> - state->acquire_ctx = &ctx;
>> - state->allow_modeset = !!(arg->flags &
>> DRM_MODE_ATOMIC_ALLOW_MODESET);
>> state->plane_color_pipeline = file_priv->plane_color_pipeline;
>> retry:
>> @@ -1703,7 +1704,8 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
>> }
>> out:
>> - complete_signaling(dev, state, fence_state, num_fences, !ret);
>> + if (num_fences)
>> + complete_signaling(dev, state, fence_state, num_fences, !ret);
>
> Hello Arun,
>
> I am not familiar with this part of DRM, but this num_fences change
> seems strange and unrelated to this patch.
>
> If this is intentional, I think this change the previous behavior:
>
> num_fences = 0;
> for (...) {
> if (ret)
> goto out;
> }
> ret = prepare_signaling(dev, state, arg, file_priv,
> fence_state, &num_fences);
> out:
> complete_signaling(dev, state, fence_state, num_fences, !ret);
>
> Without your change:
>
> => no error -> prepare_signaling/complete_signaling are called with
> num_fences=0
> => error in prepare_signaling -> complete_signaling is called in all
> cases
> => error in loop = complete_signaling without prepare_signaling (very
> strange, is it your fix?)
>
> With your change:
>
> => no error -> same
> => error in prepare_signaling -> depends on prepare_signaling, only if
> num_fences!=0 (a bit strange, but maybe expected)
> => error in loop -> don't call complete_signaling
>
> I don't know if the previous behavior is broken, but if this change is
> needed, maybe you can extract it in a different patch?
Yes even prior to this change it seems to have some issues and this
patch/series is not trying to fix that.
In this series before the for loop on error condition instead of exiting
goto error with cleanup is added for which num_fences is set to 0 in the
beginning.
Sure will move this change out of this patch.
Thanks and Regards,
Arun R Murthy
-------------------
>
> Thanks,
> Louis Chauvet
>
>
>> if (ret == -EDEADLK) {
>> drm_atomic_state_clear(state);
>>
>
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl
2026-01-22 2:54 ` Murthy, Arun R
@ 2026-01-22 16:23 ` Xaver Hugl
0 siblings, 0 replies; 22+ messages in thread
From: Xaver Hugl @ 2026-01-22 16:23 UTC (permalink / raw)
To: Murthy, Arun R
Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
Simona Vetter, Jani Nikula, Rodrigo Vivi, Joonas Lahtinen,
Tvrtko Ursulin, harry.wentland, uma.shankar, louis.chauvet,
dri-devel, intel-gfx, intel-xe
> No new UAPI is added for this and would be enabled by default with
> atomic ioctl.
I didn't mean a client cap, but a driver one. The compositor needs to
know that it can set the reserved field to a non-zero value without
the kernel rejecting that commit.
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2026-01-22 16:23 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-06 4:37 [PATCH v7 0/5] User readable error codes on atomic_ioctl failure Arun R Murthy
2026-01-06 4:37 ` [PATCH v7 1/5] drm: Define user readable error codes for atomic ioctl Arun R Murthy
2026-01-08 6:13 ` Kandpal, Suraj
2026-01-21 13:47 ` Xaver Hugl
2026-01-21 13:58 ` Xaver Hugl
2026-01-22 2:54 ` Murthy, Arun R
2026-01-22 16:23 ` Xaver Hugl
2026-01-22 2:48 ` Murthy, Arun R
2026-01-06 4:37 ` [PATCH v7 2/5] drm/atomic: Add error_code element in atomic_state Arun R Murthy
2026-01-08 6:15 ` Kandpal, Suraj
2026-01-06 4:37 ` [PATCH v7 3/5] drm/atomic: Allocate atomic_state at the beginning of atomic_ioctl Arun R Murthy
2026-01-07 11:03 ` Louis Chauvet
2026-01-22 4:41 ` Murthy, Arun R
2026-01-06 4:37 ` [PATCH v7 4/5] drm/atomic: Return user readable error in atomic_ioctl Arun R Murthy
2026-01-08 6:20 ` Kandpal, Suraj
2026-01-06 4:38 ` [PATCH v7 5/5] drm/i915/display: Error codes for async flip failures Arun R Murthy
2026-01-08 6:24 ` Kandpal, Suraj
2026-01-06 4:46 ` ✗ CI.checkpatch: warning for User readable error codes on atomic_ioctl failure (rev6) Patchwork
2026-01-06 4:47 ` ✓ CI.KUnit: success " Patchwork
2026-01-06 5:03 ` ✗ CI.checksparse: warning " Patchwork
2026-01-06 5:34 ` ✓ Xe.CI.BAT: success " Patchwork
2026-01-06 7:12 ` ✗ Xe.CI.Full: failure " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox