aboutsummaryrefslogtreecommitdiffstats
path: root/x11-servers/xorg-server
diff options
context:
space:
mode:
authorzeising <zeising@FreeBSD.org>2019-01-09 15:25:55 +0800
committerzeising <zeising@FreeBSD.org>2019-01-09 15:25:55 +0800
commitf9b3b60b9f78402764fac715af83c9c43db62fd8 (patch)
tree2b8d1cc19480442750edd3bb5f4cde2b03190802 /x11-servers/xorg-server
parent89a579c316b78873c58bf40042a7e03aa0b6d58d (diff)
downloadfreebsd-ports-gnome-f9b3b60b9f78402764fac715af83c9c43db62fd8.tar.gz
freebsd-ports-gnome-f9b3b60b9f78402764fac715af83c9c43db62fd8.tar.zst
freebsd-ports-gnome-f9b3b60b9f78402764fac715af83c9c43db62fd8.zip
Fix illegal instruction when running in kvm/qemu
Fix illegal instruction when running xserver in kvm or qemu (and possibly others) virtualisation. This is solved by disabling sse instructions while compiling the xf86SlowBcopy (don't ask) function. This fix was originally committed by dim as r396167 in 2015, and then most likely accidentally removed in r433863 in 2017. Bump portrevision Original commit message: > Disable use of SSE instructions in Xorg's xf86SlowBcopy() function. > > When such instructions are used to copy data from/to mapped video > memory, some hypervisors (e.g. KVM, Microsoft Hyper-V) can generate > SIGILL or SIGBUS exceptions, causing Xorg to crash. PR: 202643 Reported by: nogcjx@fastmail.fm Requested by: dim Diagnose and fix by: dim MFH: 2019Q1
Diffstat (limited to 'x11-servers/xorg-server')
-rw-r--r--x11-servers/xorg-server/Makefile2
-rw-r--r--x11-servers/xorg-server/files/patch-Xserver-hw-xfree86-os-support-misc-Makefile.in12
2 files changed, 13 insertions, 1 deletions
diff --git a/x11-servers/xorg-server/Makefile b/x11-servers/xorg-server/Makefile
index 06dfd7110a8c..8052600a8717 100644
--- a/x11-servers/xorg-server/Makefile
+++ b/x11-servers/xorg-server/Makefile
@@ -3,7 +3,7 @@
PORTNAME?= xorg-server
PORTVERSION?= 1.18.4
-PORTREVISION?= 10
+PORTREVISION?= 11
PORTEPOCH?= 1
CATEGORIES= x11-servers
MASTER_SITES= XORG/individual/xserver
diff --git a/x11-servers/xorg-server/files/patch-Xserver-hw-xfree86-os-support-misc-Makefile.in b/x11-servers/xorg-server/files/patch-Xserver-hw-xfree86-os-support-misc-Makefile.in
new file mode 100644
index 000000000000..8a05ae6b33cb
--- /dev/null
+++ b/x11-servers/xorg-server/files/patch-Xserver-hw-xfree86-os-support-misc-Makefile.in
@@ -0,0 +1,12 @@
+--- hw/xfree86/os-support/misc/Makefile.in.orig 2015-09-23 10:21:18.470900000 +0200
++++ hw/xfree86/os-support/misc/Makefile.in 2015-09-23 10:22:34.979974000 +0200
+@@ -530,7 +530,8 @@
+
+ #AM_LDFLAGS = -r
+ AM_CPPFLAGS = $(XORG_INCS)
+-AM_CFLAGS = $(XORG_CFLAGS) $(DIX_CFLAGS)
++@I386_VIDEO_TRUE@I386_VIDEO_CFLAGS = -mno-sse
++AM_CFLAGS = $(I386_VIDEO_CFLAGS) $(XORG_CFLAGS) $(DIX_CFLAGS)
+ EXTRA_DIST = $(I386_SRCS) $(PORTIO_SRCS)
+ all: all-am
+