Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[xsrc/xorg]: xsrc/external/mit/xorg-server/dist initial import of xorg-server...
details: https://anonhg.NetBSD.org/xsrc/rev/2c3a42213d6e
branches: xorg
changeset: 10631:2c3a42213d6e
user: mrg <mrg%NetBSD.org@localhost>
date: Sat Dec 05 20:27:45 2020 +0000
description:
initial import of xorg-server-1.20.10
diffstat:
external/mit/xorg-server/dist/ChangeLog | 1885 ++++++
external/mit/xorg-server/dist/Makefile.in | 1 +
external/mit/xorg-server/dist/Xext/Makefile.am | 10 +-
external/mit/xorg-server/dist/Xext/Makefile.in | 36 +-
external/mit/xorg-server/dist/Xi/Makefile.in | 1 +
external/mit/xorg-server/dist/Xi/xichangehierarchy.c | 2 +-
external/mit/xorg-server/dist/Xi/xipassivegrab.c | 10 +-
external/mit/xorg-server/dist/aclocal.m4 | 2 +-
external/mit/xorg-server/dist/composite/Makefile.in | 1 +
external/mit/xorg-server/dist/config.guess | 815 +-
external/mit/xorg-server/dist/config.sub | 2779 ++++-----
external/mit/xorg-server/dist/config/Makefile.in | 1 +
external/mit/xorg-server/dist/configure | 149 +-
external/mit/xorg-server/dist/configure.ac | 15 +-
external/mit/xorg-server/dist/damageext/Makefile.in | 1 +
external/mit/xorg-server/dist/dbe/Makefile.in | 1 +
external/mit/xorg-server/dist/dix/Makefile.in | 1 +
external/mit/xorg-server/dist/dix/devices.c | 2 +-
external/mit/xorg-server/dist/dix/events.c | 8 +-
external/mit/xorg-server/dist/dix/pixmap.c | 2 +-
external/mit/xorg-server/dist/doc/Makefile.in | 1 +
external/mit/xorg-server/dist/doc/dtrace/Makefile.in | 1 +
external/mit/xorg-server/dist/doc/dtrace/Xserver-DTrace.xml | 16 +-
external/mit/xorg-server/dist/dri3/Makefile.in | 1 +
external/mit/xorg-server/dist/exa/Makefile.in | 1 +
external/mit/xorg-server/dist/exa/exa_accel.c | 2 +-
external/mit/xorg-server/dist/fb/Makefile.in | 1 +
external/mit/xorg-server/dist/glamor/Makefile.in | 1 +
external/mit/xorg-server/dist/glamor/glamor.c | 16 +
external/mit/xorg-server/dist/glamor/glamor.h | 5 +
external/mit/xorg-server/dist/glamor/glamor_copy.c | 8 +-
external/mit/xorg-server/dist/glamor/glamor_egl.c | 19 +
external/mit/xorg-server/dist/glamor/glamor_fbo.c | 12 +
external/mit/xorg-server/dist/glamor/glamor_picture.c | 4 +-
external/mit/xorg-server/dist/glamor/glamor_prepare.c | 28 +-
external/mit/xorg-server/dist/glamor/glamor_priv.h | 2 +
external/mit/xorg-server/dist/glamor/glamor_rects.c | 18 +-
external/mit/xorg-server/dist/glx/Makefile.am | 4 +-
external/mit/xorg-server/dist/glx/Makefile.in | 9 +-
external/mit/xorg-server/dist/glx/glxdri2.c | 2 +-
external/mit/xorg-server/dist/hw/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/config/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/config/dmxconfig.c | 2 +-
external/mit/xorg-server/dist/hw/dmx/config/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/config/parser.c | 1297 ++--
external/mit/xorg-server/dist/hw/dmx/config/parser.h | 50 +-
external/mit/xorg-server/dist/hw/dmx/config/xdmxconfig.c | 2 +-
external/mit/xorg-server/dist/hw/dmx/dmxinit.c | 9 +
external/mit/xorg-server/dist/hw/dmx/doc/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/doxygen/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/examples/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/glxProxy/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/glxProxy/glxext.c | 2 -
external/mit/xorg-server/dist/hw/dmx/input/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/dmx/man/Xdmx.man | 2 +-
external/mit/xorg-server/dist/hw/kdrive/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/kdrive/ephyr/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/kdrive/ephyr/ephyrinit.c | 9 +
external/mit/xorg-server/dist/hw/kdrive/ephyr/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/kdrive/src/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/vfb/InitOutput.c | 9 +
external/mit/xorg-server/dist/hw/vfb/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/vfb/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/common/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/common/xf86Init.c | 10 +
external/mit/xorg-server/dist/hw/xfree86/common/xf86Module.h | 2 +-
external/mit/xorg-server/dist/hw/xfree86/ddc/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/ddc/edid.h | 17 +-
external/mit/xorg-server/dist/hw/xfree86/ddc/interpret_edid.c | 27 +
external/mit/xorg-server/dist/hw/xfree86/ddc/xf86DDC.h | 3 +
external/mit/xorg-server/dist/hw/xfree86/dixmods/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/doc/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/dri/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/dri2/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/dri2/pci_ids/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/drivers/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/dri2.c | 29 +-
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c | 69 +-
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h | 2 +
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c | 203 +-
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.h | 16 +-
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c | 33 +-
external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c | 7 +-
external/mit/xorg-server/dist/hw/xfree86/exa/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/exa/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/fbdevhw/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/fbdevhw/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/glamor_egl/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/i2c/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/int10/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/loader/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/man/Xorg.man | 8 +-
external/mit/xorg-server/dist/hw/xfree86/man/xorg.conf.man | 2 +-
external/mit/xorg-server/dist/hw/xfree86/modes/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/modes/xf86Crtc.c | 3 +-
external/mit/xorg-server/dist/hw/xfree86/modes/xf86Rotate.c | 5 +-
external/mit/xorg-server/dist/hw/xfree86/os-support/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/bsd/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/bsd/bsd_init.c | 6 +
external/mit/xorg-server/dist/hw/xfree86/os-support/bus/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/hurd/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/hurd/hurd_init.c | 6 +
external/mit/xorg-server/dist/hw/xfree86/os-support/linux/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/linux/lnx_init.c | 6 +
external/mit/xorg-server/dist/hw/xfree86/os-support/misc/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/solaris/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/solaris/sun_vid.c | 21 +-
external/mit/xorg-server/dist/hw/xfree86/os-support/stub/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/os-support/stub/stub_init.c | 6 +
external/mit/xorg-server/dist/hw/xfree86/os-support/xf86_OSproc.h | 1 +
external/mit/xorg-server/dist/hw/xfree86/parser/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/ramdac/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/ramdac/xf86CursorRD.c | 6 +-
external/mit/xorg-server/dist/hw/xfree86/shadowfb/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/utils/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/utils/cvt/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/utils/gtf/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/utils/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/vbe/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/vgahw/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/x86emu/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xfree86/xkb/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xnest/Init.c | 9 +
external/mit/xorg-server/dist/hw/xnest/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xnest/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/GL/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/bundle/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/mach-startup/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/man/Xquartz.man | 2 +-
external/mit/xorg-server/dist/hw/xquartz/pbproxy/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xquartz/xpr/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwayland/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwayland/xwayland-glamor-eglstream.c | 2 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland-glamor-gbm.c | 62 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland-input.c | 84 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland-output.c | 41 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland-present.c | 145 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland-vidmode.c | 1 +
external/mit/xorg-server/dist/hw/xwayland/xwayland.c | 146 +-
external/mit/xorg-server/dist/hw/xwayland/xwayland.h | 14 +-
external/mit/xorg-server/dist/hw/xwin/InitOutput.c | 9 +
external/mit/xorg-server/dist/hw/xwin/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwin/dri/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwin/glx/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwin/man/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwin/winclipboard/Makefile.in | 1 +
external/mit/xorg-server/dist/hw/xwin/winprefsyacc.c | 1294 ++--
external/mit/xorg-server/dist/hw/xwin/winprefsyacc.h | 86 +-
external/mit/xorg-server/dist/include/Makefile.in | 1 +
external/mit/xorg-server/dist/include/dix-config.h.in | 3 +
external/mit/xorg-server/dist/include/do-not-use-config.h.in | 3 +
external/mit/xorg-server/dist/include/meson.build | 2 +
external/mit/xorg-server/dist/include/misc.h | 2 +-
external/mit/xorg-server/dist/include/os.h | 2 +
external/mit/xorg-server/dist/ltmain.sh | 10 +
external/mit/xorg-server/dist/m4/libtool.m4 | 9 +-
external/mit/xorg-server/dist/man/Makefile.in | 1 +
external/mit/xorg-server/dist/meson.build | 2 +-
external/mit/xorg-server/dist/mi/Makefile.in | 1 +
external/mit/xorg-server/dist/miext/Makefile.in | 1 +
external/mit/xorg-server/dist/miext/damage/Makefile.in | 1 +
external/mit/xorg-server/dist/miext/rootless/Makefile.in | 1 +
external/mit/xorg-server/dist/miext/shadow/Makefile.in | 1 +
external/mit/xorg-server/dist/miext/sync/Makefile.in | 1 +
external/mit/xorg-server/dist/os/Makefile.in | 1 +
external/mit/xorg-server/dist/os/backtrace.c | 7 +-
external/mit/xorg-server/dist/os/inputthread.c | 2 +
external/mit/xorg-server/dist/os/io.c | 5 +
external/mit/xorg-server/dist/os/ospoll.c | 24 +-
external/mit/xorg-server/dist/present/Makefile.in | 1 +
external/mit/xorg-server/dist/present/present_execute.c | 23 +-
external/mit/xorg-server/dist/present/present_priv.h | 6 +-
external/mit/xorg-server/dist/present/present_scmd.c | 16 +-
external/mit/xorg-server/dist/present/present_screen.c | 8 +-
external/mit/xorg-server/dist/present/present_vblank.c | 18 +-
external/mit/xorg-server/dist/present/present_wnmd.c | 84 +-
external/mit/xorg-server/dist/pseudoramiX/Makefile.in | 1 +
external/mit/xorg-server/dist/randr/Makefile.in | 1 +
external/mit/xorg-server/dist/randr/rrcrtc.c | 8 +-
external/mit/xorg-server/dist/record/Makefile.in | 1 +
external/mit/xorg-server/dist/record/record.c | 10 +-
external/mit/xorg-server/dist/render/Makefile.in | 1 +
external/mit/xorg-server/dist/test/Makefile.in | 1 +
external/mit/xorg-server/dist/test/misc.c | 2 +-
external/mit/xorg-server/dist/test/xi1/protocol-xchangedevicecontrol.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-common.c | 2 +
external/mit/xorg-server/dist/test/xi2/protocol-common.h | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xigetclientpointer.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xigetselectedevents.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xipassivegrabdevice.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xiquerydevice.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xiquerypointer.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xiqueryversion.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xiselectevents.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xisetclientpointer.c | 2 +-
external/mit/xorg-server/dist/test/xi2/protocol-xiwarppointer.c | 2 +-
external/mit/xorg-server/dist/xfixes/Makefile.in | 1 +
external/mit/xorg-server/dist/xkb/Makefile.in | 1 +
external/mit/xorg-server/dist/xkb/xkb.c | 166 +-
external/mit/xorg-server/dist/xkb/xkbSwap.c | 2 +-
207 files changed, 6545 insertions(+), 3618 deletions(-)
diffs (truncated from 16589 to 300 lines):
diff -r ad63b0fe39e9 -r 2c3a42213d6e external/mit/xorg-server/dist/ChangeLog
--- a/external/mit/xorg-server/dist/ChangeLog Mon Nov 02 04:43:17 2020 +0000
+++ b/external/mit/xorg-server/dist/ChangeLog Sat Dec 05 20:27:45 2020 +0000
@@ -1,3 +1,1888 @@
+commit bc111a2e67e16d4e6d4f3196ab86c22c1e278c45
+Author: Matt Turner <mattst88%gmail.com@localhost>
+Date: Tue Dec 1 10:55:00 2020 -0500
+
+ xserver 1.20.10
+
+ Signed-off-by: Matt Turner <mattst88%gmail.com@localhost>
+
+commit 06d1a032ee491547f7037c3ff042065dc2aeaa99
+Author: Matthieu Herrb <matthieu%herrb.eu@localhost>
+Date: Thu Nov 12 19:15:07 2020 +0100
+
+ Check SetMap request length carefully.
+
+ Avoid out of bounds memory accesses on too short request.
+
+ ZDI-CAN 11572 / CVE-2020-14360
+
+ This vulnerability was discovered by:
+ Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
+
+ Signed-off-by: Matthieu Herrb <matthieu%herrb.eu@localhost>
+ (cherry picked from commit 446ff2d3177087b8173fa779fa5b77a2a128988b)
+
+commit 7ccb3b0eabb4658daf0ecb2c78a53609ae2c263b
+Author: Matthieu Herrb <matthieu%herrb.eu@localhost>
+Date: Sun Oct 11 17:05:09 2020 +0200
+
+ Fix XkbSetDeviceInfo() and SetDeviceIndicators() heap overflows
+
+ ZDI-CAN 11389 / CVE-2020-25712
+
+ This vulnerability was discovered by:
+ Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
+
+ Signed-off-by: Matthieu Herrb <matthieu%herrb.eu@localhost>
+ (cherry picked from commit 87c64fc5b0db9f62f4e361444f4b60501ebf67b9)
+
+commit 440ed5948ba5818abf5ea5fdc5a9d98514658fd3
+Author: Michel Dänzer <mdaenzer%redhat.com@localhost>
+Date: Tue Dec 1 11:25:31 2020 +0100
+
+ present/wnmd: Translate update region to screen space
+
+ The region as passed in is in the source pixmap's coordinate space, so
+ intersecting it with the clipList (which is in screen space) resulted in
+ disappointment.
+
+ Fixes Firefox popups such as the hamburger menu when using the EGL
+ backend.
+
+ v2:
+ * Drop vblank->x/y_off from RegionTranslate call, since they're always
+ 0 here (present_wnmd_check_flip rejects flips for x/y_off != 0).
+
+ Reported-by: Robert Mader <robert.mader%posteo.de@localhost>
+ Tested-by: Robert Mader <robert.mader%posteo.de@localhost>
+ Reviewed-by: Olivier Fourdan <ofourdan%redhat.com@localhost>
+ Tested-by: Joakim Tjernlund <joakim.tjernlund%infinera.com@localhost> # v1
+ (cherry picked from commit 466b8b43fb355c6040cee45406860b8b8c04e948)
+
+commit 54f9af1c61bd10e2e65cbb17069e0c9ec1f9a2c5
+Author: Kishore Kadiyala <kishore.kadiyala%intel.com@localhost>
+Date: Tue Dec 1 11:13:51 2020 +0100
+
+ modesetting: keep going if a modeset fails on EnterVT
+
+ There was a time when setting a mode on a CRTC would not depend on the
+ associated connector's state. If a mode had been set successfully once,
+ it would mean it would work later on.
+
+ This changed with the introduction of new connectors type that now
+ require a link training sequence (DP, HDMI 2.0), and that means that
+ some events may have happened while the X server was not master that
+ would then prevent the mode from successfully be restored to its
+ previous state.
+
+ This patch relaxes the requirement that all modes should be restored on
+ EnterVT, or the entire X-Server would go down by allowing modesets to
+ fail (with some warnings). If a modeset fails, the CRTC will be
+ disabled, and a RandR event will be sent for the desktop environment to
+ fix the situation as well as possible.
+
+ Additional patches might be needed to make sure that the user would
+ never be left with all screens black in some scenarios.
+
+ v2 (Martin Peres):
+ - whitespace fixes
+ - remove the uevent handling (it is done in a previous patch)
+ - improve the commit message
+ - reduce the size of the patch by not changing lines needlessly
+ - return FALSE if one modeset fails in ignore mode
+ - add comments/todos to explain why we do things
+ - disable the CRTCs that failed the modeset
+
+ Signed-off-by: Kishore Kadiyala <kishore.kadiyala%intel.com@localhost>
+ Signed-off-by: Martin Peres <martin.peres%linux.intel.com@localhost>
+ Reviewed-by: Daniel Vetter <daniel.vetter%ffwll.ch@localhost>
+ Tested-by: Kishore Kadiyala <kishore.kadiyala%intel.com@localhost>
+ Closes: #1010
+ (cherry picked from commit efb3abddd49fb75bd6d0e31046fed43d258c93da)
+
+commit bd0f53725b581e4698f5f3ec366a9507bd2556e2
+Author: Martin Peres <martin.peres%linux.intel.com@localhost>
+Date: Tue Dec 1 11:10:34 2020 +0100
+
+ modesetting: check the kms state on EnterVT
+
+ Normally, we would receive a uevent coming from Linux's DRM subsystem,
+ which would trigger the check for disappearing/appearing resources.
+ However, this event is not received when X is not master (another VT
+ is selected), and so the userspace / desktop environment would not be
+ notified about the changes that happened while X wasn't master.
+
+ To fix the issue, this patch forces a refresh on EnterVT by splitting
+ the kms-checking code from the uevent handling into its own (exported)
+ function called drmmode_update_kms_state. This function is then called
+ from both the uevent-handling function, and on EnterVT right before
+ restoring the modes.
+
+ Signed-off-by: Martin Peres <martin.peres%linux.intel.com@localhost>
+ Reviewed-by: Daniel Vetter <daniel.vetter%ffwll.ch@localhost>
+ Acked-by: Kishore Kadiyala <kishore.kadiyala%intel.com@localhost>
+ Tested-by: Kishore Kadiyala <kishore.kadiyala%intel.com@localhost>
+ (cherry picked from commit 293cf660c95d7ba36510bcc4114d7fd5c5f3801c)
+
+commit 5c400cae1f9817045378966effa6bca91e45aead
+Author: Olivier Fourdan <ofourdan%redhat.com@localhost>
+Date: Tue Oct 27 16:33:55 2020 +0100
+
+ configure: Build hashtable for Xres and glvnd
+
+ With autoconf, hashtable support is built along with Xres support.
+
+ Yet, glvnd also use it, so when disabling Xres from configure, the
+ build will fail at link time because hashtable functions are not
+ available.
+
+ Untie the build of hashtable from Xres support, just like meson build
+ does.
+
+ Signed-off-by: Olivier Fourdan <ofourdan%redhat.com@localhost>
+ Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1091
+ (cherry picked from commit 899cebb76ab7754fea49f7babcd64a7e94052cc8)
+
+commit 253569a3d281996d7c84041020e14313756900da
+Author: Olivier Fourdan <ofourdan%redhat.com@localhost>
+Date: Thu Nov 5 18:35:54 2020 +0100
+
+ xwayland: Create an xwl_window for toplevel only
+
+ One general assumption in Xwayland is that the xwl_window remains the
+ same for all the child windows of the toplevel window.
+
+ When mapping a new X11 window, ensure_surface_for_window() checks for an
+ existing xwl_window by using xwl_window_get() which will just check for
+ the registered xwl_window for the window.
+
+ That means that a client mapping a child window of an existing window
+ with a xwl_window will get another different xwl_window.
+
+ If an X11 client issues a Present request on the parent window, hence
+ placed underneath its child window of the same size, the Wayland
+ compositor may not send the frame callback event for the parent's
+ Wayland surface which is reckoned to be not visible, obscured behind
+ the other Wayland surface for the child X11 window.
+
+ That bug affects some games running in wine which may get 1 fps because
+ the repaint occurs only on timeout with a long interval (as with, e.g.
+ https://bugs.winehq.org/show_bug.cgi?id=47066)
+
+ Fix ensure_surface_for_window() by using xwl_window_from_window() which
+ will walk the window tree, so that a child window won't get another
+ xwl_window than its parent.
+
+ https://gitlab.freedesktop.org/xorg/xserver/-/issues/1099
+ See-also: https://bugs.winehq.org/show_bug.cgi?id=47066
+ Signed-off-by: Olivier Fourdan <ofourdan%redhat.com@localhost>
+ Reviewed-by: Michel Dänzer <mdaenzer%redhat.com@localhost>
+ (cherry picked from commit 606ba7fc51e5420646f75c4e672fbe61eb7c7e6e)
+
+commit 0811a9ff783c252b3e4d558bf31c6b066b0633e1
+Author: Olivier Fourdan <ofourdan%redhat.com@localhost>
+Date: Mon Nov 2 15:44:31 2020 +0100
+
+ xwayland: non-rootless requires the wl_shell protocol
+
+ When running non-rootless, Xwayland requires that the Wayland compositor
+ supports the wl_shell protocol.
+
+ Check for wl_shell protocol support at startup and exit cleanly if
+ missing rather than segfaulting later in ensure_surface_for_window()
+ while trying to use wl_shell_get_shell_surface().
+
+ Signed-off-by: Olivier Fourdan <ofourdan%redhat.com@localhost>
+ Reviewed-by: Michel Dänzer <mdaenzer%redhat.com@localhost>
+ Reviewed-by: Simon Ser <contact%emersion.fr@localhost>
+ (cherry picked from commit ffd02d9b26bd560849c407a6dd4f5c4d7d2c1736)
+
+commit b3ae038c32870a4a1bb42b6e1cf2ebedc8b7bc8d
+Author: Alex Goins <agoins%nvidia.com@localhost>
+Date: Mon Oct 5 18:19:52 2020 -0500
+
+ glamor: Update pixmap's devKind when making it exportable
+
+ When making a pixmap exportable, glamor will currently create a temporary
+ exported pixmap backed by a GBM bo, with the devKind updated to the stride of
+ the bo. However, when the backing of the exported pixmap is swapped into the
+ original, the devKind of the original is not updated.
+
+ Some GBM bos may get implicitly padded, in which case the devKind of the pixmap
+ will not match the stride of the backing bo. For example, an 800x600 pixmap will
+ have a devKind of 3200, but the bo's stride will be 3328. This can cause
+ corruption with PRIME, when the sink uses the wrong stride to display the shared
+ pixmap.
+
+ This commit changes glamor_make_pixmap_exportable() to update the devKind of the
+ original pixmap after it swaps exported pixmap's backing into it, keeping
+ everything consistent.
+
+ Fixes issue #1018.
+
+ Signed-off-by: Alex Goins <agoins%nvidia.com@localhost>
+ Signed-off-by: Aaron Plattner <aplattner%nvidia.com@localhost>
+ Reviewed-by: Michel Dänzer <mdaenzer%redhat.com@localhost>
+ (cherry picked from commit 7a7e55c5c1d6461a9f4d9a4e0129c1c6e1fd3d66)
+
+commit d6c389cb87b220f7005cebf483708267b5f4a1c3
+Author: Bernhard Übelacker <bernhardu%mailbox.org@localhost>
+Date: Sun Sep 27 18:03:48 2020 +0200
+
+ os: Fix instruction pointer written in xorg_backtrace
+
+ The address retrieved in "pip.start_ip" is not necessarily the same
+ address as unw_get_proc_name finds as nearest symbol and returns in "off".
+ Therefore using "pip.start_ip + off" is not reliable, at least
+ visible in the binaries from the Debian repository.
+
+ Bug-Debian: https://bugs.debian.org/971088
+
+ Signed-off-by: Bernhard Übelacker <bernhardu%mailbox.org@localhost>
+ (cherry picked from commit c15dd0ba4893f79f7181e783cb1ba404edca917a)
+
+commit c3e4c1a0fd5d4d6015e9e6317b758018317e56d1
+Author: Michel Dänzer <mdaenzer%redhat.com@localhost>
+Date: Tue Jul 28 18:40:47 2020 +0200
+
+ present/wnmd: Execute copies at target_msc-1 already
+
+ It always takes one update cycle for the copy to become visible on the
+ host windowing system, so waiting for the target MSC resulted in 1 cycle
+ delay.
+
+ We re-use the idle list for copies which were executed but need their
+ completion event sent.
+
+ Fixes black seams when resizing the "Builder" sub-window of
+
+ GDK_BACKEND=x11 gtk4-demo
+
+ on Xwayland (see
+ https://gitlab.gnome.org/GNOME/mutter/-/issues/1290#note_873557).
+
+ Unfortunately, this cannot completely fix the seams with apps which
+ queue up multiple frames in advance, since there's always at least one
+ queued frame corresponding to the old window size. But it should at
+ least help a little in that case as well.
+
+ v2:
+ * Bug fix: Don't update exec_msc in present_wnmd_check_flip_window.
+ (Roman Gilg)
+ * Use exec_msc = target_msc - 1 instead of exec_msc--, and add a
+ comment, for clarity.
+ v3:
+ * Drop exec_msc = target_msc again in present_wnmd_execute.
+ * present_execute_copy should never set vblank->queued in
+ present_wnmd_execute now, so replace that branch with an assertion.
+ (Roman Gilg)
+
+ Reviewed-by: Roman Gilg <subdiff%gmail.com@localhost>
+ Tested-by: Roman Gilg <subdiff%gmail.com@localhost>
+ (cherry picked from commit 1cccb486d48a5d2e7649836b993805bb65dc09e3)
+ [Since present_wnmd_event_notify hasn't been split up on the 1.20
+ branch, it needs to check vblank->flip. Doing the same in
+ present_wnmd_free_idle_vblanks to be safe, though I'm not sure it's
+ actually possible to hit non-flips there.]
+
+commit 96ef31e0f20fcffb2edfe4cb9510f994c188785f
+Author: Michel Dänzer <mdaenzer%redhat.com@localhost>
+Date: Tue Jul 28 18:53:45 2020 +0200
+
+ present/wnmd: Move up present_wnmd_queue_vblank
+
+ Allowing it to be called from more functions than before. No functional
+ change.
+
Home |
Main Index |
Thread Index |
Old Index