[igt-dev] [PATCH i-g-t v2 4/4] tests/kms_sysfs_edid_timing: add total mean assertion threshold
Kahola, Mika
mika.kahola at intel.com
Fri Jun 17 11:20:38 UTC 2022
> -----Original Message-----
> From: Luca Coelho <luca at coelho.fi>
> Sent: Wednesday, June 15, 2022 3:26 PM
> To: igt-dev at lists.freedesktop.org
> Cc: Latvala, Petri <petri.latvala at intel.com>; Kahola, Mika
> <mika.kahola at intel.com>; luca at coelho.fi
> Subject: [PATCH i-g-t v2 4/4] tests/kms_sysfs_edid_timing: add total mean
> assertion threshold
>
> From: Luca Coelho <luciano.coelho at intel.com>
>
> Add an assertion to make sure that the mean time it takes to probe all
> connectors doesn't exceed 100 ms. This is an arbitrary but reasonable amount
> of time, based on real life tests.
>
Reviewed-by: Mika Kahola <mika.kahola at intel.com>
> Signed-off-by: Luca Coelho <luciano.coelho at intel.com>
> ---
> tests/kms_sysfs_edid_timing.c | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/tests/kms_sysfs_edid_timing.c b/tests/kms_sysfs_edid_timing.c
> index 4a14965fc21d..775211089f81 100644
> --- a/tests/kms_sysfs_edid_timing.c
> +++ b/tests/kms_sysfs_edid_timing.c
> @@ -28,21 +28,27 @@
>
> #define THRESHOLD_PER_CONNECTOR 150
> #define THRESHOLD_PER_CONNECTOR_MEAN 140
> +#define THRESHOLD_ALL_CONNECTORS_MEAN 100
> #define CHECK_TIMES 15
>
> IGT_TEST_DESCRIPTION("This test checks the time it takes to reprobe each "
> "connector and fails if either the time it takes for "
> "one reprobe is too long or if the mean time it takes "
> - "to reprobe one connector is too long.");
> + "to reprobe one connector is too long. Additionally, "
> + "make sure that the mean time for all connectors is "
> + "not too long.");
>
> igt_simple_main
> {
> DIR *dirp;
> struct dirent *de;
> + struct igt_mean all_mean;
>
> dirp = opendir("/sys/class/drm");
> igt_assert(dirp != NULL);
>
> + igt_mean_init(&all_mean);
> +
> while ((de = readdir(dirp))) {
> struct igt_mean mean = {};
> struct stat st;
> @@ -88,7 +94,14 @@ igt_simple_main
> "%s: mean probe time exceeded %dms,
> max=%.2fms, avg=%.2fms\n",
> de->d_name,
> THRESHOLD_PER_CONNECTOR_MEAN,
> mean.max / 1e6, mean.mean / 1e6);
> +
> + igt_mean_add(&all_mean, mean.mean);
> }
> - closedir(dirp);
>
> + igt_assert_f(all_mean.mean < THRESHOLD_ALL_CONNECTORS_MEAN *
> 1e6,
> + "Mean of all connector means exceeds %dms, max=%.2fms,
> mean=%.2fms\n",
> + THRESHOLD_ALL_CONNECTORS_MEAN, all_mean.max /
> 1e6,
> + all_mean.mean / 1e6);
> +
> + closedir(dirp);
> }
> --
> 2.36.1
More information about the igt-dev
mailing list