diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile index a6089a5a2913..40b2a8df0477 100644 --- a/emulators/rpcs3/Makefile +++ b/emulators/rpcs3/Makefile @@ -4,6 +4,7 @@ PORTNAME= rpcs3 DISTVERSIONPREFIX= v DISTVERSION= 0.0.15-11892 # git rev-list --count HEAD DISTVERSIONSUFFIX= -g3ae7debc1 +PORTREVISION= 1 CATEGORIES= emulators MAINTAINER= jbeich@FreeBSD.org diff --git a/emulators/rpcs3/files/patch-userptr b/emulators/rpcs3/files/patch-userptr new file mode 100644 index 000000000000..e090db6880d2 --- /dev/null +++ b/emulators/rpcs3/files/patch-userptr @@ -0,0 +1,15 @@ +VK_EXT_external_memory_host depends on userptr, so disable on Intel until +https://github.com/FreeBSDDesktop/kms-drm/issues/197 + +--- rpcs3/Emu/RSX/VK/VKDMA.cpp.orig 2021-02-28 23:32:23 UTC ++++ rpcs3/Emu/RSX/VK/VKDMA.cpp +@@ -264,7 +264,8 @@ namespace vk + true; + #else + // Anything running on AMDGPU kernel driver will not work due to the check for fd-backed memory allocations +- const bool allow_host_buffers = (vendor != driver_vendor::AMD && vendor != driver_vendor::RADV); ++ // Intel userptr on non-Linux may not work or require root ++ const bool allow_host_buffers = (vendor != driver_vendor::AMD && vendor != driver_vendor::RADV && vendor != driver_vendor::INTEL); + #endif + if (allow_host_buffers && g_render_device->get_external_memory_host_support()) + {