[i-g-t] igt/pm_rpm: Show the contents of i915_runtime_pm_status on setup

Submitted by Chris Wilson on Dec. 5, 2018, 10:48 a.m.

Details

Message ID 20181205104818.5203-1-chris@chris-wilson.co.uk
State New
Series "igt/pm_rpm: Show the contents of i915_runtime_pm_status on setup"
Headers show

Commit Message

Chris Wilson Dec. 5, 2018, 10:48 a.m.
To try and help debug situations where the driver has leaked a runtime
reference before executing the pm_rpm tests, show the contents of
i915_runtime_pm_status at startup, which will include all currently held
wakerefs.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 tests/pm_rpm.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

Patch hide | download patch | download mbox

diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
index f0d6db525..7427958dc 100644
--- a/tests/pm_rpm.c
+++ b/tests/pm_rpm.c
@@ -725,6 +725,18 @@  static bool dmc_loaded(void)
 	return strstr(buf, "fw loaded: yes");
 }
 
+static void dump_file(int dir, const char *filename)
+{
+	char *contents;
+
+	contents = igt_sysfs_get(dir, filename);
+	if (!contents)
+		return;
+
+	igt_debug("%s:\n%s\n", filename, contents);
+	free(contents);
+}
+
 static bool setup_environment(void)
 {
 	if (has_runtime_pm)
@@ -744,6 +756,8 @@  static bool setup_environment(void)
 	has_runtime_pm = igt_setup_runtime_pm();
 	setup_pc8();
 
+	dump_file(debugfs, "i915_runtime_pm_status");
+
 	igt_info("Runtime PM support: %d\n", has_runtime_pm);
 	igt_info("PC8 residency support: %d\n", has_pc8);
 	igt_require(has_runtime_pm);

Comments

Antonio Argenziano Dec. 5, 2018, 6 p.m.
On 05/12/18 02:48, Chris Wilson wrote:
> To try and help debug situations where the driver has leaked a runtime
> reference before executing the pm_rpm tests, show the contents of
> i915_runtime_pm_status at startup, which will include all currently held
> wakerefs.

LGTM.

Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>

> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
>   tests/pm_rpm.c | 14 ++++++++++++++
>   1 file changed, 14 insertions(+)
> 
> diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
> index f0d6db525..7427958dc 100644
> --- a/tests/pm_rpm.c
> +++ b/tests/pm_rpm.c
> @@ -725,6 +725,18 @@ static bool dmc_loaded(void)
>   	return strstr(buf, "fw loaded: yes");
>   }
>   
> +static void dump_file(int dir, const char *filename)
> +{
> +	char *contents;
> +
> +	contents = igt_sysfs_get(dir, filename);
> +	if (!contents)
> +		return;
> +
> +	igt_debug("%s:\n%s\n", filename, contents);
> +	free(contents);
> +}
> +
>   static bool setup_environment(void)
>   {
>   	if (has_runtime_pm)
> @@ -744,6 +756,8 @@ static bool setup_environment(void)
>   	has_runtime_pm = igt_setup_runtime_pm();
>   	setup_pc8();
>   
> +	dump_file(debugfs, "i915_runtime_pm_status");
> +
>   	igt_info("Runtime PM support: %d\n", has_runtime_pm);
>   	igt_info("PC8 residency support: %d\n", has_pc8);
>   	igt_require(has_runtime_pm);
>