lima: fix PP stack size
authorVasily Khoruzhick <anarsoul@gmail.com>
Sat, 19 Oct 2019 01:06:56 +0000 (18:06 -0700)
committerVasily Khoruzhick <anarsoul@gmail.com>
Sun, 20 Oct 2019 01:15:18 +0000 (18:15 -0700)
PP stack size should be set to maximum PP stack size, not to stack size of
last shader.

Fixes: 27e7603c344a ("lima: fix ppir spill stack allocation")
Tested-by: Icenowy Zheng <icenowy@aosc.io>
Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
src/gallium/drivers/lima/lima_draw.c

index 3d22ae92781d4c7a929fc5441ec2db3f877ba4c4..e4db471fe304bc8ec5d2cacbd094981aa1d9a50c 100644 (file)
@@ -1438,8 +1438,7 @@ lima_pack_pp_frame_reg(struct lima_context *ctx, uint32_t *frame_reg,
 
    /* These are "stack size" and "stack offset" shifted,
     * here they are assumed to be always the same. */
-   uint32_t fs_stack_size = ctx->fs ? ctx->fs->stack_size : 0;
-   frame->fragment_stack_size = fs_stack_size << 16 | fs_stack_size;
+   frame->fragment_stack_size = ctx->pp_max_stack_size << 16 | ctx->pp_max_stack_size;
 
    /* related with MSAA and different value when r4p0/r7p0 */
    frame->supersampled_height = fb->base.height * 2 - 1;