diff mbox

[igt] tests/kms_properties: Don't set immutable properties

Message ID 20170804133851.15519-1-daniels@collabora.com (mailing list archive)
State New, archived
Headers show

Commit Message

Daniel Stone Aug. 4, 2017, 1:38 p.m. UTC
If the kernel tells us it's immutable, trying to set it probably isn't
going to succeed.

Fixes a failure seen with the IN_FORMATS property.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Ben Widawsky <ben@bwidawsk.net>
---
 tests/kms_properties.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

Comments

Daniel Stone Aug. 4, 2017, 2:07 p.m. UTC | #1
On 4 August 2017 at 14:38, Daniel Stone <daniels@collabora.com> wrote:
> If the kernel tells us it's immutable, trying to set it probably isn't
> going to succeed.
>
> Fixes a failure seen with the IN_FORMATS property.

Pushed a v2 which removed most of the list with Daniel Vetter's R-b from IRC.

Cheers,
Daniel
diff mbox

Patch

diff --git a/tests/kms_properties.c b/tests/kms_properties.c
index 276c07be..23d8a89f 100644
--- a/tests/kms_properties.c
+++ b/tests/kms_properties.c
@@ -88,9 +88,13 @@  static bool ignore_plane_property(const char *name, bool atomic)
 	return false;
 }
 
-static bool ignore_property(uint32_t type, const char *name, bool atomic)
+static bool ignore_property(uint32_t obj_type, uint32_t prop_flags,
+			    const char *name, bool atomic)
 {
-	switch (type) {
+	if (prop_flags & DRM_MODE_PROP_IMMUTABLE)
+		return true;
+
+	switch (obj_type) {
 	case DRM_MODE_OBJECT_CRTC:
 		return ignore_crtc_property(name, atomic);
 	case DRM_MODE_OBJECT_CONNECTOR:
@@ -122,7 +126,7 @@  static void test_properties(int fd, uint32_t type, uint32_t id, bool atomic)
 
 		igt_assert(prop);
 
-		if (ignore_property(type, prop->name, atomic)) {
+		if (ignore_property(type, prop->flags, prop->name, atomic)) {
 			igt_debug("Ignoring property \"%s\"\n", prop->name);
 
 			continue;