[Mesa-dev] [PATCH 4/4] radeonsi: disable CE on SI + AMDGPU

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Fri Aug 26 10:22:58 UTC 2016


Patch 3, 4 are

Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

For patch 1 and 2 I'm not familiar with the difference between the SI
and CIK+ tiling modes to be sure they are good, but the other parts of
the patch look good to me.

btw, I'm not sure what you tried wrt the CE hang, but it may be worth
trying with the CONTEXT_CONTROL in the CE IB removed. -pro doesn't use
it and I strongly suspect it is not really necessary.

- Bas

On Fri, Aug 19, 2016 at 11:11 AM, Marek Olšák <maraeo at gmail.com> wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> ---
>  src/gallium/drivers/radeonsi/si_pipe.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
> index 2669c7b..ff1a0bc 100644
> --- a/src/gallium/drivers/radeonsi/si_pipe.c
> +++ b/src/gallium/drivers/radeonsi/si_pipe.c
> @@ -179,21 +179,23 @@ static struct pipe_context *si_create_context(struct pipe_screen *screen,
>                 sctx->b.b.create_video_codec = si_uvd_create_decoder;
>                 sctx->b.b.create_video_buffer = si_video_buffer_create;
>         } else {
>                 sctx->b.b.create_video_codec = vl_create_decoder;
>                 sctx->b.b.create_video_buffer = vl_video_buffer_create;
>         }
>
>         sctx->b.gfx.cs = ws->cs_create(sctx->b.ctx, RING_GFX,
>                                        si_context_gfx_flush, sctx);
>
> -       if (!(sscreen->b.debug_flags & DBG_NO_CE) && ws->cs_add_const_ib) {
> +       /* SI + AMDGPU + CE = GPU hang */
> +       if (!(sscreen->b.debug_flags & DBG_NO_CE) && ws->cs_add_const_ib &&
> +           sscreen->b.chip_class != SI) {
>                 sctx->ce_ib = ws->cs_add_const_ib(sctx->b.gfx.cs);
>                 if (!sctx->ce_ib)
>                         goto fail;
>
>                 if (ws->cs_add_const_preamble_ib) {
>                         sctx->ce_preamble_ib =
>                                    ws->cs_add_const_preamble_ib(sctx->b.gfx.cs);
>
>                         if (!sctx->ce_preamble_ib)
>                                 goto fail;
> --
> 2.7.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list