[igt-dev] [PATCH i-g-t] lib/igt_pm: Adjust pm status check timeout and log timing
Sujaritha
sujaritha.sundaresan at intel.com
Mon Mar 9 15:57:32 UTC 2020
On 3/6/20 9:28 AM, don.hiatt at intel.com wrote:
> From: Don Hiatt <don.hiatt at intel.com>
>
> Increase the overall time we wait to achieve the desired runtime
> status to 15 seconds to fix an occasional timeout and do so
> in 1 second increments to speed up exiting. Also log the
> amount of time we waited to get a handle on how much variation
> we run into.
>
> Signed-off-by: Don Hiatt <don.hiatt at intel.com>
> ---
> lib/igt_pm.c | 18 +++++++++++++-----
> 1 file changed, 13 insertions(+), 5 deletions(-)
>
> diff --git a/lib/igt_pm.c b/lib/igt_pm.c
> index 9d441e1b76ff..13675fca0c9d 100644
> --- a/lib/igt_pm.c
> +++ b/lib/igt_pm.c
> @@ -747,8 +747,8 @@ static const char *_pm_status_name(enum igt_runtime_pm_status status)
> * igt_wait_for_pm_status:
> * @status: desired runtime PM status
> *
> - * Waits until for the driver to switch to into the desired runtime PM status,
> - * with a 10 second timeout.
> + * Waits for the driver to switch into the desired runtime PM status,
> + * with up to a 15 second timeout in 1 second increments.
> *
> * Returns:
> * True if the desired runtime PM status was attained, false if the operation
> @@ -758,7 +758,7 @@ bool igt_wait_for_pm_status(enum igt_runtime_pm_status status)
> {
> enum igt_runtime_pm_status expected = status;
> bool ret;
> - int fd;
> + int fd, i;
>
> if (__igt_pm_power < 0)
> return false;
> @@ -766,8 +766,16 @@ bool igt_wait_for_pm_status(enum igt_runtime_pm_status status)
> fd = openat(__igt_pm_power, "runtime_status", O_RDONLY);
> igt_assert_f(fd >= 0, "Can't open runtime_status\n");
>
> - ret = igt_wait((status = __igt_get_runtime_pm_status(fd)) == expected,
> - 10000, 100);
> + for (i=1; i < 16; ++i) {
> + ret = igt_wait((status = __igt_get_runtime_pm_status(fd)) == expected,
> + 1000, 100);
> +
> + if (ret) {
> + igt_info("Got expected (%s) runtime pm status in %d second(s)\n",
> + _pm_status_name(expected), i);
> + break;
> + }
> + }
> close(fd);
>
> if (!ret)
Don, could you add the information about the tests issues that this
helps to resolve to the commit message ?
Suja
More information about the igt-dev
mailing list