From 11585bb00383304fe8c188224a830b56c8290369 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 28 Mar 2021 08:48:19 -0400 Subject: [PATCH] radeonsi: disable sparse buffers on gfx7-8 Cc: 20.3 21.0 Reviewed-by: Pierre-Eric Pelloux-Prayer Part-of: (cherry picked from commit 8ea685dfc0d31fe0eeb127f3cb13307f34bc163b) --- .pick_status.json | 2 +- src/gallium/drivers/radeonsi/si_get.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index e2525e57d14..5b80c293ad1 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1111,7 +1111,7 @@ "description": "radeonsi: disable sparse buffers on gfx7-8", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": null }, diff --git a/src/gallium/drivers/radeonsi/si_get.c b/src/gallium/drivers/radeonsi/si_get.c index a12c42a875e..5944bef76d2 100644 --- a/src/gallium/drivers/radeonsi/si_get.c +++ b/src/gallium/drivers/radeonsi/si_get.c @@ -229,7 +229,9 @@ static int si_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return LLVM_VERSION_MAJOR < 9 && !sscreen->info.has_unaligned_shader_loads; case PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE: - return sscreen->info.has_sparse_vm_mappings ? RADEON_SPARSE_PAGE_SIZE : 0; + /* Gfx8 (Polaris11) hangs, so don't enable this on Gfx8 and older chips. */ + return sscreen->info.chip_class >= GFX9 && + sscreen->info.has_sparse_vm_mappings ? RADEON_SPARSE_PAGE_SIZE : 0; case PIPE_CAP_UMA: case PIPE_CAP_PREFER_IMM_ARRAYS_AS_CONSTBUF: