Merge remote-tracking branch 'origin/master' into f21
This commit is contained in:
commit
77d0978458
@ -1,74 +0,0 @@
|
|||||||
From 5823527cf87c781df10620048c984d52fa529647 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thierry Reding <treding@nvidia.com>
|
|
||||||
Date: Thu, 13 Feb 2014 13:31:31 +0100
|
|
||||||
Subject: [PATCH v2 1/2] xfree86: Fallback to first platform device as primary
|
|
||||||
|
|
||||||
When neither of the various bus implementations was able to find a
|
|
||||||
primary bus and device, fallback to using the platform bus as primary
|
|
||||||
bus and the first platform device as primary device.
|
|
||||||
|
|
||||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
|
||||||
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
||||||
Tested-by: Rob Clark <robdclark@gmail.com>
|
|
||||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
||||||
---
|
|
||||||
hw/xfree86/common/xf86Bus.c | 3 +++
|
|
||||||
hw/xfree86/common/xf86platformBus.c | 15 +++++++++++++++
|
|
||||||
hw/xfree86/common/xf86platformBus.h | 1 +
|
|
||||||
3 files changed, 19 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/hw/xfree86/common/xf86Bus.c b/hw/xfree86/common/xf86Bus.c
|
|
||||||
index b3b3f8c..bd3e4e3 100644
|
|
||||||
--- a/hw/xfree86/common/xf86Bus.c
|
|
||||||
+++ b/hw/xfree86/common/xf86Bus.c
|
|
||||||
@@ -210,6 +210,9 @@ xf86BusProbe(void)
|
|
||||||
#if (defined(__sparc__) || defined(__sparc)) && !defined(__OpenBSD__)
|
|
||||||
xf86SbusProbe();
|
|
||||||
#endif
|
|
||||||
+#ifdef XSERVER_PLATFORM_BUS
|
|
||||||
+ xf86platformPrimary();
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
|
|
||||||
index eb1a3fb..74d63c2 100644
|
|
||||||
--- a/hw/xfree86/common/xf86platformBus.c
|
|
||||||
+++ b/hw/xfree86/common/xf86platformBus.c
|
|
||||||
@@ -635,4 +635,21 @@ void xf86platformVTProbe(void)
|
|
||||||
xf86PlatformReprobeDevice(i, xf86_platform_devices[i].attribs);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+void xf86platformPrimary(void)
|
|
||||||
+{
|
|
||||||
+ /* use the first platform device as a fallback */
|
|
||||||
+ if (primaryBus.type == BUS_NONE) {
|
|
||||||
+ xf86Msg(X_INFO, "no primary bus or device found\n");
|
|
||||||
+
|
|
||||||
+ if (xf86_num_platform_devices > 0) {
|
|
||||||
+ char *syspath = xf86_get_platform_attrib(0, ODEV_ATTRIB_SYSPATH);
|
|
||||||
+
|
|
||||||
+ primaryBus.id.plat = &xf86_platform_devices[0];
|
|
||||||
+ primaryBus.type = BUS_PLATFORM;
|
|
||||||
+
|
|
||||||
+ xf86Msg(X_NONE, "\tfalling back to %s\n", syspath);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
#endif
|
|
||||||
diff --git a/hw/xfree86/common/xf86platformBus.h b/hw/xfree86/common/xf86platformBus.h
|
|
||||||
index 5dee4e0..dec1956 100644
|
|
||||||
--- a/hw/xfree86/common/xf86platformBus.h
|
|
||||||
+++ b/hw/xfree86/common/xf86platformBus.h
|
|
||||||
@@ -77,6 +77,7 @@ extern _X_EXPORT int
|
|
||||||
xf86PlatformMatchDriver(char *matches[], int nmatches);
|
|
||||||
|
|
||||||
extern void xf86platformVTProbe(void);
|
|
||||||
+extern void xf86platformPrimary(void);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
--
|
|
||||||
2.1.0
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
|||||||
From 570ce9d0e7cfc06cd8892a5aab471768aaa9b2f1 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thierry Reding <treding@nvidia.com>
|
|
||||||
Date: Thu, 13 Feb 2014 13:36:12 +0100
|
|
||||||
Subject: [PATCH v2 2/2] xfree86: Allow non-PCI devices as primary
|
|
||||||
|
|
||||||
On platforms that don't support PCI or have no GPU attached to the PCI
|
|
||||||
bus, there can still be a primary device on a non-PCI bus.
|
|
||||||
|
|
||||||
Signed-off-by: Thierry Reding <treding@nvidia.com>
|
|
||||||
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
||||||
Tested-by: Rob Clark <robdclark@gmail.com>
|
|
||||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
||||||
---
|
|
||||||
hw/xfree86/common/xf86platformBus.c | 7 +++----
|
|
||||||
1 file changed, 3 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
|
|
||||||
index 74d63c2..fe0880e 100644
|
|
||||||
--- a/hw/xfree86/common/xf86platformBus.c
|
|
||||||
+++ b/hw/xfree86/common/xf86platformBus.c
|
|
||||||
@@ -476,10 +476,9 @@ xf86platformProbeDev(DriverPtr drvp)
|
|
||||||
/* for non-seat0 servers assume first device is the master */
|
|
||||||
if (ServerIsNotSeat0())
|
|
||||||
break;
|
|
||||||
- if (xf86_platform_devices[j].pdev) {
|
|
||||||
- if (xf86IsPrimaryPlatform(&xf86_platform_devices[j]))
|
|
||||||
- break;
|
|
||||||
- }
|
|
||||||
+
|
|
||||||
+ if (xf86IsPrimaryPlatform(&xf86_platform_devices[j]))
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
||||||
2.1.0
|
|
||||||
|
|
@ -1,77 +0,0 @@
|
|||||||
Content-Type: text/plain; charset="utf-8"
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Transfer-Encoding: 7bit
|
|
||||||
Subject: glx/present: Only send GLX_BufferSwapComplete for
|
|
||||||
PresentCompleteKindPixmap
|
|
||||||
From: Keith Packard <keithp@keithp.com>
|
|
||||||
X-Patchwork-Id: 33052
|
|
||||||
Message-Id: <1409844967-19450-1-git-send-email-keithp@keithp.com>
|
|
||||||
To: xorg-devel@lists.freedesktop.org
|
|
||||||
Date: Thu, 4 Sep 2014 08:36:07 -0700
|
|
||||||
|
|
||||||
Present didn't provide the 'kind' argument to the
|
|
||||||
present_complete_notify hook that GLX uses to construct
|
|
||||||
GLX_BufferSwapComplete events, so GLX was reporting events for
|
|
||||||
PresentCompleteKindMSC notifications, which resulted in duplicate
|
|
||||||
GLX_BufferSwapComplete events and crashes in clutter.
|
|
||||||
|
|
||||||
See the gnome bug: https://bugzilla.gnome.org/show_bug.cgi?id=733282
|
|
||||||
|
|
||||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
||||||
Reviewed-by: Eric Anholt <eric@anholt.net>
|
|
||||||
|
|
||||||
---
|
|
||||||
glx/glxcmds.c | 7 +++++--
|
|
||||||
present/present.h | 1 +
|
|
||||||
present/present_event.c | 2 +-
|
|
||||||
3 files changed, 7 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/glx/glxcmds.c b/glx/glxcmds.c
|
|
||||||
index 2fc3f4c..d11c667 100644
|
|
||||||
--- a/glx/glxcmds.c
|
|
||||||
+++ b/glx/glxcmds.c
|
|
||||||
@@ -2508,13 +2508,16 @@ __glXsendSwapEvent(__GLXdrawable *drawable, int type, CARD64 ust,
|
|
||||||
|
|
||||||
#if PRESENT
|
|
||||||
static void
|
|
||||||
-__glXpresentCompleteNotify(WindowPtr window, CARD8 present_mode, CARD32 serial,
|
|
||||||
- uint64_t ust, uint64_t msc)
|
|
||||||
+__glXpresentCompleteNotify(WindowPtr window, CARD8 present_kind, CARD8 present_mode,
|
|
||||||
+ CARD32 serial, uint64_t ust, uint64_t msc)
|
|
||||||
{
|
|
||||||
__GLXdrawable *drawable;
|
|
||||||
int glx_type;
|
|
||||||
int rc;
|
|
||||||
|
|
||||||
+ if (present_kind != PresentCompleteKindPixmap)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
rc = dixLookupResourceByType((void **) &drawable, window->drawable.id,
|
|
||||||
__glXDrawableRes, serverClient, DixGetAttrAccess);
|
|
||||||
|
|
||||||
diff --git a/present/present.h b/present/present.h
|
|
||||||
index 0e3bdc0..aab2e16 100644
|
|
||||||
--- a/present/present.h
|
|
||||||
+++ b/present/present.h
|
|
||||||
@@ -116,6 +116,7 @@ extern _X_EXPORT Bool
|
|
||||||
present_screen_init(ScreenPtr screen, present_screen_info_ptr info);
|
|
||||||
|
|
||||||
typedef void (*present_complete_notify_proc)(WindowPtr window,
|
|
||||||
+ CARD8 kind,
|
|
||||||
CARD8 mode,
|
|
||||||
CARD32 serial,
|
|
||||||
uint64_t ust,
|
|
||||||
diff --git a/present/present_event.c b/present/present_event.c
|
|
||||||
index ff57eba..d3a59ea 100644
|
|
||||||
--- a/present/present_event.c
|
|
||||||
+++ b/present/present_event.c
|
|
||||||
@@ -174,7 +174,7 @@ present_send_complete_notify(WindowPtr window, CARD8 kind, CARD8 mode, CARD32 se
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (complete_notify)
|
|
||||||
- (*complete_notify)(window, mode, serial, ust, msc);
|
|
||||||
+ (*complete_notify)(window, kind, mode, serial, ust, msc);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
|
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
8a9ff6ee9907360f09b5bdabb8089502 xorg-server-1.16.0.tar.bz2
|
b1ff364222e921d32de40c4786e8bc47 xorg-server-1.16.1.tar.bz2
|
||||||
|
@ -41,8 +41,8 @@
|
|||||||
|
|
||||||
Summary: X.Org X11 X server
|
Summary: X.Org X11 X server
|
||||||
Name: xorg-x11-server
|
Name: xorg-x11-server
|
||||||
Version: 1.16.0
|
Version: 1.16.1
|
||||||
Release: 10%{?gitdate:.%{gitdate}}%{dist}
|
Release: 1%{?gitdate:.%{gitdate}}%{dist}
|
||||||
URL: http://www.x.org
|
URL: http://www.x.org
|
||||||
License: MIT
|
License: MIT
|
||||||
Group: User Interface/X
|
Group: User Interface/X
|
||||||
@ -99,14 +99,6 @@ Patch10000: 0001-Fedora-hack-Make-the-suid-root-wrapper-always-start-.patch
|
|||||||
# submitted http://lists.x.org/archives/xorg-devel/2014-July/042936.html
|
# submitted http://lists.x.org/archives/xorg-devel/2014-July/042936.html
|
||||||
Patch10200: 0001-xwayland-Snap-damage-reports-to-the-bounding-box.patch
|
Patch10200: 0001-xwayland-Snap-damage-reports-to-the-bounding-box.patch
|
||||||
|
|
||||||
# cherry picked from upstream
|
|
||||||
# needed to allow X to start on arm and other devices without video on pci buses
|
|
||||||
Patch10301: 0001-xfree86-Fallback-to-first-platform-device-as-primary.patch
|
|
||||||
Patch10302: 0002-xfree86-Allow-non-PCI-devices-as-primary.patch
|
|
||||||
|
|
||||||
# http://lists.x.org/archives/xorg-devel/2014-September/043722.html
|
|
||||||
Patch10303: patchwork-33052.patch
|
|
||||||
|
|
||||||
%global moduledir %{_libdir}/xorg/modules
|
%global moduledir %{_libdir}/xorg/modules
|
||||||
%global drimoduledir %{_libdir}/dri
|
%global drimoduledir %{_libdir}/dri
|
||||||
%global sdkdir %{_includedir}/xorg
|
%global sdkdir %{_includedir}/xorg
|
||||||
@ -643,6 +635,9 @@ find %{inst_srcdir}/hw/xfree86 -name \*.c -delete
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Oct 3 2014 Hans de Goede <hdegoede@redhat.com> - 1.16.1-1
|
||||||
|
- New upstream bugfix release 1.16.1 (rhbz#1144404)
|
||||||
|
|
||||||
* Thu Sep 11 2014 Adam Jackson <ajax@redhat.com> 1.16.0-10
|
* Thu Sep 11 2014 Adam Jackson <ajax@redhat.com> 1.16.0-10
|
||||||
- Only send GLX_BufferSwapComplete for PresentCompleteKindPixmap
|
- Only send GLX_BufferSwapComplete for PresentCompleteKindPixmap
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user