[igt-dev] [PATCH i-g-t] lib/igt_debugfs: explicitly wait for first crc in igt_pipe_crc_start
Maarten Lankhorst
maarten.lankhorst at linux.intel.com
Wed Aug 8 14:04:26 UTC 2018
Op 08-08-18 om 15:17 schreef Mahesh Kumar:
> Now crc framework does not wait for first CRC during open, User need
> to wait for crc if he wants so.
> This patch make changes in igt_pipe_crc_start to make sure we wait
> for first crc after open to keep the tests behaviour same.
> Without this if driver is skipping few initial crcs there will be
> mismatch in expected and actual number of crcs returned by crc
> framework.
>
> Signed-off-by: Mahesh Kumar <mahesh1.kumar at intel.com>
> ---
> lib/igt_debugfs.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/lib/igt_debugfs.c b/lib/igt_debugfs.c
> index f3196f43..f4c388bf 100644
> --- a/lib/igt_debugfs.c
> +++ b/lib/igt_debugfs.c
> @@ -748,6 +748,7 @@ static void read_one_crc(igt_pipe_crc_t *pipe_crc, igt_crc_t *out)
> void igt_pipe_crc_start(igt_pipe_crc_t *pipe_crc)
> {
> const char *src = pipe_crc_source_name(pipe_crc->source);
> + igt_crc_t first_crc;
> char buf[32];
>
> /* Stop first just to make sure we don't have lingering state left. */
> @@ -757,11 +758,13 @@ void igt_pipe_crc_start(igt_pipe_crc_t *pipe_crc)
>
> sprintf(buf, "crtc-%d/crc/data", pipe_crc->pipe);
>
> - igt_set_timeout(10, "Opening crc fd, which waits for first CRC.");
> + igt_set_timeout(10, "Opening crc fd, and wait for first CRC.");
> pipe_crc->crc_fd = openat(pipe_crc->dir, buf, pipe_crc->flags);
> + igt_assert(pipe_crc->crc_fd != -1);
> + read_one_crc(pipe_crc, &first_crc);
> +
> igt_reset_timeout();
>
> - igt_assert(pipe_crc->crc_fd != -1);
> errno = 0;
> }
>
Could you use poll() for the first CRC instead?
~Maarten
More information about the igt-dev
mailing list