update to git snapshot of 1.7.99.902 (1.18.0 rc2)

This commit is contained in:
Dave Airlie 2015-10-27 11:07:51 +10:00
parent 945546e6f0
commit 7079f2c9d1
8 changed files with 16 additions and 235 deletions

View File

@ -1,8 +1,8 @@
From 17830918f1bebf3696c6660f602de84d3efeb1ac Mon Sep 17 00:00:00 2001
From 38ae53c94a88c7bd5877c72a12582b60865e07ff Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Thu, 17 Apr 2014 15:50:44 +0200
Subject: [PATCH] Fedora hack: Make the suid-root wrapper start the server
with root rights
Subject: [PATCH] Fedora hack: Make the suid-root wrapper start the server with
root rights
Do NOT upstream.
@ -19,16 +19,16 @@ needs_root_rights = -1 (auto) default in that case.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
hw/xfree86/xorg-wrapper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
hw/xfree86/xorg-wrapper.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/hw/xfree86/xorg-wrapper.c b/hw/xfree86/xorg-wrapper.c
index 90c8c11..539bfe4 100644
index 4c37cfc..ae5d27f 100644
--- a/hw/xfree86/xorg-wrapper.c
+++ b/hw/xfree86/xorg-wrapper.c
@@ -191,6 +191,9 @@ int main(int argc, char *argv[])
int allowed = CONSOLE_ONLY;
@@ -198,6 +198,9 @@ int main(int argc, char *argv[])
int needs_root_rights = -1;
char *const empty_envp[1] = { NULL, };
+ if (getenv("XORG_RUN_AS_USER_OK") == NULL)
+ needs_root_rights = 1;
@ -37,5 +37,5 @@ index 90c8c11..539bfe4 100644
parse_config(&allowed, &needs_root_rights);
--
1.9.0
2.4.3

View File

@ -1,25 +0,0 @@
From cd0024646df28c208ef5d73b55564d6d184afdfd Mon Sep 17 00:00:00 2001
From: Fedora X Ninjas <x@fedoraproject.org>
Date: Wed, 29 Jul 2015 10:34:08 +1000
Subject: [PATCH] fix Xdmx link harder
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 98d0821..20f31e6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2268,7 +2268,7 @@ if test "x$DMX" = xyes; then
fi
DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC"
XDMX_CFLAGS="$DMXMODULES_CFLAGS"
- XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RANDR_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB"
+ XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RANDR_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB $RANDR_LIB"
XDMX_SYS_LIBS="$DMXMODULES_LIBS"
AC_SUBST([XDMX_CFLAGS])
AC_SUBST([XDMX_LIBS])
--
2.4.3

View File

