forked from pool/xorg-x11-server
Accepting request 940758 from X11:XOrg
- Update to version 21.1.1 * This release fixes 4 recently reported security vulnerabilities and several regressions. * In particular, the real physical dimensions are no longer reported by the X server anymore as it was deemed to be a too disruptive change. X server will continue to report DPI as 96. - supersedes U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch - supersedes U_rendercompositeglyphs.patch - supersedes U_xfixes-Fix-out-of-bounds-access-in-ProcXFixesCreateP.patch - supersedes U_Xext-Fix-out-of-bounds-access-in-SProcScreenSaverSus.patch - supersedes U_record-Fix-out-of-bounds-access-in-SwapCreateRegiste.patch OBS-URL: https://build.opensuse.org/request/show/940758 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=400
This commit is contained in:
commit
af0e317ca9
@ -1,136 +0,0 @@
|
||||
From 05b3c681ea2f478c0cb941c2f8279919cf78de6d Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Strnad <strnadda@gmail.com>
|
||||
Date: Tue, 19 May 2020 15:52:35 +0200
|
||||
Subject: [PATCH] hw/xfree86: Propagate physical dimensions from DRM connector
|
||||
|
||||
Physical dimmension of display can be obtained not just by configuration or
|
||||
DDC, but also directly from kernel via drmModeGetConnector(). Until now
|
||||
xserver silently discarded these values even when no configuration nor EDID
|
||||
were present and fallbacked to default DPI.
|
||||
---
|
||||
hw/xfree86/common/xf86Helper.c | 30 ++++++++++++++++++------------
|
||||
hw/xfree86/modes/xf86Crtc.c | 6 ++++--
|
||||
hw/xfree86/modes/xf86RandR12.c | 6 ++++++
|
||||
3 files changed, 28 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c
|
||||
index 0389945a7..d03382d26 100644
|
||||
--- a/hw/xfree86/common/xf86Helper.c
|
||||
+++ b/hw/xfree86/common/xf86Helper.c
|
||||
@@ -55,6 +55,7 @@
|
||||
#include "xf86Xinput.h"
|
||||
#include "xf86InPriv.h"
|
||||
#include "mivalidate.h"
|
||||
+#include "xf86Crtc.h"
|
||||
|
||||
/* For xf86GetClocks */
|
||||
#if defined(CSRG_BASED) || defined(__GNU__)
|
||||
@@ -851,8 +852,9 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y)
|
||||
{
|
||||
MessageType from = X_DEFAULT;
|
||||
xf86MonPtr DDC = (xf86MonPtr) (pScrn->monitor->DDC);
|
||||
- int ddcWidthmm, ddcHeightmm;
|
||||
+ int probedWidthmm, probedHeightmm;
|
||||
int widthErr, heightErr;
|
||||
+ xf86OutputPtr compat = xf86CompatOutput(pScrn);
|
||||
|
||||
/* XXX Maybe there is no need for widthmm/heightmm in ScrnInfoRec */
|
||||
pScrn->widthmm = pScrn->monitor->widthmm;
|
||||
@@ -862,11 +864,15 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y)
|
||||
/* DDC gives display size in mm for individual modes,
|
||||
* but cm for monitor
|
||||
*/
|
||||
- ddcWidthmm = DDC->features.hsize * 10; /* 10mm in 1cm */
|
||||
- ddcHeightmm = DDC->features.vsize * 10; /* 10mm in 1cm */
|
||||
+ probedWidthmm = DDC->features.hsize * 10; /* 10mm in 1cm */
|
||||
+ probedHeightmm = DDC->features.vsize * 10; /* 10mm in 1cm */
|
||||
+ }
|
||||
+ else if (compat && compat->mm_width > 0 && compat->mm_height > 0) {
|
||||
+ probedWidthmm = compat->mm_width;
|
||||
+ probedHeightmm = compat->mm_height;
|
||||
}
|
||||
else {
|
||||
- ddcWidthmm = ddcHeightmm = 0;
|
||||
+ probedWidthmm = probedHeightmm = 0;
|
||||
}
|
||||
|
||||
if (monitorResolution > 0) {
|
||||
@@ -892,15 +898,15 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y)
|
||||
pScrn->widthmm, pScrn->heightmm);
|
||||
|
||||
/* Warn if config and probe disagree about display size */
|
||||
- if (ddcWidthmm && ddcHeightmm) {
|
||||
+ if (probedWidthmm && probedHeightmm) {
|
||||
if (pScrn->widthmm > 0) {
|
||||
- widthErr = abs(ddcWidthmm - pScrn->widthmm);
|
||||
+ widthErr = abs(probedWidthmm - pScrn->widthmm);
|
||||
}
|
||||
else {
|
||||
widthErr = 0;
|
||||
}
|
||||
if (pScrn->heightmm > 0) {
|
||||
- heightErr = abs(ddcHeightmm - pScrn->heightmm);
|
||||
+ heightErr = abs(probedHeightmm - pScrn->heightmm);
|
||||
}
|
||||
else {
|
||||
heightErr = 0;
|
||||
@@ -909,17 +915,17 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y)
|
||||
/* Should include config file name for monitor here */
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Probed monitor is %dx%d mm, using Displaysize %dx%d mm\n",
|
||||
- ddcWidthmm, ddcHeightmm, pScrn->widthmm,
|
||||
+ probedWidthmm, probedHeightmm, pScrn->widthmm,
|
||||
pScrn->heightmm);
|
||||
}
|
||||
}
|
||||
}
|
||||
- else if (ddcWidthmm && ddcHeightmm) {
|
||||
+ else if (probedWidthmm && probedHeightmm) {
|
||||
from = X_PROBED;
|
||||
xf86DrvMsg(pScrn->scrnIndex, from, "Display dimensions: (%d, %d) mm\n",
|
||||
- ddcWidthmm, ddcHeightmm);
|
||||
- pScrn->widthmm = ddcWidthmm;
|
||||
- pScrn->heightmm = ddcHeightmm;
|
||||
+ probedWidthmm, probedHeightmm);
|
||||
+ pScrn->widthmm = probedWidthmm;
|
||||
+ pScrn->heightmm = probedHeightmm;
|
||||
if (pScrn->widthmm > 0) {
|
||||
pScrn->xDpi =
|
||||
(int) ((double) pScrn->virtualX * MMPERINCH / pScrn->widthmm);
|
||||
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
|
||||
index c6e89e66f..202791774 100644
|
||||
--- a/hw/xfree86/modes/xf86Crtc.c
|
||||
+++ b/hw/xfree86/modes/xf86Crtc.c
|
||||
@@ -3256,8 +3256,10 @@ xf86OutputSetEDID(xf86OutputPtr output, xf86MonPtr edid_mon)
|
||||
free(output->MonInfo);
|
||||
|
||||
output->MonInfo = edid_mon;
|
||||
- output->mm_width = 0;
|
||||
- output->mm_height = 0;
|
||||
+ if (edid_mon) {
|
||||
+ output->mm_width = 0;
|
||||
+ output->mm_height = 0;
|
||||
+ }
|
||||
|
||||
if (debug_modes) {
|
||||
xf86DrvMsg(scrn->scrnIndex, X_INFO, "EDID for output %s\n",
|
||||
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
|
||||
index 50cbd043e..d4651f4e8 100644
|
||||
--- a/hw/xfree86/modes/xf86RandR12.c
|
||||
+++ b/hw/xfree86/modes/xf86RandR12.c
|
||||
@@ -806,6 +806,12 @@ xf86RandR12CreateScreenResources(ScreenPtr pScreen)
|
||||
mmWidth = output->conf_monitor->mon_width;
|
||||
mmHeight = output->conf_monitor->mon_height;
|
||||
}
|
||||
+ else if (output &&
|
||||
+ (output->mm_width > 0 &&
|
||||
+ output->mm_height > 0)) {
|
||||
+ mmWidth = output->mm_width;
|
||||
+ mmHeight = output->mm_height;
|
||||
+ }
|
||||
else {
|
||||
/*
|
||||
* Otherwise, just set the screen to DEFAULT_DPI
|
||||
--
|
||||
2.26.2
|
||||
|
@ -1,33 +0,0 @@
|
||||
From ceb711ec1f98ba18bce1dc6ee6a091e304a0c883 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Fri, 3 Dec 2021 10:24:20 +0100
|
||||
Subject: Add udev rule for HyperV devices
|
||||
|
||||
Add a udev rule to generate configuration files for HyperV-based
|
||||
graphics output.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
---
|
||||
hw/xfree86/os-support/linux/99-xorg-sysfs.rules | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/hw/xfree86/os-support/linux/99-xorg-sysfs.rules b/hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
index 940d18ef5..0cc9ad7b6 100644
|
||||
--- a/hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
+++ b/hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
@@ -27,3 +27,12 @@ ACTION=="add|remove", \
|
||||
SUBSYSTEM=="drm", \
|
||||
SUBSYSTEMS=="platform", \
|
||||
RUN+="/usr/sbin/x11sysfsconf $env{ACTION} $env{DEVPATH}"
|
||||
+
|
||||
+# HyperV graphics devices
|
||||
+ACTION=="add|remove", \
|
||||
+ KERNEL=="card[0-9]", \
|
||||
+ SUBSYSTEM=="drm", \
|
||||
+ SUBSYSTEMS=="vmbus", \
|
||||
+ KERNELS=="5620e0c7-8062-4dce-aeb7-520c7ef76171", \
|
||||
+ DRIVERS=="hyperv_drm", \
|
||||
+ RUN+="/usr/sbin/x11sysfsconf $env{ACTION} $env{DEVPATH}"
|
||||
--
|
||||
2.34.0
|
||||
|
@ -1,156 +0,0 @@
|
||||
From edc3e2e465ff1423e7c6ba217bee78a0e0b60f0e Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Tue, 2 Nov 2021 14:29:08 +0100
|
||||
Subject: Add udev scripts for configuration of platform devices
|
||||
|
||||
Generate configuration files for platform devices from udev rules
|
||||
as X does not support auto-configuration. Implement support for
|
||||
platform devices, such as simple-frambuffer, on top.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
---
|
||||
.../os-support/linux/99-xorg-sysfs.rules | 29 +++++++
|
||||
hw/xfree86/os-support/linux/Makefile.am | 5 ++
|
||||
hw/xfree86/os-support/linux/x11sysfsconf | 81 +++++++++++++++++++
|
||||
3 files changed, 115 insertions(+)
|
||||
create mode 100644 hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
create mode 100644 hw/xfree86/os-support/linux/x11sysfsconf
|
||||
|
||||
diff --git a/hw/xfree86/os-support/linux/99-xorg-sysfs.rules b/hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
new file mode 100644
|
||||
index 000000000..940d18ef5
|
||||
--- /dev/null
|
||||
+++ b/hw/xfree86/os-support/linux/99-xorg-sysfs.rules
|
||||
@@ -0,0 +1,29 @@
|
||||
+#
|
||||
+# Copyright © 2021 SUSE LINUX GmbH.
|
||||
+#
|
||||
+# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
+# copy of this software and associated documentation files (the "Software"),
|
||||
+# to deal in the Software without restriction, including without limitation
|
||||
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
+# and/or sell copies of the Software, and to permit persons to whom the
|
||||
+# Software is furnished to do so, subject to the following conditions:
|
||||
+#
|
||||
+# The above copyright notice and this permission notice (including the next
|
||||
+# paragraph) shall be included in all copies or substantial portions of the
|
||||
+# Software.
|
||||
+#
|
||||
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
+# DEALINGS IN THE SOFTWARE.
|
||||
+#
|
||||
+
|
||||
+# DRM graphics devices on the platform bus.
|
||||
+ACTION=="add|remove", \
|
||||
+ KERNEL=="card[0-9]", \
|
||||
+ SUBSYSTEM=="drm", \
|
||||
+ SUBSYSTEMS=="platform", \
|
||||
+ RUN+="/usr/sbin/x11sysfsconf $env{ACTION} $env{DEVPATH}"
|
||||
diff --git a/hw/xfree86/os-support/linux/Makefile.am b/hw/xfree86/os-support/linux/Makefile.am
|
||||
index 4392fe8d4..6c7b8aa09 100644
|
||||
--- a/hw/xfree86/os-support/linux/Makefile.am
|
||||
+++ b/hw/xfree86/os-support/linux/Makefile.am
|
||||
@@ -42,3 +42,8 @@ liblinux_la_SOURCES = linux.h lnx_init.c lnx_video.c \
|
||||
AM_CFLAGS = -DHAVE_SYSV_IPC $(DIX_CFLAGS) $(XORG_CFLAGS) $(PLATFORM_DEFINES)
|
||||
|
||||
AM_CPPFLAGS = $(XORG_INCS) $(PLATFORM_INCLUDES) $(LIBDRM_CFLAGS)
|
||||
+
|
||||
+dist_sbin_SCRIPTS = x11sysfsconf
|
||||
+
|
||||
+udevrulesdir = @sysconfdir@/udev/rules.d
|
||||
+dist_udevrules_DATA = 99-xorg-sysfs.rules
|
||||
diff --git a/hw/xfree86/os-support/linux/x11sysfsconf b/hw/xfree86/os-support/linux/x11sysfsconf
|
||||
new file mode 100644
|
||||
index 000000000..f5eabde6e
|
||||
--- /dev/null
|
||||
+++ b/hw/xfree86/os-support/linux/x11sysfsconf
|
||||
@@ -0,0 +1,81 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+#
|
||||
+# Copyright © 2021 SUSE LINUX GmbH.
|
||||
+#
|
||||
+# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
+# copy of this software and associated documentation files (the "Software"),
|
||||
+# to deal in the Software without restriction, including without limitation
|
||||
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
+# and/or sell copies of the Software, and to permit persons to whom the
|
||||
+# Software is furnished to do so, subject to the following conditions:
|
||||
+#
|
||||
+# The above copyright notice and this permission notice (including the next
|
||||
+# paragraph) shall be included in all copies or substantial portions of the
|
||||
+# Software.
|
||||
+#
|
||||
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
+# DEALINGS IN THE SOFTWARE.
|
||||
+#
|
||||
+
|
||||
+#
|
||||
+# x11sysfsconf - generate X11 configuration files from sysfs device paths
|
||||
+#
|
||||
+# x11sysfsconf adds or removes X11 configuration files from sysfs
|
||||
+# device paths. The generated file contains a Device section with
|
||||
+# the device's identifier and bus id.
|
||||
+#
|
||||
+# Kernel graphics drivers export system framebuffers as platform
|
||||
+# devices, which cannot be configured by X automatically. Instead
|
||||
+# X expects a configuration file with the device's identifier and
|
||||
+# bus id. This script, plus a udev rule, automatically creates and
|
||||
+# removes rsp configuration for each system framebuffer.
|
||||
+#
|
||||
+# Besides system framebuffers, several other kernel graphics drivers
|
||||
+# operate on platform device. Examples are hyperv_drm and several
|
||||
+# embedded ARM SoCs. x11sysfsconf can generate X11 configuration for
|
||||
+# all such cases.
|
||||
+#
|
||||
+# The configuration file lives under /run, so that it's being removed
|
||||
+# upon reboots.
|
||||
+#
|
||||
+# Copy this script to /usr/sbin and add the rsp udev rule to
|
||||
+# /etc/udev/rules.d.
|
||||
+#
|
||||
+# TODO:
|
||||
+# - Support non-platform devices, if any
|
||||
+# - Improve error handling
|
||||
+#
|
||||
+
|
||||
+set -e
|
||||
+
|
||||
+filename=`basename $2`
|
||||
+
|
||||
+runconfpath="/run/X11/xorg.conf.d"
|
||||
+confname="10-$filename.conf"
|
||||
+tempname="$confname.$$"
|
||||
+
|
||||
+abs_runconfpath="$runconfpath/$confname"
|
||||
+abs_temppath="$runconfpath/$tempname"
|
||||
+
|
||||
+case $1 in
|
||||
+"add")
|
||||
+ mkdir -p $runconfpath
|
||||
+ echo -e "Section \"Device\"\n"\
|
||||
+ "\tIdentifier \"Device-$filename\"\n"\
|
||||
+ "\tBusID \"platform:/sys$2\"\n"\
|
||||
+ "EndSection" > $abs_temppath
|
||||
+ mv $abs_temppath $abs_runconfpath
|
||||
+ ;;
|
||||
+"remove")
|
||||
+ rm -f $abs_runconfpath
|
||||
+ ;;
|
||||
+*)
|
||||
+ echo "Usage: $0 [add|remove] DEVPATH"
|
||||
+ ;;
|
||||
+esac
|
||||
--
|
||||
2.34.0
|
||||
|
@ -1,38 +0,0 @@
|
||||
From f28005325922c47d59f9735acd5aa87a3e14a53d Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Tue, 30 Nov 2021 14:12:55 +0100
|
||||
Subject: Revert "xf86: Accept devices with the 'simpledrm'
|
||||
driver."
|
||||
|
||||
This reverts commit b89fdd523e2c9e9b0cdf37b263833c4b0a8868b8. Using
|
||||
simpledrm, or any other platform driver, can now be achieved via udev-
|
||||
generated configuration files. A driver-specific workaround is no
|
||||
longer needed.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
---
|
||||
hw/xfree86/common/xf86platformBus.c | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
|
||||
index 45028f7a6..0e0a995ac 100644
|
||||
--- a/hw/xfree86/common/xf86platformBus.c
|
||||
+++ b/hw/xfree86/common/xf86platformBus.c
|
||||
@@ -557,13 +557,8 @@ xf86platformProbeDev(DriverPtr drvp)
|
||||
}
|
||||
else {
|
||||
/* for non-seat0 servers assume first device is the master */
|
||||
- if (ServerIsNotSeat0()) {
|
||||
+ if (ServerIsNotSeat0())
|
||||
break;
|
||||
- } else {
|
||||
- /* Accept the device if the driver is simpledrm */
|
||||
- if (strcmp(xf86_platform_devices[j].attribs->driver, "simpledrm") == 0)
|
||||
- break;
|
||||
- }
|
||||
|
||||
if (xf86IsPrimaryPlatform(&xf86_platform_devices[j]))
|
||||
break;
|
||||
--
|
||||
2.34.0
|
||||
|
@ -1,86 +0,0 @@
|
||||
From cc166e8ba0d282399b3f00f34b89d6c3f8aa7394 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Tue, 2 Nov 2021 14:29:08 +0100
|
||||
Subject: Support configuration files under /run/X11/xorg.conf.d
|
||||
|
||||
Make the X server look for runtime-generated configuration files
|
||||
under /run/X11/xorg.conf.d. This is useful for dynamically setting
|
||||
up platform devices during boot (e.g., via udev).
|
||||
|
||||
By the rules for /run, all configuration files are cleared on
|
||||
reboots. So even hard resets won't populate the system with old,
|
||||
obsolete configuration files.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
---
|
||||
hw/xfree86/common/xf86Config.c | 8 ++++----
|
||||
hw/xfree86/man/xorg.conf.man | 6 ++++++
|
||||
2 files changed, 10 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
|
||||
index 5d814c148..939db755e 100644
|
||||
--- a/hw/xfree86/common/xf86Config.c
|
||||
+++ b/hw/xfree86/common/xf86Config.c
|
||||
@@ -95,12 +95,12 @@
|
||||
#endif
|
||||
#ifndef ALL_CONFIGDIRPATH
|
||||
#define ALL_CONFIGDIRPATH "%A," "%R," \
|
||||
- "/etc/X11/%R," "%C/X11/%R," \
|
||||
- "/etc/X11/%X," "%C/X11/%X"
|
||||
+ "/run/X11/%R," "/etc/X11/%R," "%C/X11/%R," \
|
||||
+ "/run/X11/%X," "/etc/X11/%X," "%C/X11/%X"
|
||||
#endif
|
||||
#ifndef RESTRICTED_CONFIGDIRPATH
|
||||
-#define RESTRICTED_CONFIGDIRPATH "/etc/X11/%R," "%C/X11/%R," \
|
||||
- "/etc/X11/%X," "%C/X11/%X"
|
||||
+#define RESTRICTED_CONFIGDIRPATH "/run/X11/%R," "/etc/X11/%R," "%C/X11/%R," \
|
||||
+ "/run/X11/%X," "/etc/X11/%X," "%C/X11/%X"
|
||||
#endif
|
||||
#ifndef SYS_CONFIGDIRPATH
|
||||
#define SYS_CONFIGDIRPATH "%D/X11/%X"
|
||||
diff --git a/hw/xfree86/man/xorg.conf.man b/hw/xfree86/man/xorg.conf.man
|
||||
index ac88d7e7a..31ff1f0fd 100644
|
||||
--- a/hw/xfree86/man/xorg.conf.man
|
||||
+++ b/hw/xfree86/man/xorg.conf.man
|
||||
@@ -35,8 +35,10 @@ server is started as a normal user:
|
||||
.PP
|
||||
.RS 4
|
||||
.nf
|
||||
+.IR /run/X11/ <cmdline>
|
||||
.IR /etc/X11/ <cmdline>
|
||||
.IR @projectroot@/etc/X11/ <cmdline>
|
||||
+.IB /run/X11/ $XORGCONFIG
|
||||
.IB /etc/X11/ $XORGCONFIG
|
||||
.IB @projectroot@/etc/X11/ $XORGCONFIG
|
||||
.I /etc/X11/xorg.conf
|
||||
@@ -66,9 +68,11 @@ search locations are as follows:
|
||||
.RS 4
|
||||
.nf
|
||||
<cmdline>
|
||||
+.IR /run/X11/ <cmdline>
|
||||
.IR /etc/X11/ <cmdline>
|
||||
.IR @projectroot@/etc/X11/ <cmdline>
|
||||
.B $XORGCONFIG
|
||||
+.IB /run/X11/ $XORGCONFIG
|
||||
.IB /etc/X11/ $XORGCONFIG
|
||||
.IB @projectroot@/etc/X11/ $XORGCONFIG
|
||||
.I /etc/X11/xorg.conf
|
||||
@@ -102,6 +106,7 @@ directories when the server is started as a normal user:
|
||||
.nf
|
||||
.IR /etc/X11/ <cmdline>
|
||||
.IR @sysconfdir@/X11/ <cmdline>
|
||||
+.I /run/X11/@xconfigdir@
|
||||
.I /etc/X11/@xconfigdir@
|
||||
.I @sysconfdir@/X11/@xconfigdir@
|
||||
.fi
|
||||
@@ -121,6 +126,7 @@ config directory search locations are as follows:
|
||||
<cmdline>
|
||||
.IR /etc/X11/ <cmdline>
|
||||
.IR @sysconfdir@/X11/ <cmdline>
|
||||
+.I /run/X11/@xconfigdir@
|
||||
.I /etc/X11/@xconfigdir@
|
||||
.I @sysconfdir@/X11/@xconfigdir@
|
||||
.fi
|
||||
--
|
||||
2.34.0
|
||||
|
27
u_xf86-Accept-devices-with-the-hyperv_drm-driver.patch
Normal file
27
u_xf86-Accept-devices-with-the-hyperv_drm-driver.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 672050be2553afaac6810a4d85d8b5cf1656d380 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
Date: Mon, 13 Dec 2021 16:10:35 +0100
|
||||
Subject: [PATCH] xf86: Accept devices with the 'hyperv_drm' driver.
|
||||
|
||||
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
||||
---
|
||||
hw/xfree86/common/xf86platformBus.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
|
||||
index 45028f7a6..071f44b2a 100644
|
||||
--- a/hw/xfree86/common/xf86platformBus.c
|
||||
+++ b/hw/xfree86/common/xf86platformBus.c
|
||||
@@ -560,6 +560,9 @@ xf86platformProbeDev(DriverPtr drvp)
|
||||
if (ServerIsNotSeat0()) {
|
||||
break;
|
||||
} else {
|
||||
+ /* Accept the device if the driver is hyperv_drm */
|
||||
+ if (strcmp(xf86_platform_devices[j].attribs->driver, "hyperv_drm") == 0)
|
||||
+ break;
|
||||
/* Accept the device if the driver is simpledrm */
|
||||
if (strcmp(xf86_platform_devices[j].attribs->driver, "simpledrm") == 0)
|
||||
break;
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:782e7fef2ca0c7cbe60a937b8bf42dac69c904fb841950fd0363e1c2346ea755
|
||||
size 4958508
|
3
xorg-server-21.1.2.tar.xz
Normal file
3
xorg-server-21.1.2.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
|
||||
size 4967784
|
@ -1,17 +1,71 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 15 15:08:07 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- Update to version 21.1.1
|
||||
* This release fixes 4 recently reported security vulnerabilities and
|
||||
several regressions.
|
||||
* In particular, the real physical dimensions are no longer reported
|
||||
by the X server anymore as it was deemed to be a too disruptive
|
||||
change. X server will continue to report DPI as 96.
|
||||
- supersedes U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch
|
||||
- supersedes U_rendercompositeglyphs.patch
|
||||
- supersedes U_xfixes-Fix-out-of-bounds-access-in-ProcXFixesCreateP.patch
|
||||
- supersedes U_Xext-Fix-out-of-bounds-access-in-SProcScreenSaverSus.patch
|
||||
- supersedes U_record-Fix-out-of-bounds-access-in-SwapCreateRegiste.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 14 20:21:19 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_xfixes-Fix-out-of-bounds-access-in-ProcXFixesCreateP.patch
|
||||
* CVE-2021-4009/ZDI-CAN-14950 (bsc#1190487)
|
||||
The handler for the CreatePointerBarrier request of the XFixes
|
||||
extension does not properly validate the request length leading
|
||||
to out of bounds memory write.
|
||||
- U_Xext-Fix-out-of-bounds-access-in-SProcScreenSaverSus.patch
|
||||
* CVE-2021-4010/ZDI-CAN-14951 (bsc#1190488)
|
||||
The handler for the Suspend request of the Screen Saver extension
|
||||
does not properly validate the request length leading to out of
|
||||
bounds memory write.
|
||||
- U_record-Fix-out-of-bounds-access-in-SwapCreateRegiste.patch
|
||||
* CVE-2021-4011/ZDI-CAN-14952 (bsc#1190489)
|
||||
The handlers for the RecordCreateContext and RecordRegisterClients
|
||||
requests of the Record extension do not properly validate the request
|
||||
length leading to out of bounds memory write.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 14 15:31:41 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_rendercompositeglyphs.patch
|
||||
* X.Org Server SProcRenderCompositeGlyphs Out-Of-Bounds Access
|
||||
Privilege Escalation Vulnerability [CVE-2021-4008, ZDI-CAN-14192]
|
||||
(boo#1193030)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 14 14:14:45 UTC 2021 - Thomas Zimmermann <tzimmermann@suse.de>
|
||||
|
||||
- u_Support-configuration-files-under-run-X11-xorg.conf..patch
|
||||
- u_Add-udev-scripts-for-configuration-of-platform-devic.patch
|
||||
- u_Add-udev-rule-for-HyperV-devices.patch
|
||||
* Remove udev-based configuration
|
||||
- u_Revert-xf86-Accept-devices-with-the-simpledrm-driver.patch
|
||||
* Restore simpledrm workaround
|
||||
- u_xf86-Accept-devices-with-the-hyperv_drm-driver.patch
|
||||
* Add workaround to support hyperv_drm
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 3 14:41:55 UTC 2021 - Thomas Zimmermann <tzimmermann@suse.com>
|
||||
|
||||
- u_pci-primary-Fix-up-primary-PCI-device-detection-for-the-platfrom-bus.patch
|
||||
* Fix SEGFAULT when parsing bus IDs of NULL
|
||||
* Fix SEGFAULT when parsing bus IDs of NULL (boo#1193250)
|
||||
- u_Support-configuration-files-under-run-X11-xorg.conf..patch
|
||||
* Support configuration files under /run. Required for generating
|
||||
configuration files via udev.
|
||||
configuration files via udev. (boo#1193250)
|
||||
- u_Add-udev-scripts-for-configuration-of-platform-devic.patch
|
||||
* Generate configuration files for platform devices
|
||||
* Generate configuration files for platform devices (boo#1193250)
|
||||
- u_Revert-xf86-Accept-devices-with-the-simpledrm-driver.patch
|
||||
* Code has been obsoleted by udev patchset
|
||||
* Code has been obsoleted by udev patchset (boo#1193250)
|
||||
- u_Add-udev-rule-for-HyperV-devices.patch
|
||||
* Same as for platform devices, but on HyperV
|
||||
* Same as for platform devices, but on HyperV (boo#1193250)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 19 15:49:28 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
@ -36,7 +36,7 @@
|
||||
%endif
|
||||
|
||||
Name: xorg-x11-server
|
||||
Version: 21.1.1
|
||||
Version: 21.1.2
|
||||
Release: 0
|
||||
URL: http://xorg.freedesktop.org/
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
@ -199,7 +199,6 @@ Patch1: N_default-module-path.diff
|
||||
Patch2: N_zap_warning_xserver.diff
|
||||
Patch3: N_driver-autoconfig.diff
|
||||
Patch4: N_fix_fglrx_screendepth_issue.patch
|
||||
Patch5: U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch
|
||||
Patch6: N_fix-dpi-values.diff
|
||||
Patch7: N_Install-Avoid-failure-on-wrapper-installation.patch
|
||||
Patch8: u_xorg-wrapper-Drop-supplemental-group-IDs.patch
|
||||
@ -239,10 +238,7 @@ Patch1900: u_no-lto-for-tests.patch
|
||||
|
||||
Patch1910: u_modesetting-Fix-dirty-updates-for-sw-rotation.patch
|
||||
|
||||
Patch1920: u_Support-configuration-files-under-run-X11-xorg.conf..patch
|
||||
Patch1921: u_Add-udev-scripts-for-configuration-of-platform-devic.patch
|
||||
Patch1922: u_Revert-xf86-Accept-devices-with-the-simpledrm-driver.patch
|
||||
Patch1923: u_Add-udev-rule-for-HyperV-devices.patch
|
||||
Patch1920: u_xf86-Accept-devices-with-the-hyperv_drm-driver.patch
|
||||
|
||||
%description
|
||||
This package contains the X.Org Server.
|
||||
@ -359,8 +355,6 @@ sh %{SOURCE92} --verify . %{SOURCE91}
|
||||
%patch2 -p1
|
||||
%patch3 -p0
|
||||
%patch4 -p0
|
||||
# back to 96 dpi fix
|
||||
%patch5 -p1 -R
|
||||
%patch6 -p0
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
@ -399,9 +393,6 @@ sh %{SOURCE92} --verify . %{SOURCE91}
|
||||
%patch1900 -p1
|
||||
%patch1910 -p1
|
||||
%patch1920 -p1
|
||||
%patch1921 -p1
|
||||
%patch1922 -p1
|
||||
%patch1923 -p1
|
||||
|
||||
%build
|
||||
%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects
|
||||
@ -603,12 +594,6 @@ fi
|
||||
%endif
|
||||
%{_bindir}/xorg-backtrace
|
||||
|
||||
# sysfb support
|
||||
%{_sbindir}/x11sysfsconf
|
||||
%dir %{_sysconfdir}/udev
|
||||
%dir %{_sysconfdir}/udev/rules.d
|
||||
%{_sysconfdir}/udev/rules.d/99-xorg-sysfs.rules
|
||||
|
||||
%if 0%{?have_wayland} == 1
|
||||
%files wayland
|
||||
%{_bindir}/Xwayland
|
||||
|
Loading…
Reference in New Issue
Block a user