Reviewed-by: Bas Nieuwenhuizen <[email protected]>
On Thu, Dec 28, 2017 at 7:14 AM, Dave Airlie <[email protected]> wrote: > From: Dave Airlie <[email protected]> > > These seem mildly unstable on vega, crashing CTS in various fun ways, > and looks like leaking memory. > > Disable for now, but leave the option to enable them. > > Signed-off-by: Dave Airlie <[email protected]> > --- > src/amd/vulkan/radv_debug.h | 1 + > src/amd/vulkan/radv_device.c | 1 + > src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 2 +- > src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c | 1 + > src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h | 1 + > 5 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h > index 8e09c36528..af07564833 100644 > --- a/src/amd/vulkan/radv_debug.h > +++ b/src/amd/vulkan/radv_debug.h > @@ -47,6 +47,7 @@ enum { > enum { > RADV_PERFTEST_NO_BATCHCHAIN = 0x1, > RADV_PERFTEST_SISCHED = 0x2, > + RADV_PERFTEST_LOCAL_BOS = 0x4, > }; > > bool > diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c > index 788252c2c5..2a249b95e2 100644 > --- a/src/amd/vulkan/radv_device.c > +++ b/src/amd/vulkan/radv_device.c > @@ -343,6 +343,7 @@ radv_get_debug_option_name(int id) > static const struct debug_control radv_perftest_options[] = { > {"nobatchchain", RADV_PERFTEST_NO_BATCHCHAIN}, > {"sisched", RADV_PERFTEST_SISCHED}, > + {"localbos", RADV_PERFTEST_LOCAL_BOS}, > {NULL, 0} > }; > > diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c > b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c > index ffcc1a2ad3..4b11823b0a 100644 > --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c > +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c > @@ -335,7 +335,7 @@ radv_amdgpu_winsys_bo_create(struct radeon_winsys *_ws, > request.flags |= AMDGPU_GEM_CREATE_CPU_GTT_USWC; > if (!(flags & RADEON_FLAG_IMPLICIT_SYNC) && ws->info.drm_minor >= 22) > request.flags |= AMDGPU_GEM_CREATE_EXPLICIT_SYNC; > - if (flags & RADEON_FLAG_NO_INTERPROCESS_SHARING && ws->info.drm_minor > >= 20) { > + if (flags & RADEON_FLAG_NO_INTERPROCESS_SHARING && ws->info.drm_minor > >= 20 && ws->use_local_bos) { > bo->base.is_local = true; > request.flags |= AMDGPU_GEM_CREATE_VM_ALWAYS_VALID; > } > diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c > b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c > index 0c6374e71c..42e83f1482 100644 > --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c > +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c > @@ -177,6 +177,7 @@ radv_amdgpu_winsys_create(int fd, uint64_t debug_flags, > uint64_t perftest_flags) > if (debug_flags & RADV_DEBUG_NO_IBS) > ws->use_ib_bos = false; > > + ws->use_local_bos = perftest_flags & RADV_PERFTEST_LOCAL_BOS; > ws->zero_all_vram_allocs = debug_flags & RADV_DEBUG_ZERO_VRAM; > ws->batchchain = !(perftest_flags & RADV_PERFTEST_NO_BATCHCHAIN); > LIST_INITHEAD(&ws->global_bo_list); > diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h > b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h > index 66c93475e5..d6af6052a6 100644 > --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h > +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h > @@ -46,6 +46,7 @@ struct radv_amdgpu_winsys { > bool batchchain; > bool use_ib_bos; > bool zero_all_vram_allocs; > + bool use_local_bos; > unsigned num_buffers; > > pthread_mutex_t global_bo_list_lock; > -- > 2.14.3 > > _______________________________________________ > mesa-dev mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