@ -1,42 +0,0 @@
From cfe51b7b536cf9f46e26cae97d9560c8c4264009 Mon Sep 17 00:00:00 2001
From: Fedora X Ninjas <x@fedoraproject.org>
Date: Tue, 22 Sep 2015 20:20:04 -0400
Subject: [PATCH] glx: fix regression with copy sub buffer disappearing
So copy sub buffer isn't a core extensions it's a driver extension
which means we are using totally the wrong interface to query for it
here, which means bad things happen when you roll out this code,
for instance MESA_copy_sub_buffer stops working.
This is just the hack I'm sticking in Fedora to avoid the regression
for now, but hopefully will inspire us.
---
glx/glxdriswrast.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/glx/glxdriswrast.c b/glx/glxdriswrast.c
index 9add2a1..e8e53bf 100644
--- a/glx/glxdriswrast.c
+++ b/glx/glxdriswrast.c
@@ -396,6 +396,9 @@ initializeExtensions(__GLXDRIscreen * screen)
const __DRIextension **extensions;
int i;
+ __glXEnableExtension(screen->glx_enable_bits, "GLX_MESA_copy_sub_buffer");
+ LogMessage(X_INFO, "AIGLX: enabled GLX_MESA_copy_sub_buffer\n");
+
if (screen->swrast->base.version >= 3) {
__glXEnableExtension(screen->glx_enable_bits,
"GLX_ARB_create_context");
@@ -416,8 +419,6 @@ initializeExtensions(__GLXDRIscreen * screen)
if (strcmp(extensions[i]->name, __DRI_COPY_SUB_BUFFER) == 0) {
screen->copySubBuffer =
(const __DRIcopySubBufferExtension *) extensions[i];
- __glXEnableExtension(screen->glx_enable_bits,
- "GLX_MESA_copy_sub_buffer");
}
if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
--
2.5.0

View File

@ -1,84 +0,0 @@
From ca355e9d6acab994453cdbb65cb213d09ee4a50f Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Wed, 14 Oct 2015 15:10:35 +0200
Subject: [PATCH] linux: Do not call FatalError from xf86CloseConsole
FatalError ends up calling xf86CloseConsole itself, so calling FatalError
from within xf86CloseConsole is not a good idea.
All the other error checking done in xf86CloseConsole uses
xf86Msg(X_WARNING, ...) except for the switch_to() helper function,
change things so that switch_to() also uses xf86Msg rather then FatalError
when called from xf86CloseConsole.
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1269210
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
hw/xfree86/os-support/linux/lnx_init.c | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git a/hw/xfree86/os-support/linux/lnx_init.c b/hw/xfree86/os-support/linux/lnx_init.c
index ec06a05..9fec964 100644
--- a/hw/xfree86/os-support/linux/lnx_init.c
+++ b/hw/xfree86/os-support/linux/lnx_init.c
@@ -64,17 +64,25 @@ drain_console(int fd, void *closure)
}
static void
-switch_to(int vt, const char *from)
+switch_to(int vt, Bool is_open)
{
int ret;
SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_ACTIVATE, vt));
- if (ret < 0)
- FatalError("%s: VT_ACTIVATE failed: %s\n", from, strerror(errno));
+ if (ret < 0) {
+ if (is_open)
+ FatalError("xf86OpenConsole: VT_ACTIVATE failed: %s\n", strerror(errno));
+ else
+ xf86Msg(X_WARNING, "xf86CloseConsole: VT_ACTIVATE failed: %s\n", strerror(errno));
+ }
SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_WAITACTIVE, vt));
- if (ret < 0)
- FatalError("%s: VT_WAITACTIVE failed: %s\n", from, strerror(errno));
+ if (ret < 0) {
+ if (is_open)
+ FatalError("xf86OpenConsole: VT_WAITACTIVE failed: %s\n", strerror(errno));
+ else
+ xf86Msg(X_WARNING, "xf86CloseConsole: VT_WAITACTIVE failed: %s\n", strerror(errno));
+ }
}
#pragma GCC diagnostic push
@@ -233,7 +241,7 @@ xf86OpenConsole(void)
/*
* now get the VT. This _must_ succeed, or else fail completely.
*/
- switch_to(xf86Info.vtno, "xf86OpenConsole");
+ switch_to(xf86Info.vtno, TRUE);
SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_GETMODE, &VT));
if (ret < 0)
@@ -294,7 +302,7 @@ xf86OpenConsole(void)
else { /* serverGeneration != 1 */
if (!xf86Info.ShareVTs && xf86Info.autoVTSwitch) {
/* now get the VT */
- switch_to(xf86Info.vtno, "xf86OpenConsole");
+ switch_to(xf86Info.vtno, TRUE);
}
}
}
@@ -346,7 +354,7 @@ xf86CloseConsole(void)
* Perform a switch back to the active VT when we were started
*/
if (activeVT >= 0) {
- switch_to(activeVT, "xf86CloseConsole");
+ switch_to(activeVT, FALSE);
activeVT = -1;
}
}
--
2.5.0

View File

