Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xorg-x11-server for openSUSE:Factory
checked in at 2021-11-11 21:35:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xorg-x11-server (Old)
and /work/SRC/openSUSE:Factory/.xorg-x11-server.new.1890 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xorg-x11-server"
Thu Nov 11 21:35:50 2021 rev:397 rq:930821 version:21.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/xorg-x11-server/xorg-x11-server.changes
2021-08-02 12:04:51.977658631 +0200
+++
/work/SRC/openSUSE:Factory/.xorg-x11-server.new.1890/xorg-x11-server.changes
2021-11-11 21:35:55.396866827 +0100
@@ -1,0 +2,54 @@
+Thu Nov 11 08:35:39 UTC 2021 - Stefan Dirsch <[email protected]>
+
+- U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch
+ * reverse apply this one to go back to fixed 96 dpi (gitlab
+ fdo/xserver issue#1241)
+- N_fix-dpi-values.diff
+ * back to version for xserver < 21.1.0
+
+-------------------------------------------------------------------
+Sun Nov 7 09:22:47 UTC 2021 - Stefan Dirsch <[email protected]>
+
+- Update to version 21.1.1
+ * s/__/@/ in inputtestdrv manpage
+ * Make xf86CompatOutput() return NULL when there are no privates
+ * Makefile.am: Add missing meson build files to release tarball
+
+-------------------------------------------------------------------
+Wed Oct 27 11:58:32 UTC 2021 - Stefan Dirsch <[email protected]>
+
+- Update to version 21.1.0
+ * The meson support is now fully mature. While autotools support
+ will still be kept for this release series, it will be dropped
+ afterwards.
+ * Glamor support for Xvfb.
+ * Variable refresh rate support in the modesetting driver.
+ * XInput 2.4 support which adds touchpad gestures.
+ * DMX DDX has been removed.
+ * X server now correctly reports display DPI in more cases. This
+ may affect rendering of client applications that have their own
+ workarounds for hi-DPI screens.
+ * A large number of small features and various bug fixes.
+- updated xorg-server-provides
+- supersedes patches
+ * U_Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch
+ * U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch
+ * U_glamor_egl-Reject-OpenGL-2.1-early-on.patch
+ * u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
+- refreshed patches
+ * N_fix-dpi-values.diff
+ * N_zap_warning_xserver.diff
+ * u_modesetting-Fix-dirty-updates-for-sw-rotation.patch
+ * u_randr-Do-not-crash-if-slave-screen-does-not-have-pro.patch
+ * u_vesa-Add-VBEDPMSGetCapabilities-VBEDPMSGet.patch
+- disabled n_xserver-optimus-autoconfig-hack.patch, which I believe is
+ superseded by:
+ commit 078277e4d92f05a90c4715d61b89b9d9d38d68ea
+ Author: Dave Airlie <[email protected]>
+ Date: Fri Aug 17 09:49:24 2012 +1000
+
+ xf86: autobind GPUs to the screen
+- added pkgconfig(libxcvt)
+- cvt binary moved to libxcvt0 package
+
+-------------------------------------------------------------------
Old:
----
U_Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch
U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch
U_glamor_egl-Reject-OpenGL-2.1-early-on.patch
u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
xorg-server-1.20.13.tar.xz
New:
----
U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch
xorg-server-21.1.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-server.spec ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.588867697 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.588867697 +0100
@@ -40,7 +40,7 @@
%endif
Name: xorg-x11-server
-Version: 1.20.13
+Version: 21.1.1
Release: 0
URL: http://xorg.freedesktop.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -72,7 +72,6 @@
BuildRequires: pkgconfig(compositeproto)
BuildRequires: pkgconfig(damageproto) >= 1.1
BuildRequires: pkgconfig(dbus-1) >= 1.0
-BuildRequires: pkgconfig(dmx) >= 1.0.99.1
BuildRequires: pkgconfig(dri) >= 7.8.0
BuildRequires: pkgconfig(dri2proto)
BuildRequires: pkgconfig(dri3proto)
@@ -96,6 +95,7 @@
BuildRequires: pkgconfig(kbproto) >= 1.0.3
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libsystemd)
+BuildRequires: pkgconfig(libxcvt)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(pciaccess) >= 0.8.0
BuildRequires: pkgconfig(pixman-1) >= 0.24
@@ -207,6 +207,7 @@
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
@@ -219,7 +220,6 @@
# PATCH-FIX-UPSTREAM u_x86emu-include-order.patch [email protected] -- Change
include order to avoid conflict with system header, remove duplicate definitions
Patch104: u_xorg-server-xdmcp.patch
-Patch112:
u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
Patch115: N_Disable-HW-Cursor-for-cirrus-and-mgag200-kernel-modules.patch
@@ -241,14 +241,8 @@
Patch1401: u_randr-Do-not-crash-if-slave-screen-does-not-have-pro.patch
-Patch1502: U_dix-window-Use-ConfigureWindow-instead-of-MoveWindow.patch
-
Patch1503: u_xfree86-Do-not-claim-pci-slots-if-fb-slot-is-already.patch
-Patch1600: U_glamor_egl-Reject-OpenGL-2.1-early-on.patch
-
-Patch1801: U_Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch
-
Patch1900: u_no-lto-for-tests.patch
Patch1910: u_modesetting-Fix-dirty-updates-for-sw-rotation.patch
@@ -257,7 +251,7 @@
This package contains the X.Org Server.
%package extra
-Summary: Additional Xservers (Xdmx, Xephyr, Xnest)
+Summary: Additional Xservers Xephyr, Xnest)
Group: System/X11/Servers/XF86_4
Requires: Mesa
Requires: xkbcomp
@@ -267,7 +261,7 @@
Obsoletes: xorg-x11-Xnest
%description extra
-This package contains additional Xservers (Xdmx, Xephyr, Xnest).
+This package contains additional Xservers (Xephyr, Xnest).
%package Xvfb
Summary: Virtual Xserver Xvfb
@@ -368,6 +362,8 @@
%patch2 -p1
%patch3 -p0
%patch4 -p0
+# back to 96 dpi fix
+%patch5 -p1 -R
%patch6 -p0
%patch7 -p1
%patch8 -p1
@@ -379,7 +375,6 @@
%patch100 -p1
#%patch101 -p1
%patch104 -p1
-%patch112 -p1
%patch115 -p1
%patch117 -p1
%patch160 -p1
@@ -388,7 +383,13 @@
### not applicable anymore
#%patch210 -p1
%patch215 -p1
-%patch1000 -p1
+### apparently supersed by upstream
+### commit 078277e4d92f05a90c4715d61b89b9d9d38d68ea
+### Author: Dave Airlie <[email protected]>
+### Date: Fri Aug 17 09:49:24 2012 +1000
+###
+### xf86: autobind GPUs to the screen
+#%patch1000 -p1
### disabled for now
#%patch1162 -p1
@@ -397,10 +398,7 @@
### patch222 might not be applicable anymore
#%patch1222 -p1
%patch1401 -p1
-%patch1502 -p1
%patch1503 -p1
-%patch1600 -p1
-%patch1801 -p1
%patch1900 -p1
%patch1910 -p1
@@ -422,7 +420,6 @@
--enable-dri2 \
--enable-dri3 \
--enable-glamor \
- --enable-dmx \
--enable-xnest \
--enable-kdrive \
--enable-kdrive-evdev \
@@ -606,7 +603,6 @@
%dir %{_libdir}/xorg
%{_libdir}/xorg/protocol.txt
%{_mandir}/man1/*
-%exclude %{_mandir}/man1/Xdmx.1*
%exclude %{_mandir}/man1/Xephyr.1*
%exclude %{_mandir}/man1/Xnest.1*
%dir %{_datadir}/factory
@@ -622,7 +618,6 @@
%endif
%{_bindir}/X
-%{_bindir}/cvt
%{_bindir}/gtf
%{_libdir}/xorg/modules/
%{_mandir}/man4/*
@@ -649,19 +644,6 @@
%defattr(-,root,root)
%{_bindir}/Xephyr
%{_bindir}/Xnest
-%{_bindir}/Xdmx
-%{_bindir}/dmxaddinput
-%{_bindir}/dmxaddscreen
-%{_bindir}/dmxinfo
-%{_bindir}/dmxreconfig
-%{_bindir}/dmxresize
-%{_bindir}/dmxrminput
-%{_bindir}/dmxrmscreen
-%{_bindir}/dmxtodmx
-%{_bindir}/dmxwininfo
-%{_bindir}/vdltodmx
-%{_bindir}/xdmxconfig
-%{_mandir}/man1/Xdmx.1*
%{_mandir}/man1/Xephyr.1*
%{_mandir}/man1/Xnest.1*
++++++ N_zap_warning_xserver.diff ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.636867732 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.636867732 +0100
@@ -8,19 +8,19 @@
within 2 seconds.
This can be enabled with a new option flag "ZapWarning"
-Index: xorg-server-1.20.5/hw/xfree86/common/xf86Config.c
+Index: xorg-server-21.1.0/hw/xfree86/common/xf86Config.c
===================================================================
---- xorg-server-1.20.5.orig/hw/xfree86/common/xf86Config.c
-+++ xorg-server-1.20.5/hw/xfree86/common/xf86Config.c
-@@ -622,6 +622,7 @@ typedef enum {
- FLAG_NOTRAPSIGNALS,
+--- xorg-server-21.1.0.orig/hw/xfree86/common/xf86Config.c
++++ xorg-server-21.1.0/hw/xfree86/common/xf86Config.c
+@@ -621,6 +621,7 @@ configFiles(XF86ConfFilesPtr fileconf)
+ typedef enum {
FLAG_DONTVTSWITCH,
FLAG_DONTZAP,
+ FLAG_ZAPWARNING,
FLAG_DONTZOOM,
FLAG_DISABLEVIDMODE,
FLAG_ALLOWNONLOCAL,
-@@ -659,6 +660,8 @@ static OptionInfoRec FlagOptions[] = {
+@@ -657,6 +658,8 @@ static OptionInfoRec FlagOptions[] = {
{0}, FALSE},
{FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN,
{0}, FALSE},
@@ -29,70 +29,65 @@
{FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN,
{0}, FALSE},
{FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN,
-@@ -740,6 +743,7 @@ configServerFlags(XF86ConfFlagsPtr flags
- xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS,
&xf86Info.notrapSignals);
+@@ -739,6 +742,7 @@ configServerFlags(XF86ConfFlagsPtr flags
+
xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch);
xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap);
+ xf86GetOptValBool(FlagOptions, FLAG_ZAPWARNING, &xf86Info.ZapWarning);
xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom);
xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);
-Index: xorg-server-1.20.5/hw/xfree86/common/xf86Events.c
+Index: xorg-server-21.1.0/hw/xfree86/common/xf86Events.c
===================================================================
---- xorg-server-1.20.5.orig/hw/xfree86/common/xf86Events.c
-+++ xorg-server-1.20.5/hw/xfree86/common/xf86Events.c
-@@ -166,13 +166,25 @@ xf86ProcessActionEvent(ActionEvent actio
+--- xorg-server-21.1.0.orig/hw/xfree86/common/xf86Events.c
++++ xorg-server-21.1.0/hw/xfree86/common/xf86Events.c
+@@ -158,10 +158,22 @@ xf86ProcessActionEvent(ActionEvent actio
DebugF("ProcessActionEvent(%d,%p)\n", (int) action, arg);
switch (action) {
case ACTION_TERMINATE:
- if (!xf86Info.dontZap) {
- xf86Msg(X_INFO, "Server zapped. Shutting down.\n");
+- GiveUp(0);
+ if (xf86Info.dontZap)
+ break;
+
-+ if (xf86Info.ZapWarning) {
-+ static struct timeval LastZap = { 0, 0};
-+ struct timeval NewZap;
++ if (xf86Info.ZapWarning) {
++ static struct timeval LastZap = { 0, 0};
++ struct timeval NewZap;
+
-+ gettimeofday(&NewZap, NULL);
++ gettimeofday(&NewZap, NULL);
+
-+ if ((NewZap.tv_sec - LastZap.tv_sec) >= 2) {
-+ xf86OSRingBell(30, 1000, 50);
-+ LastZap = NewZap;
-+ break;
-+ }
-+ }
- #ifdef XFreeXDGA
-- DGAShutdown();
-+ DGAShutdown();
- #endif
-- GiveUp(0);
-- }
++ if ((NewZap.tv_sec - LastZap.tv_sec) >= 2) {
++ xf86OSRingBell(30, 1000, 50);
++ LastZap = NewZap;
++ break;
++ }
+ }
+ GiveUp(0);
break;
case ACTION_NEXT_MODE:
if (!xf86Info.dontZoom)
-Index: xorg-server-1.20.5/hw/xfree86/common/xf86Globals.c
+Index: xorg-server-21.1.0/hw/xfree86/common/xf86Globals.c
===================================================================
---- xorg-server-1.20.5.orig/hw/xfree86/common/xf86Globals.c
-+++ xorg-server-1.20.5/hw/xfree86/common/xf86Globals.c
+--- xorg-server-21.1.0.orig/hw/xfree86/common/xf86Globals.c
++++ xorg-server-21.1.0/hw/xfree86/common/xf86Globals.c
@@ -107,6 +107,7 @@ xf86InfoRec xf86Info = {
.autoVTSwitch = TRUE,
.ShareVTs = FALSE,
.dontZap = FALSE,
+ .ZapWarning = TRUE,
.dontZoom = FALSE,
- .notrapSignals = FALSE,
.currentScreen = NULL,
-Index: xorg-server-1.20.5/hw/xfree86/common/xf86Privstr.h
+ #ifdef CSRG_BASED
+Index: xorg-server-21.1.0/hw/xfree86/common/xf86Privstr.h
===================================================================
---- xorg-server-1.20.5.orig/hw/xfree86/common/xf86Privstr.h
-+++ xorg-server-1.20.5/hw/xfree86/common/xf86Privstr.h
+--- xorg-server-21.1.0.orig/hw/xfree86/common/xf86Privstr.h
++++ xorg-server-21.1.0/hw/xfree86/common/xf86Privstr.h
@@ -62,6 +62,7 @@ typedef struct {
Bool autoVTSwitch;
Bool ShareVTs;
Bool dontZap;
+ Bool ZapWarning;
Bool dontZoom;
- Bool notrapSignals; /* don't exit cleanly - die at fault */
+ /* graphics part */
++++++ U_hw-xfree86-Propagate-physical-dimensions-from-DRM-co.patch ++++++
>From 05b3c681ea2f478c0cb941c2f8279919cf78de6d Mon Sep 17 00:00:00 2001
From: Daniel Strnad <[email protected]>
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
++++++ pre_checkin.sh ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.712867787 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.712867787 +0100
@@ -29,7 +29,7 @@
echo ""
echo ""
echo "Trying to guess the right tarball"
- sh $0 --tar xserver-*.tar.xz
+ sh $0 --tar xorg-server-*.tar.xz
echo "... Please verify if the result makes sense"
exit 2
fi
++++++ u_modesetting-Fix-dirty-updates-for-sw-rotation.patch ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.740867808 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.740867808 +0100
@@ -19,11 +19,11 @@
.../drivers/modesetting/drmmode_display.h | 2 +
3 files changed, 63 insertions(+), 22 deletions(-)
-diff --git a/hw/xfree86/drivers/modesetting/driver.c
b/hw/xfree86/drivers/modesetting/driver.c
-index ef4a314..deca1ed 100644
---- a/hw/xfree86/drivers/modesetting/driver.c
-+++ b/hw/xfree86/drivers/modesetting/driver.c
-@@ -503,9 +503,41 @@ GetRec(ScrnInfoPtr pScrn)
+Index: xorg-server-21.1.0/hw/xfree86/drivers/modesetting/driver.c
+===================================================================
+--- xorg-server-21.1.0.orig/hw/xfree86/drivers/modesetting/driver.c
++++ xorg-server-21.1.0/hw/xfree86/drivers/modesetting/driver.c
+@@ -515,9 +515,41 @@ GetRec(ScrnInfoPtr pScrn)
return TRUE;
}
@@ -67,7 +67,7 @@
{
modesettingPtr ms = modesettingPTR(scrn);
RegionPtr dirty = DamageRegion(damage);
-@@ -520,13 +552,9 @@ dispatch_dirty_region(ScrnInfoPtr scrn,
+@@ -532,13 +564,9 @@ dispatch_dirty_region(ScrnInfoPtr scrn,
if (!clip)
return -ENOMEM;
@@ -84,7 +84,7 @@
/* TODO query connector property to see if this is needed */
ret = drmModeDirtyFB(ms->fd, fb_id, clip, num_cliprects);
-@@ -549,20 +577,31 @@ static void
+@@ -561,20 +589,31 @@ static void
dispatch_dirty(ScreenPtr pScreen)
{
ScrnInfoPtr scrn = xf86ScreenToScrn(pScreen);
@@ -127,8 +127,8 @@
}
}
-@@ -574,7 +613,7 @@ dispatch_dirty_pixmap(ScrnInfoPtr scrn, xf86CrtcPtr crtc,
PixmapPtr ppix)
- DamagePtr damage = ppriv->slave_damage;
+@@ -586,7 +625,7 @@ dispatch_dirty_pixmap(ScrnInfoPtr scrn,
+ DamagePtr damage = ppriv->secondary_damage;
int fb_id = ppriv->fb_id;
- dispatch_dirty_region(scrn, ppix, damage, fb_id);
@@ -136,11 +136,11 @@
}
static void
-diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c
b/hw/xfree86/drivers/modesetting/drmmode_display.c
-index 88992f5..b29db12 100644
---- a/hw/xfree86/drivers/modesetting/drmmode_display.c
-+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
-@@ -598,7 +598,7 @@ drmmode_crtc_can_test_mode(xf86CrtcPtr crtc)
+Index: xorg-server-21.1.0/hw/xfree86/drivers/modesetting/drmmode_display.c
+===================================================================
+--- xorg-server-21.1.0.orig/hw/xfree86/drivers/modesetting/drmmode_display.c
++++ xorg-server-21.1.0/hw/xfree86/drivers/modesetting/drmmode_display.c
+@@ -627,7 +627,7 @@ drmmode_crtc_can_test_mode(xf86CrtcPtr c
return ms->atomic_modeset;
}
@@ -149,19 +149,16 @@
drmmode_crtc_get_fb_id(xf86CrtcPtr crtc, uint32_t *fb_id, int *x, int *y)
{
drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
-diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.h
b/hw/xfree86/drivers/modesetting/drmmode_display.h
-index 59d79e9..0ed96ab 100644
---- a/hw/xfree86/drivers/modesetting/drmmode_display.h
-+++ b/hw/xfree86/drivers/modesetting/drmmode_display.h
-@@ -297,6 +297,8 @@ void drmmode_copy_fb(ScrnInfoPtr pScrn, drmmode_ptr
drmmode);
+Index: xorg-server-21.1.0/hw/xfree86/drivers/modesetting/drmmode_display.h
+===================================================================
+--- xorg-server-21.1.0.orig/hw/xfree86/drivers/modesetting/drmmode_display.h
++++ xorg-server-21.1.0/hw/xfree86/drivers/modesetting/drmmode_display.h
+@@ -311,6 +311,8 @@ void drmmode_copy_fb(ScrnInfoPtr pScrn,
int drmmode_crtc_flip(xf86CrtcPtr crtc, uint32_t fb_id, uint32_t flags, void
*data);
+Bool drmmode_crtc_get_fb_id(xf86CrtcPtr crtc, uint32_t *fb_id, int *x, int
*y);
+
void drmmode_set_dpms(ScrnInfoPtr scrn, int PowerManagementMode, int flags);
+ void drmmode_crtc_set_vrr(xf86CrtcPtr crtc, Bool enabled);
- #endif
---
-2.31.1
-
++++++ u_randr-Do-not-crash-if-slave-screen-does-not-have-pro.patch ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.756867820 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.756867820 +0100
@@ -21,18 +21,18 @@
randr/randr.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
-Index: xorg-server-1.20.5/randr/randr.c
+Index: xorg-server-21.1.0/randr/randr.c
===================================================================
---- xorg-server-1.20.5.orig/randr/randr.c
-+++ xorg-server-1.20.5/randr/randr.c
-@@ -647,7 +647,9 @@ RRTellChanged(ScreenPtr pScreen)
+--- xorg-server-21.1.0.orig/randr/randr.c
++++ xorg-server-21.1.0/randr/randr.c
+@@ -651,7 +651,9 @@ RRTellChanged(ScreenPtr pScreen)
- xorg_list_for_each_entry(iter, &master->slave_list, slave_head) {
- pSlaveScrPriv = rrGetScrPriv(iter);
-- pSlaveScrPriv->provider->changed = FALSE;
-+ if (pSlaveScrPriv->provider) {
-+ pSlaveScrPriv->provider->changed = FALSE;
-+ }
- if (iter->is_output_slave) {
- for (i = 0; i < pSlaveScrPriv->numOutputs; i++)
- pSlaveScrPriv->outputs[i]->changed = FALSE;
+ xorg_list_for_each_entry(iter, &primary->secondary_list,
secondary_head) {
+ pSecondaryScrPriv = rrGetScrPriv(iter);
+- pSecondaryScrPriv->provider->changed = FALSE;
++ if (pSecondaryScrPriv->provider) {
++ pSecondaryScrPriv->provider->changed = FALSE;
++ }
+ if (iter->is_output_secondary) {
+ for (i = 0; i < pSecondaryScrPriv->numOutputs; i++)
+ pSecondaryScrPriv->outputs[i]->changed = FALSE;
++++++ u_vesa-Add-VBEDPMSGetCapabilities-VBEDPMSGet.patch ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:56.764867825 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:56.768867828 +0100
@@ -8,14 +8,14 @@
Signed-off-by: Egbert Eich <[email protected]>
---
- hw/xfree86/vbe/vbe.c | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++-
- hw/xfree86/vbe/vbe.h | 3 ++
+ hw/xfree86/in10/vbe.c | 147
++++++++++++++++++++++++++++++++++++++++++++++++++-
+ hw/xfree86/in10/vbe.h | 3 ++
2 files changed, 149 insertions(+), 1 deletion(-)
-diff --git a/hw/xfree86/vbe/vbe.c b/hw/xfree86/vbe/vbe.c
-index 39f0cef..179d4c6 100644
---- a/hw/xfree86/vbe/vbe.c
-+++ b/hw/xfree86/vbe/vbe.c
+Index: xorg-server-21.1.0/hw/xfree86/int10/vbe.c
+===================================================================
+--- xorg-server-21.1.0.orig/hw/xfree86/int10/vbe.c
++++ xorg-server-21.1.0/hw/xfree86/int10/vbe.c
@@ -20,6 +20,28 @@
#include "vbe.h"
#include <X11/extensions/dpmsconst.h>
@@ -91,7 +91,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return NULL;
-@@ -458,6 +486,7 @@ VBESetVBEMode(vbeInfoPtr pVbe, int mode, VbeCRTCInfoBlock
* block)
+@@ -458,6 +486,7 @@ VBESetVBEMode(vbeInfoPtr pVbe, int mode,
Output: AX = Status
(All other registers are preserved)
*/
@@ -99,7 +99,7 @@
pVbe->pInt10->num = 0x10;
pVbe->pInt10->ax = 0x4f02;
pVbe->pInt10->bx = mode;
-@@ -471,6 +500,7 @@ VBESetVBEMode(vbeInfoPtr pVbe, int mode, VbeCRTCInfoBlock
* block)
+@@ -471,6 +500,7 @@ VBESetVBEMode(vbeInfoPtr pVbe, int mode,
pVbe->pInt10->bx &= ~(1 << 11);
xf86ExecX86int10(pVbe->pInt10);
@@ -107,7 +107,7 @@
return (R16(pVbe->pInt10->ax) == 0x4f);
}
-@@ -488,10 +518,12 @@ VBEGetVBEMode(vbeInfoPtr pVbe, int *mode)
+@@ -488,10 +518,12 @@ VBEGetVBEMode(vbeInfoPtr pVbe, int *mode
BX := Current video mode
(All other registers are preserved)
*/
@@ -120,7 +120,7 @@
if (R16(pVbe->pInt10->ax) == 0x4f) {
*mode = R16(pVbe->pInt10->bx);
-@@ -521,12 +553,14 @@ VBEGetModeInfo(vbeInfoPtr pVbe, int mode)
+@@ -521,12 +553,14 @@ VBEGetModeInfo(vbeInfoPtr pVbe, int mode
AX := status
(All other registers are preserved)
*/
@@ -135,7 +135,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return NULL;
-@@ -586,6 +620,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveRestoreFunction
function,
+@@ -586,6 +620,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveR
(All other registers are preserved)
*/
@@ -143,7 +143,7 @@
if ((pVbe->version & 0xff00) > 0x100) {
int screen = pVbe->pInt10->pScrn->scrnIndex;
-@@ -597,9 +632,9 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveRestoreFunction
function,
+@@ -597,9 +632,9 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveR
pVbe->pInt10->dx = 0;
pVbe->pInt10->cx = 0x000f;
xf86ExecX86int10(pVbe->pInt10);
@@ -154,7 +154,7 @@
if (function == MODE_SAVE) {
int npages = (R16(pVbe->pInt10->bx) * 64) / 4096 + 1;
-@@ -618,6 +653,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveRestoreFunction
function,
+@@ -618,6 +653,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveR
if (!*memory)
return FALSE;
@@ -162,7 +162,7 @@
pVbe->pInt10->num = 0x10;
pVbe->pInt10->ax = 0x4f04;
switch (function) {
-@@ -635,6 +671,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveRestoreFunction
function,
+@@ -635,6 +671,7 @@ VBESaveRestore(vbeInfoPtr pVbe, vbeSaveR
pVbe->pInt10->es = SEG_ADDR(*real_mode_pages);
pVbe->pInt10->bx = SEG_OFF(*real_mode_pages);
xf86ExecX86int10(pVbe->pInt10);
@@ -170,7 +170,7 @@
return (R16(pVbe->pInt10->ax) == 0x4f);
}
-@@ -652,11 +689,13 @@ VBEBankSwitch(vbeInfoPtr pVbe, unsigned int iBank, int
window)
+@@ -652,11 +689,13 @@ VBEBankSwitch(vbeInfoPtr pVbe, unsigned
Output:
*/
@@ -184,7 +184,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return FALSE;
-@@ -690,12 +729,14 @@ VBESetGetLogicalScanlineLength(vbeInfoPtr pVbe,
vbeScanwidthCommand command,
+@@ -690,12 +729,14 @@ VBESetGetLogicalScanlineLength(vbeInfoPt
DX := Maximum Number of Scan Lines
*/
@@ -199,7 +199,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return FALSE;
-@@ -715,12 +756,15 @@ VBESetGetLogicalScanlineLength(vbeInfoPtr pVbe,
vbeScanwidthCommand command,
+@@ -715,12 +756,15 @@ VBESetGetLogicalScanlineLength(vbeInfoPt
Bool
VBESetDisplayStart(vbeInfoPtr pVbe, int x, int y, Bool wait_retrace)
{
@@ -215,7 +215,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return FALSE;
-@@ -731,10 +775,12 @@ VBESetDisplayStart(vbeInfoPtr pVbe, int x, int y, Bool
wait_retrace)
+@@ -731,10 +775,12 @@ VBESetDisplayStart(vbeInfoPtr pVbe, int
Bool
VBEGetDisplayStart(vbeInfoPtr pVbe, int *x, int *y)
{
@@ -228,7 +228,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return FALSE;
-@@ -761,6 +807,7 @@ VBESetGetDACPaletteFormat(vbeInfoPtr pVbe, int bits)
+@@ -761,6 +807,7 @@ VBESetGetDACPaletteFormat(vbeInfoPtr pVb
BH := Current number of bits of color per primary
*/
@@ -236,7 +236,7 @@
pVbe->pInt10->num = 0x10;
pVbe->pInt10->ax = 0x4f08;
if (!bits)
-@@ -768,6 +815,7 @@ VBESetGetDACPaletteFormat(vbeInfoPtr pVbe, int bits)
+@@ -768,6 +815,7 @@ VBESetGetDACPaletteFormat(vbeInfoPtr pVb
else
pVbe->pInt10->bx = (bits & 0x00ff) << 8;
xf86ExecX86int10(pVbe->pInt10);
@@ -244,7 +244,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return 0;
-@@ -805,6 +853,8 @@ VBESetGetPaletteData(vbeInfoPtr pVbe, Bool set, int first,
int num,
+@@ -805,6 +853,8 @@ VBESetGetPaletteData(vbeInfoPtr pVbe, Bo
DS := Selector for memory mapped registers
*/
@@ -253,7 +253,7 @@
pVbe->pInt10->num = 0x10;
pVbe->pInt10->ax = 0x4f09;
if (!secondary)
-@@ -818,6 +868,7 @@ VBESetGetPaletteData(vbeInfoPtr pVbe, Bool set, int first,
int num,
+@@ -818,6 +868,7 @@ VBESetGetPaletteData(vbeInfoPtr pVbe, Bo
if (set)
memcpy(pVbe->memory, data, num * sizeof(CARD32));
xf86ExecX86int10(pVbe->pInt10);
@@ -275,7 +275,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return NULL;
-@@ -967,6 +1020,7 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mode, int clock)
+@@ -967,6 +1020,7 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mo
AX := VBE Return Status
ECX := Closest pixel clock
*/
@@ -283,7 +283,7 @@
pVbe->pInt10->num = 0x10;
pVbe->pInt10->ax = 0x4f0b;
-@@ -974,6 +1028,7 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mode, int clock)
+@@ -974,6 +1028,7 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mo
pVbe->pInt10->cx = clock;
pVbe->pInt10->dx = mode;
xf86ExecX86int10(pVbe->pInt10);
@@ -291,7 +291,7 @@
if (R16(pVbe->pInt10->ax) != 0x4f)
return 0;
-@@ -981,6 +1036,92 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mode, int clock)
+@@ -981,6 +1036,92 @@ VBEGetPixelClock(vbeInfoPtr pVbe, int mo
return pVbe->pInt10->cx;
}
@@ -416,11 +416,11 @@
if ((pVbe->pInt10->ax & 0xff) != 0x4f) {
xf86DrvMsgVerb(screen, X_INFO, 3, "VESA VBE PanelID invalid\n");
-diff --git a/hw/xfree86/vbe/vbe.h b/hw/xfree86/vbe/vbe.h
-index 3907c53..9b37f46 100644
---- a/hw/xfree86/vbe/vbe.h
-+++ b/hw/xfree86/vbe/vbe.h
-@@ -336,6 +336,9 @@ VBEVesaSaveRestore(vbeInfoPtr pVbe, vbeSaveRestorePtr
vbe_sr,
+Index: xorg-server-21.1.0/hw/xfree86/int10/vbe.h
+===================================================================
+--- xorg-server-21.1.0.orig/hw/xfree86/int10/vbe.h
++++ xorg-server-21.1.0/hw/xfree86/int10/vbe.h
+@@ -335,6 +335,9 @@ VBEVesaSaveRestore(vbeInfoPtr pVbe, vbeS
extern _X_EXPORT int VBEGetPixelClock(vbeInfoPtr pVbe, int mode, int Clock);
extern _X_EXPORT Bool VBEDPMSSet(vbeInfoPtr pVbe, int mode);
++++++ xorg-server-1.20.13.tar.xz -> xorg-server-21.1.1.tar.xz ++++++
++++ 167626 lines of diff (skipped)
++++++ xorg-server-provides ++++++
--- /var/tmp/diff_new_pack.NYkOfW/_old 2021-11-11 21:35:58.340868975 +0100
+++ /var/tmp/diff_new_pack.NYkOfW/_new 2021-11-11 21:35:58.344868977 +0100
@@ -1,4 +1,4 @@
-Provides: X11_ABI_XINPUT = 24.1
-Provides: X11_ABI_VIDEODRV = 24.1
+Provides: X11_ABI_XINPUT = 24.4
+Provides: X11_ABI_VIDEODRV = 25.2
Provides: X11_ABI_ANSIC = 0.4
Provides: X11_ABI_EXTENSION = 10.0