[Mesa-dev] [PATCH] ddebug: fix hang detection with deferred flushes

Nicolai Hähnle nhaehnle at gmail.com
Tue Nov 29 19:36:26 UTC 2016


Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

On 28.11.2016 12:15, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> ---
>  src/gallium/drivers/ddebug/dd_draw.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/gallium/drivers/ddebug/dd_draw.c b/src/gallium/drivers/ddebug/dd_draw.c
> index 970712c..7bc7844 100644
> --- a/src/gallium/drivers/ddebug/dd_draw.c
> +++ b/src/gallium/drivers/ddebug/dd_draw.c
> @@ -552,21 +552,21 @@ dd_flush_and_check_hang(struct dd_context *dctx,
>     bool idle;
>
>     assert(timeout_ms > 0);
>
>     pipe->flush(pipe, &fence, flush_flags);
>     if (flush_fence)
>        screen->fence_reference(screen, flush_fence, fence);
>     if (!fence)
>        return false;
>
> -   idle = screen->fence_finish(screen, NULL, fence, timeout_ms * 1000000);
> +   idle = screen->fence_finish(screen, pipe, fence, timeout_ms * 1000000);
>     screen->fence_reference(screen, &fence, NULL);
>     if (!idle)
>        fprintf(stderr, "dd: GPU hang detected!\n");
>     return !idle;
>  }
>
>  static void
>  dd_flush_and_handle_hang(struct dd_context *dctx,
>                           struct pipe_fence_handle **fence, unsigned flags,
>                           const char *cause)
>


More information about the mesa-dev mailing list