aboutsummaryrefslogtreecommitdiffstats
path: root/xorg-server-hwcursor-gamma
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--xorg-server-hwcursor-gamma/0001-Xext-vidmode-Reduce-verbosity-of-GetModeLine.patch374
-rw-r--r--xorg-server-hwcursor-gamma/0001-glamor-make-current-in-prepare-paths.patch34
-rw-r--r--xorg-server-hwcursor-gamma/0001-glamor-swizzle-RED-to-0-for-alpha-textures.patch16
-rw-r--r--xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch84
-rw-r--r--xorg-server-hwcursor-gamma/0001-present-Only-requeue-for-next-MSC-after-flip-failure.patch43
-rw-r--r--xorg-server-hwcursor-gamma/PKGBUILD11
-rw-r--r--xorg-server-hwcursor-gamma/call-eglBindAPI-after-eglInitialize.patch48
7 files changed, 56 insertions, 554 deletions
diff --git a/xorg-server-hwcursor-gamma/0001-Xext-vidmode-Reduce-verbosity-of-GetModeLine.patch b/xorg-server-hwcursor-gamma/0001-Xext-vidmode-Reduce-verbosity-of-GetModeLine.patch
deleted file mode 100644
index 2dbbb85..0000000
--- a/xorg-server-hwcursor-gamma/0001-Xext-vidmode-Reduce-verbosity-of-GetModeLine.patch
+++ /dev/null
@@ -1,374 +0,0 @@
-From 75eecf28ae3709181a51571132b0accd9cae316e Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Sun, 13 Mar 2016 13:54:01 +0000
-Subject: Xext/vidmode: Reduce verbosity of GetModeLine debug messages
-
-In commit f175cf45aebcdda53f3ae49c0eaf27da1f194e92
-Author: Olivier Fourdan <ofourdan@redhat.com>
-Date: Wed Feb 10 09:34:34 2016 +0100
-
- vidmode: move to a separate library of its own
-
-the verbosity of some old debug messages (which print the reply to every
-GetModeLine client request and others) was increased leading to lots of
-log spam. Downgrade the logging back to DebugF.
-
-[ajax: Fix a typo so it compiles.]
-
-Reviewed-by: Adam Jackson <ajax@redhat.com>
-References: https://bugs.freedesktop.org/show_bug.cgi?id=94515
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-Cc: Olivier Fourdan <ofourdan@redhat.com>
-
-diff --git a/Xext/vidmode.c b/Xext/vidmode.c
-index 7c838f4..0cbbdc3 100644
---- a/Xext/vidmode.c
-+++ b/Xext/vidmode.c
-@@ -69,7 +69,7 @@ typedef struct {
- dixSetPrivate(&(c)->devPrivates, VidModeClientPrivateKey, p)
-
- #ifdef DEBUG
--#define DEBUG_P(x) LogMessage(X_INFO, x"\n");
-+#define DEBUG_P(x) DebugF(x"\n")
- #else
- #define DEBUG_P(x) /**/
- #endif
-@@ -267,13 +267,13 @@ ProcVidModeGetModeLine(ClientPtr client)
- rep.vtotal = VidModeGetModeValue(mode, VIDMODE_V_TOTAL);
- rep.flags = VidModeGetModeValue(mode, VIDMODE_FLAGS);
-
-- LogMessage(X_INFO, "GetModeLine - scrn: %d clock: %ld\n",
-- stuff->screen, (unsigned long) rep.dotclock);
-- LogMessage(X_INFO, "GetModeLine - hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- rep.hdisplay, rep.hsyncstart, rep.hsyncend, rep.htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- rep.vdisplay, rep.vsyncstart, rep.vsyncend,
-- rep.vtotal, (unsigned long) rep.flags);
-+ DebugF("GetModeLine - scrn: %d clock: %ld\n",
-+ stuff->screen, (unsigned long) rep.dotclock);
-+ DebugF("GetModeLine - hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ rep.hdisplay, rep.hsyncstart, rep.hsyncend, rep.htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ rep.vdisplay, rep.vsyncstart, rep.vsyncend,
-+ rep.vtotal, (unsigned long) rep.flags);
-
- /*
- * Older servers sometimes had server privates that the VidMode
-@@ -483,23 +483,23 @@ ProcVidModeAddModeLine(ClientPtr client)
- stuff->after_vtotal = oldstuff->after_vtotal;
- stuff->after_flags = oldstuff->after_flags;
- }
-- LogMessage(X_INFO, "AddModeLine - scrn: %d clock: %ld\n",
-- (int) stuff->screen, (unsigned long) stuff->dotclock);
-- LogMessage(X_INFO, "AddModeLine - hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- stuff->hdisplay, stuff->hsyncstart,
-- stuff->hsyncend, stuff->htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend,
-- stuff->vtotal, (unsigned long) stuff->flags);
-- LogMessage(X_INFO, " after - scrn: %d clock: %ld\n",
-- (int) stuff->screen, (unsigned long) stuff->after_dotclock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- stuff->after_hdisplay, stuff->after_hsyncstart,
-- stuff->after_hsyncend, stuff->after_htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->after_vdisplay, stuff->after_vsyncstart,
-- stuff->after_vsyncend, stuff->after_vtotal,
-- (unsigned long) stuff->after_flags);
-+ DebugF("AddModeLine - scrn: %d clock: %ld\n",
-+ (int) stuff->screen, (unsigned long) stuff->dotclock);
-+ DebugF("AddModeLine - hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ stuff->hdisplay, stuff->hsyncstart,
-+ stuff->hsyncend, stuff->htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend,
-+ stuff->vtotal, (unsigned long) stuff->flags);
-+ DebugF(" after - scrn: %d clock: %ld\n",
-+ (int) stuff->screen, (unsigned long) stuff->after_dotclock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ stuff->after_hdisplay, stuff->after_hsyncstart,
-+ stuff->after_hsyncend, stuff->after_htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->after_vdisplay, stuff->after_vsyncstart,
-+ stuff->after_vsyncend, stuff->after_vtotal,
-+ (unsigned long) stuff->after_flags);
-
- if (ver < 2) {
- REQUEST_AT_LEAST_SIZE(xXF86OldVidModeAddModeLineReq);
-@@ -572,7 +572,7 @@ ProcVidModeAddModeLine(ClientPtr client)
- VidModeSetModeValue(mode, VIDMODE_FLAGS, stuff->flags);
-
- if (stuff->privsize)
-- LogMessage(X_INFO, "AddModeLine - Privates in request have been ignored\n");
-+ DebugF("AddModeLine - Privates in request have been ignored\n");
-
- /* Check that the mode is consistent with the monitor specs */
- switch (pVidMode->CheckModeForMonitor(pScreen, mode)) {
-@@ -601,7 +601,7 @@ ProcVidModeAddModeLine(ClientPtr client)
-
- pVidMode->AddModeline(pScreen, mode);
-
-- LogMessage(X_INFO, "AddModeLine - Succeeded\n");
-+ DebugF("AddModeLine - Succeeded\n");
-
- return Success;
- }
-@@ -640,14 +640,14 @@ ProcVidModeDeleteModeLine(ClientPtr client)
- stuff->flags = oldstuff->flags;
- stuff->privsize = oldstuff->privsize;
- }
-- LogMessage(X_INFO, "DeleteModeLine - scrn: %d clock: %ld\n",
-- (int) stuff->screen, (unsigned long) stuff->dotclock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- stuff->hdisplay, stuff->hsyncstart,
-- stuff->hsyncend, stuff->htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-- (unsigned long) stuff->flags);
-+ DebugF("DeleteModeLine - scrn: %d clock: %ld\n",
-+ (int) stuff->screen, (unsigned long) stuff->dotclock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ stuff->hdisplay, stuff->hsyncstart,
-+ stuff->hsyncend, stuff->htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-+ (unsigned long) stuff->flags);
-
- if (ver < 2) {
- REQUEST_AT_LEAST_SIZE(xXF86OldVidModeDeleteModeLineReq);
-@@ -662,11 +662,11 @@ ProcVidModeDeleteModeLine(ClientPtr client)
- bytes_to_int32(sizeof(xXF86VidModeDeleteModeLineReq));
- }
- if (len != stuff->privsize) {
-- LogMessage(X_INFO, "req_len = %ld, sizeof(Req) = %d, privsize = %ld, "
-- "len = %d, length = %d\n",
-- (unsigned long) client->req_len,
-- (int) sizeof(xXF86VidModeDeleteModeLineReq) >> 2,
-- (unsigned long) stuff->privsize, len, stuff->length);
-+ DebugF("req_len = %ld, sizeof(Req) = %d, privsize = %ld, "
-+ "len = %d, length = %d\n",
-+ (unsigned long) client->req_len,
-+ (int) sizeof(xXF86VidModeDeleteModeLineReq) >> 2,
-+ (unsigned long) stuff->privsize, len, stuff->length);
- return BadLength;
- }
-
-@@ -681,46 +681,46 @@ ProcVidModeDeleteModeLine(ClientPtr client)
- if (!pVidMode->GetCurrentModeline(pScreen, &mode, &dotClock))
- return BadValue;
-
-- LogMessage(X_INFO, "Checking against clock: %d (%d)\n",
-+ DebugF("Checking against clock: %d (%d)\n",
-+ VidModeGetModeValue(mode, VIDMODE_CLOCK), dotClock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ VidModeGetModeValue(mode, VIDMODE_H_DISPLAY),
-+ VidModeGetModeValue(mode, VIDMODE_H_SYNCSTART),
-+ VidModeGetModeValue(mode, VIDMODE_H_SYNCEND),
-+ VidModeGetModeValue(mode, VIDMODE_H_TOTAL));
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
-+ VidModeGetModeValue(mode, VIDMODE_V_DISPLAY),
-+ VidModeGetModeValue(mode, VIDMODE_V_SYNCSTART),
-+ VidModeGetModeValue(mode, VIDMODE_V_SYNCEND),
-+ VidModeGetModeValue(mode, VIDMODE_V_TOTAL),
-+ VidModeGetModeValue(mode, VIDMODE_FLAGS));
-+
-+ if ((pVidMode->GetDotClock(pScreen, stuff->dotclock) == dotClock) &&
-+ MODEMATCH(mode, stuff))
-+ return BadValue;
-+
-+ if (!pVidMode->GetFirstModeline(pScreen, &mode, &dotClock))
-+ return BadValue;
-+
-+ do {
-+ DebugF("Checking against clock: %d (%d)\n",
- VidModeGetModeValue(mode, VIDMODE_CLOCK), dotClock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
- VidModeGetModeValue(mode, VIDMODE_H_DISPLAY),
- VidModeGetModeValue(mode, VIDMODE_H_SYNCSTART),
- VidModeGetModeValue(mode, VIDMODE_H_SYNCEND),
- VidModeGetModeValue(mode, VIDMODE_H_TOTAL));
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
- VidModeGetModeValue(mode, VIDMODE_V_DISPLAY),
- VidModeGetModeValue(mode, VIDMODE_V_SYNCSTART),
- VidModeGetModeValue(mode, VIDMODE_V_SYNCEND),
- VidModeGetModeValue(mode, VIDMODE_V_TOTAL),
- VidModeGetModeValue(mode, VIDMODE_FLAGS));
-
-- if ((pVidMode->GetDotClock(pScreen, stuff->dotclock) == dotClock) &&
-- MODEMATCH(mode, stuff))
-- return BadValue;
--
-- if (!pVidMode->GetFirstModeline(pScreen, &mode, &dotClock))
-- return BadValue;
--
-- do {
-- LogMessage(X_INFO, "Checking against clock: %d (%d)\n",
-- VidModeGetModeValue(mode, VIDMODE_CLOCK), dotClock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- VidModeGetModeValue(mode, VIDMODE_H_DISPLAY),
-- VidModeGetModeValue(mode, VIDMODE_H_SYNCSTART),
-- VidModeGetModeValue(mode, VIDMODE_H_SYNCEND),
-- VidModeGetModeValue(mode, VIDMODE_H_TOTAL));
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
-- VidModeGetModeValue(mode, VIDMODE_V_DISPLAY),
-- VidModeGetModeValue(mode, VIDMODE_V_SYNCSTART),
-- VidModeGetModeValue(mode, VIDMODE_V_SYNCEND),
-- VidModeGetModeValue(mode, VIDMODE_V_TOTAL),
-- VidModeGetModeValue(mode, VIDMODE_FLAGS));
--
- if ((pVidMode->GetDotClock(pScreen, stuff->dotclock) == dotClock) &&
- MODEMATCH(mode, stuff)) {
- pVidMode->DeleteModeline(pScreen, mode);
-- LogMessage(X_INFO, "DeleteModeLine - Succeeded\n");
-+ DebugF("DeleteModeLine - Succeeded\n");
- return Success;
- }
- } while (pVidMode->GetNextModeline(pScreen, &mode, &dotClock));
-@@ -761,12 +761,12 @@ ProcVidModeModModeLine(ClientPtr client)
- stuff->flags = oldstuff->flags;
- stuff->privsize = oldstuff->privsize;
- }
-- LogMessage(X_INFO, "ModModeLine - scrn: %d hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- (int) stuff->screen, stuff->hdisplay, stuff->hsyncstart,
-- stuff->hsyncend, stuff->htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend,
-- stuff->vtotal, (unsigned long) stuff->flags);
-+ DebugF("ModModeLine - scrn: %d hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ (int) stuff->screen, stuff->hdisplay, stuff->hsyncstart,
-+ stuff->hsyncend, stuff->htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend,
-+ stuff->vtotal, (unsigned long) stuff->flags);
-
- if (ver < 2) {
- REQUEST_AT_LEAST_SIZE(xXF86OldVidModeModModeLineReq);
-@@ -816,7 +816,7 @@ ProcVidModeModModeLine(ClientPtr client)
- VidModeSetModeValue(modetmp, VIDMODE_FLAGS, stuff->flags);
-
- if (stuff->privsize)
-- LogMessage(X_INFO, "ModModeLine - Privates in request have been ignored\n");
-+ DebugF("ModModeLine - Privates in request have been ignored\n");
-
- /* Check that the mode is consistent with the monitor specs */
- switch (pVidMode->CheckModeForMonitor(pScreen, modetmp)) {
-@@ -856,7 +856,7 @@ ProcVidModeModModeLine(ClientPtr client)
- pVidMode->SetCrtcForMode(pScreen, mode);
- pVidMode->SwitchMode(pScreen, mode);
-
-- LogMessage(X_INFO, "ModModeLine - Succeeded\n");
-+ DebugF("ModModeLine - Succeeded\n");
- return Success;
- }
-
-@@ -896,14 +896,14 @@ ProcVidModeValidateModeLine(ClientPtr client)
- stuff->privsize = oldstuff->privsize;
- }
-
-- LogMessage(X_INFO, "ValidateModeLine - scrn: %d clock: %ld\n",
-- (int) stuff->screen, (unsigned long) stuff->dotclock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- stuff->hdisplay, stuff->hsyncstart,
-- stuff->hsyncend, stuff->htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-- (unsigned long) stuff->flags);
-+ DebugF("ValidateModeLine - scrn: %d clock: %ld\n",
-+ (int) stuff->screen, (unsigned long) stuff->dotclock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ stuff->hdisplay, stuff->hsyncstart,
-+ stuff->hsyncend, stuff->htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-+ (unsigned long) stuff->flags);
-
- if (ver < 2) {
- REQUEST_AT_LEAST_SIZE(xXF86OldVidModeValidateModeLineReq);
-@@ -956,7 +956,7 @@ ProcVidModeValidateModeLine(ClientPtr client)
- VidModeSetModeValue(modetmp, VIDMODE_V_TOTAL, stuff->vtotal);
- VidModeSetModeValue(modetmp, VIDMODE_FLAGS, stuff->flags);
- if (stuff->privsize)
-- LogMessage(X_INFO, "ValidateModeLine - Privates in request have been ignored\n");
-+ DebugF("ValidateModeLine - Privates in request have been ignored\n");
-
- /* Check that the mode is consistent with the monitor specs */
- if ((status =
-@@ -982,7 +982,7 @@ ProcVidModeValidateModeLine(ClientPtr client)
- swapl(&rep.status);
- }
- WriteToClient(client, sizeof(xXF86VidModeValidateModeLineReply), &rep);
-- LogMessage(X_INFO, "ValidateModeLine - Succeeded (status = %d)\n", status);
-+ DebugF("ValidateModeLine - Succeeded (status = %d)\n", status);
-
- return Success;
- }
-@@ -1046,14 +1046,14 @@ ProcVidModeSwitchToMode(ClientPtr client)
- stuff->privsize = oldstuff->privsize;
- }
-
-- LogMessage(X_INFO, "SwitchToMode - scrn: %d clock: %ld\n",
-- (int) stuff->screen, (unsigned long) stuff->dotclock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- stuff->hdisplay, stuff->hsyncstart,
-- stuff->hsyncend, stuff->htotal);
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-- stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-- (unsigned long) stuff->flags);
-+ DebugF("SwitchToMode - scrn: %d clock: %ld\n",
-+ (int) stuff->screen, (unsigned long) stuff->dotclock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ stuff->hdisplay, stuff->hsyncstart,
-+ stuff->hsyncend, stuff->htotal);
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %ld\n",
-+ stuff->vdisplay, stuff->vsyncstart, stuff->vsyncend, stuff->vtotal,
-+ (unsigned long) stuff->flags);
-
- if (ver < 2) {
- REQUEST_AT_LEAST_SIZE(xXF86OldVidModeSwitchToModeReq);
-@@ -1089,19 +1089,19 @@ ProcVidModeSwitchToMode(ClientPtr client)
- return BadValue;
-
- do {
-- LogMessage(X_INFO, "Checking against clock: %d (%d)\n",
-- VidModeGetModeValue(mode, VIDMODE_CLOCK), dotClock);
-- LogMessage(X_INFO, " hdsp: %d hbeg: %d hend: %d httl: %d\n",
-- VidModeGetModeValue(mode, VIDMODE_H_DISPLAY),
-- VidModeGetModeValue(mode, VIDMODE_H_SYNCSTART),
-- VidModeGetModeValue(mode, VIDMODE_H_SYNCEND),
-- VidModeGetModeValue(mode, VIDMODE_H_TOTAL));
-- LogMessage(X_INFO, " vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
-- VidModeGetModeValue(mode, VIDMODE_V_DISPLAY),
-- VidModeGetModeValue(mode, VIDMODE_V_SYNCSTART),
-- VidModeGetModeValue(mode, VIDMODE_V_SYNCEND),
-- VidModeGetModeValue(mode, VIDMODE_V_TOTAL),
-- VidModeGetModeValue(mode, VIDMODE_FLAGS));
-+ DebugF("Checking against clock: %d (%d)\n",
-+ VidModeGetModeValue(mode, VIDMODE_CLOCK), dotClock);
-+ DebugF(" hdsp: %d hbeg: %d hend: %d httl: %d\n",
-+ VidModeGetModeValue(mode, VIDMODE_H_DISPLAY),
-+ VidModeGetModeValue(mode, VIDMODE_H_SYNCSTART),
-+ VidModeGetModeValue(mode, VIDMODE_H_SYNCEND),
-+ VidModeGetModeValue(mode, VIDMODE_H_TOTAL));
-+ DebugF(" vdsp: %d vbeg: %d vend: %d vttl: %d flags: %d\n",
-+ VidModeGetModeValue(mode, VIDMODE_V_DISPLAY),
-+ VidModeGetModeValue(mode, VIDMODE_V_SYNCSTART),
-+ VidModeGetModeValue(mode, VIDMODE_V_SYNCEND),
-+ VidModeGetModeValue(mode, VIDMODE_V_TOTAL),
-+ VidModeGetModeValue(mode, VIDMODE_FLAGS));
-
- if ((pVidMode->GetDotClock(pScreen, stuff->dotclock) == dotClock) &&
- MODEMATCH(mode, stuff)) {
-@@ -1109,7 +1109,7 @@ ProcVidModeSwitchToMode(ClientPtr client)
- if (!pVidMode->SwitchMode(pScreen, mode))
- return BadValue;
-
-- LogMessage(X_INFO, "SwitchToMode - Succeeded\n");
-+ DebugF("SwitchToMode - Succeeded\n");
- return Success;
- }
- } while (pVidMode->GetNextModeline(pScreen, &mode, &dotClock));
---
-cgit v0.10.2
-
diff --git a/xorg-server-hwcursor-gamma/0001-glamor-make-current-in-prepare-paths.patch b/xorg-server-hwcursor-gamma/0001-glamor-make-current-in-prepare-paths.patch
deleted file mode 100644
index 6167395..0000000
--- a/xorg-server-hwcursor-gamma/0001-glamor-make-current-in-prepare-paths.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 422a9f7f37eb6027fa4d20a4be208978832be6d6 Mon Sep 17 00:00:00 2001
-From: Dave Airlie <airlied@redhat.com>
-Date: Wed, 15 Jul 2015 17:54:03 +1000
-Subject: [PATCH] glamor: make current in prepare paths
-
-Lots of the accel paths only make current once they start
-doing someting, so a lot of them call the bail paths without
-make current, which means on PRIME systems for example
-we end up in the wrong context.
-
-Add a prepare pixmap in the prepare fallback path.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90667
-Signed-off-by: Dave Airlie <airlied@redhat.com>
----
- glamor/glamor_prepare.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/glamor/glamor_prepare.c b/glamor/glamor_prepare.c
-index 9bfc557..68fb58f 100644
---- a/glamor/glamor_prepare.c
-+++ b/glamor/glamor_prepare.c
-@@ -45,6 +45,8 @@ glamor_prep_pixmap_box(PixmapPtr pixmap, glamor_access_t access, BoxPtr box)
- if (!GLAMOR_PIXMAP_PRIV_HAS_FBO(priv))
- return TRUE;
-
-+ glamor_make_current(glamor_priv);
-+
- RegionInit(&region, box, 1);
-
- /* See if it's already mapped */
---
-2.4.3
-
diff --git a/xorg-server-hwcursor-gamma/0001-glamor-swizzle-RED-to-0-for-alpha-textures.patch b/xorg-server-hwcursor-gamma/0001-glamor-swizzle-RED-to-0-for-alpha-textures.patch
deleted file mode 100644
index dc2e7ef..0000000
--- a/xorg-server-hwcursor-gamma/0001-glamor-swizzle-RED-to-0-for-alpha-textures.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c
-index a531f60..f4f8749 100644
---- a/glamor/glamor_fbo.c
-+++ b/glamor/glamor_fbo.c
-@@ -352,8 +352,10 @@ _glamor_create_tex(glamor_screen_private *glamor_priv,
- glBindTexture(GL_TEXTURE_2D, tex);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
-- if (format == glamor_priv->one_channel_format && format == GL_RED)
-+ if (format == glamor_priv->one_channel_format && format == GL_RED) {
-+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_R, GL_ZERO);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_A, GL_RED);
-+ }
- glamor_priv->suppress_gl_out_of_memory_logging = true;
- glTexImage2D(GL_TEXTURE_2D, 0, format, w, h, 0,
- format, GL_UNSIGNED_BYTE, NULL);
diff --git a/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch b/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch
deleted file mode 100644
index a33840a..0000000
--- a/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch
+++ /dev/null
@@ -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
-
diff --git a/xorg-server-hwcursor-gamma/0001-present-Only-requeue-for-next-MSC-after-flip-failure.patch b/xorg-server-hwcursor-gamma/0001-present-Only-requeue-for-next-MSC-after-flip-failure.patch
deleted file mode 100644
index adf5c7a..0000000
--- a/xorg-server-hwcursor-gamma/0001-present-Only-requeue-for-next-MSC-after-flip-failure.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 3b385105b2d19a1c55e9779ae88d775185eea231 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
-Date: Thu, 24 Mar 2016 17:42:47 +0900
-Subject: [PATCH xserver] present: Only requeue for next MSC after flip failure
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This code was added to deal with the driver present hook failing, in
-which case we need to wait for the next MSC before executing the
-presentation.
-
-However, it could also take effect in cases where the driver incorrectly
-thinks the current MSC matches the target one (e.g. due to the kernel
-interface only supporting 32-bit MSC values), in which case it could
-result in the presentation getting requeued over and over.
-
-To prevent such issues, check specifically for the target MSC
-immediately following the current MSC.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94596
-Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
-Reviewed-by: Keith Packard <keithp@keithp.com>
----
- present/present.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/present/present.c b/present/present.c
-index 55f6aa7..105e2bf 100644
---- a/present/present.c
-+++ b/present/present.c
-@@ -726,7 +726,7 @@ present_execute(present_vblank_ptr vblank, uint64_t ust, uint64_t crtc_msc)
- }
-
- /* If present_flip failed, we may have to requeue for the target MSC */
-- if (msc_is_after(vblank->target_msc, crtc_msc) &&
-+ if (vblank->target_msc == crtc_msc + 1 &&
- Success == present_queue_vblank(screen,
- vblank->crtc,
- vblank->event_id,
---
-2.7.4
-
diff --git a/xorg-server-hwcursor-gamma/PKGBUILD b/xorg-server-hwcursor-gamma/PKGBUILD
index 7c78459..854dee5 100644
--- a/xorg-server-hwcursor-gamma/PKGBUILD
+++ b/xorg-server-hwcursor-gamma/PKGBUILD
@@ -5,8 +5,8 @@
_pkgname=xorg-server
pkgname=xorg-server-hwcursor-gamma
epoch=2
-pkgver=1.18.1
-pkgrel=1 # 1=2 in xorg-server
+pkgver=1.18.3
+pkgrel=1 # 2 in xorg-server
pkgdesc="Xorg X server with patch to apply gamma ramps on hardware cursors"
depends=(libepoxy libxdmcp libxfont libpciaccess libdrm pixman libgcrypt libxau xorg-server-common libxshmfence libgl xf86-input-evdev)
provides=("xorg-server=${pkgver}" 'X-ABI-VIDEODRV_VERSION=20' 'X-ABI-XINPUT_VERSION=22.1' 'X-ABI-EXTENSION_VERSION=9.0' 'x-server')
@@ -25,12 +25,14 @@ makedepends=('pixman' 'libx11' 'mesa' 'mesa-libgl' 'xf86driproto' 'xcmiscproto'
source=(${url}/releases/individual/xserver/${_pkgname}-${pkgver}.tar.bz2
xvfb-run
xvfb-run.1
+ call-eglBindAPI-after-eglInitialize.patch
0001-When-an-cursor-is-set-it-is-adjusted-to-use-the.patch
0002-Fix-for-full-and-semi-transparency-under-negative-im.patch
0003-Use-Harms-s-suggest-do-not-use-inline-if.-And-fix-si.patch)
-sha256sums=('85ec56dbeb89a951295cdf4f39bf38e515f900d35e06d4a8081b114d1520789d'
+sha256sums=('ea739c22517cdbe2b5f7c0a5fd05fe8a10ac0629003e71c0c7862f4bb60142cd'
'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9'
'2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776'
+ '45fdc2a1241d458756c41a93c01846e04cc75f3c75f81f48b61533d08280918d'
'bea348631dedd66475d84ac2cfe0840f22a80a642b4680d73fead4749e47f055'
'be9169b937b5d0b44f7f05d7c08aaa5f0c1092e128ce261d9cb350f09dfe1fb0'
'0a643ae83e03faee0f4db669a33c5b3c99edbba5c86cde2c83962ae536d31081')
@@ -42,6 +44,9 @@ prepare() {
patch -Np1 -i ../0001-When-an-cursor-is-set-it-is-adjusted-to-use-the.patch
patch -Np1 -i ../0002-Fix-for-full-and-semi-transparency-under-negative-im.patch
patch -Np1 -i ../0003-Use-Harms-s-suggest-do-not-use-inline-if.-And-fix-si.patch
+
+ msg2 'Apply call-eglBindAPI-after-eglInitialize.patch'
+ patch -Np1 -i ../call-eglBindAPI-after-eglInitialize.patch
}
build() {
diff --git a/xorg-server-hwcursor-gamma/call-eglBindAPI-after-eglInitialize.patch b/xorg-server-hwcursor-gamma/call-eglBindAPI-after-eglInitialize.patch
new file mode 100644
index 0000000..09773a2
--- /dev/null
+++ b/xorg-server-hwcursor-gamma/call-eglBindAPI-after-eglInitialize.patch
@@ -0,0 +1,48 @@
+diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c
+index 4bcd3ce..16a20a7 100644
+--- a/glamor/glamor_egl.c
++++ b/glamor/glamor_egl.c
+@@ -770,11 +770,6 @@ glamor_egl_init(ScrnInfoPtr scrn, int fd)
+
+ glamor_egl->has_gem = glamor_egl_check_has_gem(fd);
+
+-#ifndef GLAMOR_GLES2
+- eglBindAPI(EGL_OPENGL_API);
+-#else
+- eglBindAPI(EGL_OPENGL_ES_API);
+-#endif
+ if (!eglInitialize
+ (glamor_egl->display, &glamor_egl->major, &glamor_egl->minor)) {
+ xf86DrvMsg(scrn->scrnIndex, X_ERROR, "eglInitialize() failed\n");
+@@ -782,6 +777,12 @@ glamor_egl_init(ScrnInfoPtr scrn, int fd)
+ goto error;
+ }
+
++#ifndef GLAMOR_GLES2
++ eglBindAPI(EGL_OPENGL_API);
++#else
++ eglBindAPI(EGL_OPENGL_ES_API);
++#endif
++
+ version = eglQueryString(glamor_egl->display, EGL_VERSION);
+ xf86Msg(X_INFO, "%s: EGL version %s:\n", glamor_name, version);
+
+diff --git a/hw/xwayland/xwayland-glamor.c b/hw/xwayland/xwayland-glamor.c
+index ad66cf6..73ccd71 100644
+--- a/hw/xwayland/xwayland-glamor.c
++++ b/hw/xwayland/xwayland-glamor.c
+@@ -298,12 +298,13 @@ xwl_drm_init_egl(struct xwl_screen *xwl_screen)
+ return;
+ }
+
+- eglBindAPI(EGL_OPENGL_API);
+ if (!eglInitialize(xwl_screen->egl_display, &major, &minor)) {
+ ErrorF("eglInitialize() failed\n");
+ return;
+ }
+
++ eglBindAPI(EGL_OPENGL_API);
++
+ version = eglQueryString(xwl_screen->egl_display, EGL_VERSION);
+ ErrorF("glamor: EGL version %s:\n", version);
+