From 9385ad9afadd678d27b042e94117e1b5282384d0 Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Sun, 17 Feb 2019 23:20:10 +0000 Subject: [PATCH] graphics/mesa-dri: work around modesetting(4x) crash after r490570 PR: 235203 235487 Reported by: jwb, Philip Homburg Obtained from: DPorts --- graphics/mesa-dri/Makefile | 1 + ...ch-src_mesa_drivers_dri_i965_brw__bufmgr.c | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 graphics/mesa-dri/files/patch-src_mesa_drivers_dri_i965_brw__bufmgr.c diff --git a/graphics/mesa-dri/Makefile b/graphics/mesa-dri/Makefile index b221669d7fe3..102b44f53f51 100644 --- a/graphics/mesa-dri/Makefile +++ b/graphics/mesa-dri/Makefile @@ -3,6 +3,7 @@ PORTNAME= mesa-dri PORTVERSION= ${MESAVERSION} +PORTREVISION= 1 CATEGORIES= graphics COMMENT= OpenGL hardware acceleration drivers for DRI2+ diff --git a/graphics/mesa-dri/files/patch-src_mesa_drivers_dri_i965_brw__bufmgr.c b/graphics/mesa-dri/files/patch-src_mesa_drivers_dri_i965_brw__bufmgr.c new file mode 100644 index 000000000000..19ccb93d0664 --- /dev/null +++ b/graphics/mesa-dri/files/patch-src_mesa_drivers_dri_i965_brw__bufmgr.c @@ -0,0 +1,21 @@ +--- src/mesa/drivers/dri/i965/brw_bufmgr.c.orig 2019-01-17 11:26:23 UTC ++++ src/mesa/drivers/dri/i965/brw_bufmgr.c +@@ -1720,6 +1720,7 @@ brw_bufmgr_init(struct gen_device_info *devinfo, int f + if (devinfo->gen >= 8 && gtt_size > _4GB) { + bufmgr->initial_kflags |= EXEC_OBJECT_SUPPORTS_48B_ADDRESS; + ++#if defined(__DRM_NEXT__) + /* Allocate VMA in userspace if we have softpin and full PPGTT. */ + if (gem_param(fd, I915_PARAM_HAS_EXEC_SOFTPIN) > 0 && + gem_param(fd, I915_PARAM_HAS_ALIASING_PPGTT) > 1) { +@@ -1729,6 +1730,10 @@ brw_bufmgr_init(struct gen_device_info *devinfo, int f + PAGE_SIZE, _4GB); + util_vma_heap_init(&bufmgr->vma_allocator[BRW_MEMZONE_OTHER], + 1 * _4GB, gtt_size - 1 * _4GB); ++#else ++ /* soft-spin is broken on DragonFly and drm-legacy-kmod */ ++ if (false) { ++#endif + } else if (devinfo->gen >= 10) { + /* Softpin landed in 4.5, but GVT used an aliasing PPGTT until + * kernel commit 6b3816d69628becb7ff35978aa0751798b4a940a in