diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c index c71db3d0456..8adecbdfaae 100644 --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c @@ -179,6 +179,13 @@ radv_amdgpu_winsys_get_sync_provider(struct radeon_winsys *rws) return p->clone(p); } +static uint64_t +radv_amdgpu_winsys_filter_perftest_flags(uint64_t perftest_flags) +{ + return perftest_flags & (RADV_PERFTEST_NO_GTT_SPILL | RADV_PERFTEST_LOCAL_BOS | RADV_PERFTEST_NO_SAM | + RADV_PERFTEST_SAM | RADV_PERFTEST_BO_LIST); +} + VkResult radv_amdgpu_winsys_create(int fd, uint64_t debug_flags, uint64_t perftest_flags, bool reserve_vmid, bool is_virtio, struct radeon_winsys **winsys) @@ -189,6 +196,8 @@ radv_amdgpu_winsys_create(int fd, uint64_t debug_flags, uint64_t perftest_flags, ac_drm_device *dev; struct radv_amdgpu_winsys *ws = NULL; + perftest_flags = radv_amdgpu_winsys_filter_perftest_flags(perftest_flags); + r = ac_drm_device_initialize(fd, is_virtio, &drm_major, &drm_minor, &dev); if (r) { fprintf(stderr, "radv/amdgpu: failed to initialize device.\n");