knowing the assertion triggered on wait_until_enabled() is not that
useful without knowing what exactly caused the failure.  It might be an
user error, like too little stolen memory by the bios, or an actual
issue in the kernel.  So, let's make life easier, particularly for the
CI, by printing the status before failing out.

Case in point:

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101718

Signed-off-by: Gabriel Krisman Bertazi <kris...@collabora.co.uk>
---
 tests/kms_fbcon_fbt.c | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
index d0090912694e..8371be5612f5 100644
--- a/tests/kms_fbcon_fbt.c
+++ b/tests/kms_fbcon_fbt.c
@@ -95,6 +95,14 @@ static bool connector_can_fbc(drmModeConnectorPtr connector)
        return true;
 }
 
+static void fbc_print_status(int fd)
+{
+       static char buf[128];
+
+       igt_debugfs_read(fd, "i915_fbc_status", buf);
+       igt_debug("FBC status: %s\n", buf);
+}
+
 static bool fbc_is_enabled(int fd)
 {
        char buf[128];
@@ -105,7 +113,9 @@ static bool fbc_is_enabled(int fd)
 
 static bool fbc_wait_until_enabled(int fd)
 {
-       return igt_wait(fbc_is_enabled(fd), 5000, 1);
+       bool r = igt_wait(fbc_is_enabled(fd), 5000, 1);
+       fbc_print_status(fd);
+       return r;
 }
 
 typedef bool (*connector_possible_fn)(drmModeConnectorPtr connector);
@@ -160,6 +170,14 @@ static bool connector_can_psr(drmModeConnectorPtr 
connector)
        return (connector->connector_type == DRM_MODE_CONNECTOR_eDP);
 }
 
+static void psr_print_status(int fd)
+{
+       static char buf[256];
+
+       igt_debugfs_read(fd, "i915_edp_psr_status", buf);
+       igt_debug("FBC status: %s\n", buf);
+}
+
 static bool psr_is_enabled(int fd)
 {
        char buf[256];
@@ -170,7 +188,9 @@ static bool psr_is_enabled(int fd)
 
 static bool psr_wait_until_enabled(int fd)
 {
-       return igt_wait(psr_is_enabled(fd), 5000, 1);
+       bool r = igt_wait(psr_is_enabled(fd), 5000, 1);
+       psr_print_status(fd);
+       return r;
 }
 
 struct feature {
-- 
2.11.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to