Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] xorg-server: update to 1.20.10
@ 2020-12-01 19:57 pullmoll
  2020-12-02 20:15 ` [PR PATCH] [Merged]: " leahneukirchen
  0 siblings, 1 reply; 2+ messages in thread
From: pullmoll @ 2020-12-01 19:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 364 bytes --]

There is a new pull request by pullmoll against master on the void-packages repository

https://github.com/pullmoll/void-packages xorg-server
https://github.com/void-linux/void-packages/pull/26869

xorg-server: update to 1.20.10
Also add a patch to fix build w/ musl-1.2.1

A patch file from https://github.com/void-linux/void-packages/pull/26869.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server-26869.patch --]
[-- Type: text/x-diff, Size: 13677 bytes --]

From a34844b009c32f24570af91459eefea849e802b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 1 Dec 2020 20:51:23 +0100
Subject: [PATCH] xorg-server: update to 1.20.10

Also add a patch to fix build w/ musl-1.2.1
---
 .../patches/fix-musl-input_event.patch        |  43 ++++
 .../fix-use-after-free-after-switch-vt.patch  |  30 ---
 srcpkgs/xorg-server/patches/mr-508.patch      | 229 ------------------
 srcpkgs/xorg-server/template                  |   6 +-
 4 files changed, 46 insertions(+), 262 deletions(-)
 create mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-use-after-free-after-switch-vt.patch
 delete mode 100644 srcpkgs/xorg-server/patches/mr-508.patch

diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
new file mode 100644
index 00000000000..ec1ae8f3751
--- /dev/null
+++ b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
@@ -0,0 +1,43 @@
+Source: @pullmoll
+Upstream: no
+Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
+
+--- hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
++++ hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
+@@ -278,8 +278,8 @@
+ 
+     gettimeofday(&tv, NULL);
+     for (i = 0; i < 5; i++) {
+-        event.time.tv_sec = tv.tv_sec;
+-        event.time.tv_usec = tv.tv_usec;
++        event.input_event_sec = tv.tv_sec;
++        event.input_event_usec = tv.tv_usec;
+         event.type = EV_LED;
+         if (i == 0)
+             led = 1;            /* LED_CAPSL == 0x01 */
+--- hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
++++ hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
+@@ -114,8 +114,8 @@
+         if ((fd = open(name, O_RDWR, 0)) >= 0) {
+             printf("%s: open, fd = %d\n", name, fd);
+             for (i = 0; i < LED_MAX; i++) {
+-                event.time.tv_sec = time(0);
+-                event.time.tv_usec = 0;
++                event.input_event_sec = time(0);
++                event.input_event_usec = 0;
+                 event.type = EV_LED;
+                 event.code = i;
+                 event.value = 0;
+@@ -123,9 +123,10 @@
+             }
+ 
+             while ((rc = read(fd, &event, sizeof(event))) > 0) {
++		struct timeval t = {event.input_event_sec, event.input_event_usec};
+                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
+                        " value 0x%08x; ",
+-                       ctime(&event.time.tv_sec),
+-                       event.time.tv_usec, event.type, event.code, event.value);
++                       ctime(&t.tv_sec),
++                       t.tv_usec, event.type, event.code, event.value);
+                 switch (event.type) {
+                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-use-after-free-after-switch-vt.patch b/srcpkgs/xorg-server/patches/fix-use-after-free-after-switch-vt.patch
deleted file mode 100644
index 8627de7e707..00000000000
--- a/srcpkgs/xorg-server/patches/fix-use-after-free-after-switch-vt.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 919f1f46fc67dae93b2b3f278fcbfc77af34ec58 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
-Date: Mon, 31 Aug 2020 12:10:43 +0200
-Subject: [PATCH] xfree86: Take second reference for SavedCursor in
- xf86CursorSetCursor
-
-The same pointer is kept in CurrentCursor as well, therefore two
-RefCursor calls are needed.
-
-Fixes use-after-free after switching VTs.
-
-Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1067
----
- hw/xfree86/ramdac/xf86CursorRD.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git hw/xfree86/ramdac/xf86CursorRD.c hw/xfree86/ramdac/xf86CursorRD.c
-index 9aa3de97bd..c8362d1690 100644
---- hw/xfree86/ramdac/xf86CursorRD.c
-+++ hw/xfree86/ramdac/xf86CursorRD.c
-@@ -334,6 +334,9 @@ xf86CursorSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCurs,
-         ScreenPriv->HotY = cursor->bits->yhot;
- 
-         if (!infoPtr->pScrn->vtSema) {
-+            cursor = RefCursor(cursor);
-+            if (ScreenPriv->SavedCursor)
-+                FreeCursor(ScreenPriv->SavedCursor, None);
-             ScreenPriv->SavedCursor = cursor;
-             return;
-         }
diff --git a/srcpkgs/xorg-server/patches/mr-508.patch b/srcpkgs/xorg-server/patches/mr-508.patch
deleted file mode 100644
index d3a47c866fa..00000000000
--- a/srcpkgs/xorg-server/patches/mr-508.patch
+++ /dev/null
@@ -1,229 +0,0 @@
-https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/508/diffs
-
-From 4b6fce5975c2f931a0478cf4deeec97529b05eb6 Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Tue, 8 Sep 2020 10:01:55 +0200
-Subject: [PATCH 1/3] Revert "linux: Fix platform device probe for DT-based
- PCI"
-
-This reverts commit 249a12c54a9316b089bd22683c011519348496df.
-
-https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068
----
- config/udev.c | 27 +--------------------------
- 1 file changed, 1 insertion(+), 26 deletions(-)
-
---- config/udev.c
-+++ config/udev.c
-@@ -464,31 +464,6 @@ config_udev_fini(void)
- 
- #ifdef CONFIG_UDEV_KMS
- 
--/* Find the last occurrence of the needle in haystack */
--static char *strrstr(const char *haystack, const char *needle)
--{
--    char *prev, *last, *tmp;
--
--    prev = strstr(haystack, needle);
--    if (!prev)
--        return NULL;
--
--    last = prev;
--    tmp = prev + 1;
--
--    while (tmp) {
--        last = strstr(tmp, needle);
--        if (!last)
--            return prev;
--        else {
--            prev = last;
--            tmp = prev + 1;
--        }
--    }
--
--    return last;
--}
--
- static void
- config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path, const char *syspath,
-                                int major, int minor,
-@@ -503,7 +478,7 @@ config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path
-     attribs->minor = minor;
- 
-     value = udev_device_get_property_value(udev_device, "ID_PATH");
--    if (value && (str = strrstr(value, "pci-"))) {
-+    if (value && (str = strstr(value, "pci-"))) {
-         attribs->busid = XNFstrdup(str);
-         attribs->busid[3] = ':';
-     }
--- 
-GitLab
-
-
-From 39cb95e959fab97a7e255dda1a1599b096fb0f7e Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Tue, 8 Sep 2020 10:03:11 +0200
-Subject: [PATCH 2/3] Revert "linux: Fix platform device PCI detection for
- complex bus topologies"
-
-This reverts commit 5c96eb5f44e62a4cfe835023cde304eb5795b8fd.
-
-https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068
----
- config/udev.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
---- config/udev.c
-+++ config/udev.c
-@@ -470,7 +470,7 @@ config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path
-                                config_odev_probe_proc_ptr probe_callback)
- {
-     struct OdevAttributes *attribs = config_odev_allocate_attributes();
--    const char *value, *str;
-+    const char *value;
- 
-     attribs->path = XNFstrdup(path);
-     attribs->syspath = XNFstrdup(syspath);
-@@ -478,8 +478,8 @@ config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path
-     attribs->minor = minor;
- 
-     value = udev_device_get_property_value(udev_device, "ID_PATH");
--    if (value && (str = strstr(value, "pci-"))) {
--        attribs->busid = XNFstrdup(str);
-+    if (value && !strncmp(value, "pci-", 4)) {
-+        attribs->busid = XNFstrdup(value);
-         attribs->busid[3] = ':';
-     }
- 
--- 
-GitLab
-
-
-From af4c84ce8855e84c0ad89b929bc972e884f0b8e3 Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Tue, 8 Sep 2020 10:03:33 +0200
-Subject: [PATCH 3/3] Revert "linux: Make platform device probe less fragile"
-
-This reverts commit 74b7427c41b4e4104af7abf70a996c086d3d7628.
-
-https://gitlab.freedesktop.org/xorg/xserver/-/issues/1068
----
- config/udev.c                              | 17 +++++------------
- hw/xfree86/os-support/linux/lnx_platform.c | 20 ++++++++++++++++++--
- 2 files changed, 23 insertions(+), 14 deletions(-)
-
---- config/udev.c
-+++ config/udev.c
-@@ -56,7 +56,7 @@ static struct udev_monitor *udev_monitor;
- 
- #ifdef CONFIG_UDEV_KMS
- static void
--config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path, const char *syspath,
-+config_udev_odev_setup_attribs(const char *path, const char *syspath,
-                                int major, int minor,
-                                config_odev_probe_proc_ptr probe_callback);
- #endif
-@@ -128,7 +128,7 @@ device_added(struct udev_device *udev_device)
- 
-         LogMessage(X_INFO, "config/udev: Adding drm device (%s)\n", path);
- 
--        config_udev_odev_setup_attribs(udev_device, path, syspath, major(devnum),
-+        config_udev_odev_setup_attribs(path, syspath, major(devnum),
-                                        minor(devnum), NewGPUDeviceRequest);
-         return;
-     }
-@@ -322,7 +322,7 @@ device_removed(struct udev_device *device)
- 
-         LogMessage(X_INFO, "config/udev: removing GPU device %s %s\n",
-                    syspath, path);
--        config_udev_odev_setup_attribs(device, path, syspath, major(devnum),
-+        config_udev_odev_setup_attribs(path, syspath, major(devnum),
-                                        minor(devnum), DeleteGPUDeviceRequest);
-         /* Retry vtenter after a drm node removal */
-         systemd_logind_vtenter();
-@@ -465,24 +465,17 @@ config_udev_fini(void)
- #ifdef CONFIG_UDEV_KMS
- 
- static void
--config_udev_odev_setup_attribs(struct udev_device *udev_device, const char *path, const char *syspath,
-+config_udev_odev_setup_attribs(const char *path, const char *syspath,
-                                int major, int minor,
-                                config_odev_probe_proc_ptr probe_callback)
- {
-     struct OdevAttributes *attribs = config_odev_allocate_attributes();
--    const char *value;
- 
-     attribs->path = XNFstrdup(path);
-     attribs->syspath = XNFstrdup(syspath);
-     attribs->major = major;
-     attribs->minor = minor;
- 
--    value = udev_device_get_property_value(udev_device, "ID_PATH");
--    if (value && !strncmp(value, "pci-", 4)) {
--        attribs->busid = XNFstrdup(value);
--        attribs->busid[3] = ':';
--    }
--
-     /* ownership of attribs is passed to probe layer */
-     probe_callback(attribs);
- }
-@@ -523,7 +516,7 @@ config_udev_odev_probe(config_odev_probe_proc_ptr probe_callback)
-         else if (!check_seat(udev_device))
-             goto no_probe;
- 
--        config_udev_odev_setup_attribs(udev_device, path, syspath, major(devnum),
-+        config_udev_odev_setup_attribs(path, syspath, major(devnum),
-                                        minor(devnum), probe_callback);
-     no_probe:
-         udev_device_unref(udev_device);
---- hw/xfree86/os-support/linux/lnx_platform.c
-+++ hw/xfree86/os-support/linux/lnx_platform.c
-@@ -23,13 +23,13 @@
- static Bool
- get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
- {
-+    drmSetVersion sv;
-     drmVersionPtr v;
-+    char *buf;
-     int fd;
-     int err = 0;
-     Bool paused, server_fd = FALSE;
- 
--    LogMessage(X_INFO, "Platform probe for %s\n", attribs->syspath);
--
-     fd = systemd_logind_take_fd(attribs->major, attribs->minor, path, &paused);
-     if (fd != -1) {
-         if (paused) {
-@@ -48,6 +48,18 @@ get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
-     if (fd == -1)
-         return FALSE;
- 
-+    sv.drm_di_major = 1;
-+    sv.drm_di_minor = 4;
-+    sv.drm_dd_major = -1;       /* Don't care */
-+    sv.drm_dd_minor = -1;       /* Don't care */
-+
-+    err = drmSetInterfaceVersion(fd, &sv);
-+    if (err) {
-+        xf86Msg(X_ERROR, "%s: failed to set DRM interface version 1.4: %s\n",
-+                path, strerror(-err));
-+        goto out;
-+    }
-+
-     /* for a delayed probe we've already added the device */
-     if (delayed_index == -1) {
-             xf86_add_platform_device(attribs, FALSE);
-@@ -57,6 +69,10 @@ get_drm_info(struct OdevAttributes *attribs, char *path, int delayed_index)
-     if (server_fd)
-         xf86_platform_devices[delayed_index].flags |= XF86_PDEV_SERVER_FD;
- 
-+    buf = drmGetBusid(fd);
-+    xf86_platform_odev_attributes(delayed_index)->busid = XNFstrdup(buf);
-+    drmFreeBusid(buf);
-+
-     v = drmGetVersion(fd);
-     if (!v) {
-         xf86Msg(X_ERROR, "%s: failed to query DRM version\n", path);
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index 6e589ed7762..1cbee6712e2 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,7 +1,7 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.9
-revision=4
+version=1.20.10
+revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
@@ -25,7 +25,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.bz2"
-checksum=e219f2e0dfe455467939149d7cd2ee53b79b512cc1d2094ae4f5c9ed9ccd3571
+checksum=977420c082450dc808de301ef56af4856d653eea71519a973c3490a780cb7c99
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PR PATCH] [Merged]: xorg-server: update to 1.20.10
  2020-12-01 19:57 [PR PATCH] xorg-server: update to 1.20.10 pullmoll
@ 2020-12-02 20:15 ` leahneukirchen
  0 siblings, 0 replies; 2+ messages in thread
From: leahneukirchen @ 2020-12-02 20:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 207 bytes --]

There's a merged pull request on the void-packages repository

xorg-server: update to 1.20.10
https://github.com/void-linux/void-packages/pull/26869

Description:
Also add a patch to fix build w/ musl-1.2.1

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-12-02 20:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-01 19:57 [PR PATCH] xorg-server: update to 1.20.10 pullmoll
2020-12-02 20:15 ` [PR PATCH] [Merged]: " leahneukirchen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).