venus: force different device on NV proprietary

If forcing prime blit via disabling modifier support is not sufficient,
take a step further to force different device so that the memory type
choice is more conservative.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34965>
This commit is contained in:
Yiwei Zhang 2025-05-13 23:55:15 -07:00
parent 64ce37b2d9
commit d7f6400762

View file

@ -525,8 +525,22 @@ vn_physical_device_sanitize_properties(struct vn_physical_device *physical_dev)
/* force prime blit on NV proprietary driver */
if (props->driverID == VK_DRIVER_ID_NVIDIA_PROPRIETARY) {
physical_dev->base.vk.supported_extensions
.EXT_image_drm_format_modifier = false;
/* intentionally fail same_gpu check on x11 */
physical_dev->base.vk.supported_extensions.EXT_pci_bus_info = false;
props->pciDomain = 0;
props->pciBus = 0;
props->pciDevice = 0;
props->pciFunction = 0;
/* intentionally fail same_gpu check on wayland */
physical_dev->base.vk.supported_extensions.EXT_physical_device_drm =
false;
props->drmHasPrimary = false;
props->drmHasRender = false;
props->drmPrimaryMajor = 0;
props->drmPrimaryMinor = 0;
props->drmRenderMajor = 0;
props->drmRenderMinor = 0;
}
/* store renderer VkDriverId for implementation specific workarounds */