[igt-dev] [PATCH i-g-t] lib/igt_pm: make igt_pm_dmc_loaded() more robust

Imre Deak imre.deak at intel.com
Tue Feb 28 14:33:03 UTC 2023


On Tue, Feb 28, 2023 at 04:29:51PM +0200, Jani Nikula wrote:
> Make igt_pm_dmc_loaded() more robust against changes in the debugfs
> file. Read the entire contents of the file, at least with the current
> output. Preserve logged output even if something gets added in front of
> the file, and don't depend on exact length of the first line.
> 
> Cc: Imre Deak <imre.deak at intel.com>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>

Reviewed-by: Imre Deak <imre.deak at intel.com>

> ---
>  lib/igt_pm.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/lib/igt_pm.c b/lib/igt_pm.c
> index 26e8c9f05fdf..6c84e94f6307 100644
> --- a/lib/igt_pm.c
> +++ b/lib/igt_pm.c
> @@ -785,6 +785,11 @@ bool igt_wait_for_pm_status(enum igt_runtime_pm_status status)
>  	return ret;
>  }
>  
> +static const char *yesno(bool x)
> +{
> +	return x ? "yes" : "no";
> +}
> +
>  /**
>   * dmc_loaded:
>   * @debugfs: fd to the debugfs dir.
> @@ -798,7 +803,8 @@ bool igt_wait_for_pm_status(enum igt_runtime_pm_status status)
>   */
>  bool igt_pm_dmc_loaded(int debugfs)
>  {
> -	char buf[15];
> +	char buf[512];
> +	bool loaded;
>  	int len;
>  
>  	len = igt_sysfs_read(debugfs, "i915_dmc_info", buf, sizeof(buf) - 1);
> @@ -807,8 +813,10 @@ bool igt_pm_dmc_loaded(int debugfs)
>  
>  	buf[len] = '\0';
>  
> -	igt_info("DMC: %s\n", buf);
> -	return strstr(buf, "fw loaded: yes");
> +	loaded = strstr(buf, "fw loaded: yes");
> +	igt_info("DMC: fw loaded: %s\n", yesno(loaded));
> +
> +	return loaded;
>  }
>  
>  /**
> -- 
> 2.39.1
> 


More information about the igt-dev mailing list