@ -1,60 +0,0 @@
From e3cdf29473a15790d4dab818f42df429997d2dda Mon Sep 17 00:00:00 2001
From: Fedora X Ninjas <x@fedoraproject.org>
Date: Wed, 16 Sep 2015 11:26:22 -0500
Subject: [PATCH] present: Don't stash the MSC value when present_get_ust_msc
fails
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Otherwise we stash an uninitalized value, and later use it to compute
the msc_offset for the window. Also initialize ust and crtc_msc so we
never use uninitalized values when present_get_ust_msc fails.
This fixes clients getting stuck waiting indefinitely for an idle
event when a CRTC is turned off.
Signed-off-by: Fredrik Höglund <fredrik at kde.org>
---
present/present.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/present/present.c b/present/present.c
index a634601..7ddffbd 100644
--- a/present/present.c
+++ b/present/present.c
@@ -710,9 +710,9 @@ present_pixmap(WindowPtr window,
present_notify_ptr notifies,
int num_notifies)
{
- uint64_t ust;
+ uint64_t ust = 0;
uint64_t target_msc;
- uint64_t crtc_msc;
+ uint64_t crtc_msc = 0;
int ret;
present_vblank_ptr vblank, tmp;
ScreenPtr screen = window->drawable.pScreen;
@@ -734,13 +734,15 @@ present_pixmap(WindowPtr window,
target_crtc = present_get_crtc(window);
}
- present_get_ust_msc(screen, target_crtc, &ust, &crtc_msc);
+ ret = present_get_ust_msc(screen, target_crtc, &ust, &crtc_msc);
target_msc = present_window_to_crtc_msc(window, target_crtc, window_msc, crtc_msc);
- /* Stash the current MSC away in case we need it later
- */
- window_priv->msc = crtc_msc;
+ if (ret == Success) {
+ /* Stash the current MSC away in case we need it later
+ */
+ window_priv->msc = crtc_msc;
+ }
/* Adjust target_msc to match modulus
*/
--
2.5.0

View File

@ -1 +1 @@
634e357be2ec400f63bd5c42f706b709b6ddabc3
d8b7a900cf912cadb5915b3924dd6ce5a74505e7

View File

@ -1 +1 @@
1c03f8b6700e230253354931e9264b17 xorg-server-20150907.tar.xz
cdb17f1bd631d022980c7acfa46bf24b xorg-server-20151027.tar.xz

View File

@ -11,7 +11,7 @@
# X.org requires lazy relocations to work.
%undefine _hardened_build
%global gitdate 20150907
%global gitdate 20151027
%global stable_abi 1
%if !0%{?gitdate} || %{stable_abi}
@ -45,7 +45,7 @@
Summary: X.Org X11 X server
Name: xorg-x11-server
Version: 1.18.0
Release: 0.5%{?gitdate:.%{gitdate}}%{dist}
Release: 0.6%{?gitdate:.%{gitdate}}%{dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X
@ -77,10 +77,6 @@ Source31: xserver-sdk-abi-requires.git
# maintainer convenience script
Source40: driver-abi-rebuild.sh
# hack that isn't upstream - hopefully upstream fixes nicer
Patch3000: 0001-glx-fix-regression-with-copy-sub-buffer-disappearing.patch
Patch4000: 0001-fix-Xdmx-link-harder.patch
# Trivial things to never merge upstream ever:
# This really could be done prettier.
Patch5002: xserver-1.4.99-ssh-isnt-local.patch
@ -95,13 +91,6 @@ Patch7027: xserver-autobind-hotplug.patch
# submitted: http://lists.x.org/archives/xorg-devel/2013-October/037996.html
Patch9100: exa-only-draw-valid-trapezoids.patch
# http://lists.x.org/archives/xorg-devel/2015-September/047304.html
Patch9200: 0001-present-Don-t-stash-the-MSC-value-when-present_get_u.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1269210
# http://lists.x.org/archives/xorg-devel/2015-October/047558.html
Patch9300: 0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch
# because the display-managers are not ready yet, do not upstream
Patch10000: 0001-Fedora-hack-Make-the-suid-root-wrapper-always-start-.patch
@ -641,6 +630,9 @@ find %{inst_srcdir}/hw/xfree86 -name \*.c -delete
%changelog
* Tue Oct 27 2015 Dave Airlie <airlied@redhat.com> 1.18.0-0.6
- update to git snapshot of 1.7.99.902 (1.18.0 rc2)
* Wed Oct 14 2015 Hans de Goede <hdegoede@redhat.com> - 1.18.0-0.5
- Fix xorg sometimes crashing on machine poweroff/shutdown (#1269210)