As per the schedule, I am pleased to announce Xwayland 24.0.99.901, the first release candidate of the upcoming standalone Xwayland 24.1.0 release (or Xwayland 24.1.0 rc1 for short).
Some notable changes since Xwayland 23.2 was first released include: - Support for explicit GPU synchronization - GLAMOR optimizations and improvements - Xwayland rootful improvements - EGLStream support was dropped Testing of this release candidate would be greatly appreciated. Please report any issues at https://gitlab.freedesktop.org/xorg/xserver/-/issues The second release candidate is scheduled in two weeks from now. The following shortlogs include all changes since the xwayland-23.2 branch was first created, not all of those changes are relevant to Xwayland though: Adam Jackson (2): glamor: Lift the GLX EGL backend from Xwayland glamor/glxprov: Stop exposing non-db(-capable) configs Alan Coopersmith (11): Revert "Compile lnx_platform.c on FreeBSD too." os: Assume all supported non-WIN32 platforms have seteuid & saved_ids unifdef apollo unifdef SUNSYSV bsd_init.c: fix build on FreeBSD Xext: SProcSyncCreateFence needs to swap drawable id too Xserver.man: Note that -byteswappedclients is the default in this release xorg.conf.man: Add missing new paragraph mark before AllowByteSwappedClients Xi: ProcXIGetSelectedEvents needs to use unswapped length to send reply Xi: ProcXIPassiveGrabDevice needs to use unswapped length to send reply Xquartz: ProcAppleDRICreatePixmap needs to use unswapped length to send reply Alex Richardson (1): record: Support architectures with sizeof(void*) > sizeof(long) Alexander Volkov (2): ephyr: Send RRCrtcChangeNotify events on resize dpms: Add support for DPMSInfoNotify event from DPMS 1.2 (xorgproto) Alexey (1): Fixed mirrored glyphs on big-endian machines Austin Shafer (1): Compile lnx_platform.c on FreeBSD too. Balló György (2): glamor: Don't require EXT_gpu_shader4 unconditionally glamor: Fallback to software rendering on GLSL link failure Chia-Lin Kao (AceLan) (1): hw/xfree86: re-calculate the clock and refresh rate Dongwon Kim (1): modesetting: Correct coordinate info of dirty clips for front-buffer flushing Enrico Weigelt (1): include: move BUG_*() macros to separate header Enrico Weigelt, metux IT consult (134): replace _X_INLINE by inline in internal static functions xkb: drop defining XKBSRV_NEED_FILE_FUNCS hw: xwayland: fix build if neither gbm nor eglstream available fix: unused readIntVec() drop remains of support for old Sun compilers xfree86: drop remains of old USL compiler include: os: fix return value of OsLookupColor() os: oscolor: fix BuiltinColor field naming os: color: fix possible buffer overflow vulnerability os: move rpcauth prototypes to separate header os: move xdmcp prototypes to separate header os: move xdmauth prototypes to separate header os: move mitauth prototypes to separate header os: move Auth* function types to separate header randr: move private definitons from randrstr.h to randrstr_priv.h glx: move private definitions from vndserver.h to vndserver_priv.h xkb: fix int size mismatch modesetting: fix int size mismatch xwayland: fix int size mismatch dix: unexport party_like_its_1989 (retro mode) factor out X_REGISTRY_RESOURCE and X_REGISTRY_REQUEST to meson.build dix: dixutils: make workQueue pointer dix-private os: consolidate busfault handling dix: unexport and move maxBigRequestSize ci: move merge-request check into separate stage dbe: drop obsolete NEED_DBE_PROTOCOL os: drop unused GetAccessControl() os: unexport TimerInit() and TimerForce() xfree86: drop unneeded wrapper xf86PrivsElevated() os: move alloc functions to separate source file os: move string functions to separate source file xfree86: common: move non-exported funcs from dgaproc.h to separate header glamor: glamor_debug.h: drop unused AbortServer() declaration xkb: drop duplicate _X_EXPORT from .c source glamor: drop duplicate _X_EXPORT from .c source xace: drop duplicate export of XaceHooks from .c source Xi: drop duplicate _X_EXPORT from .c source randr: drop duplicate _X_EXPORT from .c source miext: sync: drop duplicate _X_EXPORT from .c sources dix: drop duplicate _X_EXPORT xwayland: drop duplicate _X_EXPORT xfree86: parser: drop HAS_NO_UIDS include: drop unused including of closure.h include: drop closestr.h from public module API composite: move out unexported CompositeIsImplicitRedirectException() render: drop obsolete macros pict_f_transform and pict_f_vector render: move private definitions out of picturestr.h render: move private definitions out of public glyphstr.h miext: move private definitions out of public headers os: utils: drop obsolete System() on non-win32 targets os: fix unused variable on non-IPv6 build os: fix unused variable on WIN32 build os: fix mising prototype / include on WIN32 builds xwin: fix unused variables xwin: winclipboard: fix missing prototypes / missing include xwin: fix possibly missing string termination xwin: fix missing prototype for winValidateArgs() xwin: replace ZeroMemory() xwin: winsock.h needs to be included earlier os: simplify win32 uname() consolidate MITSHM and HAS_SHM symbols include: move xsha1.h to os/ os: drop unneeded DDXOSVERRORF conditional dix: unexport registry setup/teardown functions dix: unexport RegisterResourceName() and LookupResourceName() dix: unexport extension registry functions dix: unexport XREGISTRY_UNKNOWN define include: unexport registry.h include: drop obsolete registry.h dix: unexport AddScreen() and AddGPUScreen() dix: unexport RemoveGPUScreen() dix: unexport AttachUnboundGPU() and DetachUnboundGPU() dix: unexport AttachOutputGPU() and DetachOutputGPU() dix: unexport AttachOffloadGPU() and DetachOffloadGPU() drop remains of DMX dix: unexport workqueue functions os: unexport AutoResetServer() mi: drop some dead code os: fix missing X11/Xdefs.h include in os/osdep.h os: move os_move_fd() out of public API os: unexport Fopen(), Fclose(), Popen(), Pclose(), System() dix: unexport global variables os: move out Format*() functions include: dont install glx_extinit.h dix: move non-exported ptrveloc functions to separate header dix: unexport InitVelocityData() dix: unexport InitTrackers() dix: unexport ProcessVelocityData2D() dix: unexport BasicComputeAcceleration() dix: unexport FreeVelocityData() dix: unexport SetAccelerationProfile() dix: unexport eventconvert.h functions include: unexport xserver_poll.h dix: unexport callback manager init / teardown functions xnest: drop superfluous xnestCursorScreenKey define xnest: fix naming of xnestCursorScreenKeyRec xnest: use own dev-privates key for per-screen cursor xfree86: use own dev-privates key for per-screen cursor dix: drop now obsolete cursorScreenDevPriv dix: unexport CloseDownClient() xfree86: os-support: drop unused NO_OSLIB_PROTOTYPES guard xfree86: os-support: drop unused xf86SerialSendBreak() Fix missing includes of <errno.h> Fix missing include of <sys/wait.h> include: add comment on _XSERVER64 define xfree86: os-support: drop obsolete Solaris specific LED defines xfree86: os-support: ppc_video: drop unused DEV_MEM define xwin: consolidate debugging symbols Xext: fix missing include of <errno.h> os: fix missing include of <errno.h> xquartz: fix missing include of <errno.h> xwayland: fix missing include of <errno.h> xfree86: common: fix missing include of <errno.h> xfree86: os-support: fix missing include of <errno.h> xfree86: modesettig: fix missing include of <errno.h> xfree86: int10: fix missing include of <errno.h> os: rpc: fix type mismatch meson.build: move manpage specific stuff to man/ subdir test: simple-xinit: add _X_NORETURN test: xi2: drop unused variable os: move SELinux enforcement state to the extension include: unpexport SELINUX_* consts from include/global.h config: wscons: use asprintf() instead of deprecated Xprintf() test: fix deprecated meson calls config: wscons: fix warning on discarded const xfree86: modesetting: fix warning on unused variable test: fix FTBS on missing xlib includes on NetBSD config: fix wscons backend on NetBSD xkb: make XkbUpdateKeyTypesFromCore() static xkb: drop unused defines xkb: drop never used XkmProbe() include: xkbstr.h: fix missing include of Xdefs.h xkb: drop ununsed XkbNameMatchesPattern() xfree86: os-support: bsd: fix warning on old-style function definition Erik Kurzinger (11): xwayland: correctly report PresentCompleteModeCopy xwayland: add detection for drivers that don't support implicit sync Update CI for Xwayland explicit sync DRI3: provide stub implementation of DRI3SetDRMDeviceInUse DRI3: add DRI3ImportSyncobj and DRI3FreeSyncobj xwayland: add functions to import and export dma-buf implicit fences xwayland: re-compute target msc during xwl_present_re_execute Present: add PresentCapabilitySyncobj and PresentPixmapSynced xwayland: support DRI3 1.4 and Present 1.4 xwayland: add support for wp_linux_drm_syncobj_v1 xwayland: don't scrap pending present requests Florian Weimer (1): xwayland: Use correct pointer types on i386 Gleb Popov (2): Implement -novtswitch option handling for FreeBSD. The framebuffer driver on FreeBSD is called scfb, use it. Ilya Pominov (1): RandR: Allow duplicate monitor name when adding it Izumi Tsutsui (2): Revert "xfree86: Remove -flippixels" fb: Fix 1bpp Xservers on "whitePixel=0, blackPixel=1" VRAMs Jan Beich (3): os: Use LOCAL_PEERCRED to determine local client PID on FreeBSD os: Use KERN_PROC_ARGS to determine client command on DragonFly and FreeBSD xwayland: avoid Linux-only headers on non-Linux Jeffy Chen (1): glamor: xv: Fix invalid accessing of plane attributes for NV12 John Kennedy (2): Extented 'arm' case to 'aarch64' on BSD. Enable USE_DEV_IO on FreeBSD/aarch64 José Expósito (5): test: Use Xwayland instead of wayland/weston-info test: Xwayland doesn't start when another X server is running xwayland/glamor/gbm: Set GBM_BO_USE_LINEAR if only LINEAR modifier is supported Xi: do not keep linked list pointer during recursion ephyr: Fix incompatible pointer type build error Kenny Levinsen (4): xwayland: Commit after acknowledging configure xwayland: Make xwl_window_libdecor_resize reusable xwayland: Apply root toplevel configure dimensions xwayland: Default geometry for undecorated rootful Konstantin (20): glamor: fixes GL_INVALID_ENUM errors on ES if there is no quads glamor: add gl_PointSize for ES shaders glamor: require GLES 2.0 on GL ES CI tests: enable CI for both GLES2 and GLES3 variants glamor: mark tests fixed by this PR xwayland/glamor/gbm: use GBM_FORMAT_ARGB8888 for 24-bit on ES glamor_egl: add helper functions for contexts glamor_egl: add RenderingAPI option glamor_egl: add info message about context API xorg.conf.man: document new RenderingAPI option hw/Xwayland: add xwl_glamor_mode_flags enum Xwayland: add "glamor" command line option Xwayland: document new "glamor" option Xwayland: add new "have_glamor_api" pkgconfig glamor_egl: add support of GlxVendorLibrary option Revert "glamor/glxprov: Stop exposing non-db(-capable) configs" glamor: xv: do not force a version on XV shaders glamor: xv: reuse ports and shaders when possible glamor: xv: prepare to one-plane formats glamor: xv: enable UYVY acceleration Konstantin Pugin (5): glamor: support GLES3 shaders glamor: accelerate incomplete textures for GL ES glamor: add glvnd_vendor private xorg: initialize glamor provider Xephyr: use glamor glx provider Luke Dashjr (1): Xvfb: Support up to 13 mouse buttons Matthieu Herrb (6): Fix build on OpenBSD. Add full prototypes in hw/xfree86/os-support/bsd/bsd-video.c xfree86/bsd: fix build on NetBSD/amd64. OpenBSD build fix: struct ucred is struct sockpeercred there bsd_init.c: fix build on OpenBSD Fix build with -Dxdmcp=false Michael Wyraz (1): Removing the code that deletes an existing monitor in RRMonitorAdd Michel Dänzer (63): glamor: Add and use glamor_drawable_effective_depth helper mi: Fix up alpha channel if needed in miPaintWindow glamor: Make glamor_solid_boxes take a DrawablePtr xwayland/glamor: Avoid implicit redirection with depth 32 parent windows glamor: Ignore destination alpha as necessary for composite operation xwayland/present: Handle NULL window_priv in xwl_present_cleanup test: Wait only up to 5 seconds for weston to start up test: Kill weston whenever shell exits test: Propagate Xwayland stdout/stderr output and exit status test: Skip Xwayland test early if PIGLIT_DIR / XTEST_DIR isn't set ci: Prevent duplicate pipelines for MRs glamor: Don't override source alpha to 1.0 if it's used for blending xwayland: Make copy_pixmap_area return void xwayland: Rename helper to xwl_window_buffer_maybe_dispose xwayland: Drop xwl_window_buffers_recycle xwayland: Use window pixmap as a window buffer xwayland: Return NULL from xwl_window_buffer_get_available glamor: Make glamor_set_alu take a DrawablePtr glamor: Fall back for mixed depth 24/32 in glamor_set_alu xwayland: Destroy old window pixmap in xwl_window_recycle_pixmap xwayland: Update screen pixmap for root window in xwl_window_set_pixmap xwayland/present: Update screen pixmap in xwl_present_execute xwayland: Initialize Present extension support also with rootful xwayland: Handle NULL xwl_pixmap in xwl_shm_pixmap_get_wl_buffer xwayland: Add xwl_pixmap_get_wl_buffer helper xwayland: Enable Present extension support also without glamor ci: Create check-merge-request job only in MR pipelines Revert "ci: move merge-request check into separate stage" xwayland: Use border width in xwl_glamor_gbm_create_pixmap_for_window xwayland: Do not plumb damage region through function parameters xwayland: Call xwl_window_buffer_add_damage_region from damage_report xwayland: Rename xwl_window_recycle_pixmap to xwl_window_realloc_pixmap xwayland: Refactor xwl_window_swap_pixmap out of _buffers_get_pixmap xwayland: Re-use xwl_window_realloc_pixmap in xwl_window_swap_pixmap xwayland: Replace window pixmap as needed for drawing operation xwayland/present: Handle clearing damage after flip in xwl_present_execute ci: Make test stage jobs not depend on earlier stage jobs xwayland: Use xwl_window for tracking focus/touch xwayland: Rename xwl_window::window to ::toplevel xwayland: Return struct xwl_window * from ensure_surface_for_window xwayland: Call register_damage depending on ensure_surface_for_window xwayland: Use xwl_window for damage closure xwayland: Pass xwl_window to xwl_glamor_dri3_syncobj_passthrough xwayland: Add xwl_window::surface_window xwayland: Use ConfigNotify screen hook instead of ResizeWindow xwayland/present: Add xwl_present_maybe_(un)redirect_window xwayland: Add SourceValidate hook xwayland/present: Check window & source pixmap depth match last xwayland/present: Redirect surface window as needed for page flips xwayland: Call drmFreeDevice for dma-buf default feedback xwayland: Use drmDevicesEqual in xwl_dmabuf_feedback_tranche_done dri3: Free formats in cache_formats_and_modifiers Drop Xquartz DDX Drop Xnest DDX Drop Xwin DDX and x86 MinGW-w64 cross build Drop Xorg DDX Drop Xephyr / kdrive DDX Drop config directory Drop EXA code Drop miext/shadow directory meson: Build Xwayland unconditionally Don't install Xvfb meson: Change project name to xwayland Moritz Bruder (1): fbdevhw: Support symbolic links in fbdev_open Niclas Zeising (1): Extend Linux #ifdef to FreeBSD OS. Olivier Fourdan (95): Revert "xwayland/glamor: Avoid implicit redirection with depth 32 parent windows" xwayland: Move attach buffer out of post damage xwayland: Use the screen width/height for libdecor state xwayland: Move the libdecor resize to its own function xwayland: attach new buffer from libdecor handlers xwayland: Add configuration to libdecor update size xwayland: Use update size from libdecor configure handler xwayland: Set min/max size for rootful with lidecor xwayland: Make fullscreen used a fixed size xtest: Check whether there is a sendEventsProc to call xwayland: Add an option to enable EI portal support xwayland: Give up on EI on setup failure xwayland: Cancel the EI disconnect timer when freed xwayland: Add xwl_output to the Xwayland types xwayland: Add a helper function to update fullscreen xwayland: Update the fullscreen window on output change xwayland: Do not resize when running fullscreen build: Allow for custom server config directory xwayland: Add an XACE property access handler xwayland: Restrict allow commit to the window manager xwayland: Avoid hardcoding the interface name xwayland: Update output nameLength xwayland: Use the right nameLength by default xwayland: Pass the correct oeffis device types build: Switch to meson 0.56 xwayland: Use a helper function for fullscreen update xwayland: Use simpler initialization syntax xwayland: Use the output serial for the fixed output xwayland: Always create the XrandR CRTCs xwayland: Do not update the outputs when rootful xwayland: Add a function to search for xwl_output by name xwayland: Add an output name for fullscreen xwayland: Check for fullscreen on output name change xwayland: Check for the screen output name for fullscreen xwayland: Add the output name for fullscreen rootful glx: Call XACE hooks on the GLX buffer ephyr,xwayland: Use the proper private key for cursor xwayland: Add a -nokeymap option build: Use a variable for the xshmfence version build: Xwayland with GLAMOR requires libxshmfence xwayland: Move dmabuf code to its own source file xwayland/glamor: Drop the EGLStream backend xwayland/glamor: Add a GLAMOR GBM header xwayland/glamor: Drop xwl_glamor_gbm_init_wl_registry() xwayland/glamor: Drop xwl_glamor_gbm_has_wl_interfaces() xwayland/glamor: Drop the init_egl() hook. xwayland/glamor: Drop the init_screen() hook xwayland/glamor: Drop the get_wl_buffer_for_pixmap() hook xwayland/glamor: Drop the check_flip() hook xwayland/glamor: Drop the get_main_device() hook xwayland/glamor: Drop the create_pixmap_for_window() hook xwayland/glamor: Drop the backend_flags xwayland/glamor: Make xwl_glamor_init_gbm() return its status xwayland/glamor: Remove the flag "is_available" xwayland/glamor: Drop the post_damage() hook xwayland/glamor: Drop the allow_commit() hook xwayland/glamor: Make xwl_glamor_has_wl_interfaces() private xwayland/glamor: Remove the backend pointers xwayland/glamor: Drop init_backend() and select_backend() xwayland/glamor: Remove the xwl_egl_backend structure xwayland/glamor: Drop the backend_flags definition xwayland/glamor: Drop xwl_screen_get_main_dev() xwayland/glamor: Drop xwl_glamor_needs_buffer_flush() xwayland/glamor: Drop xwl_glamor_needs_n_buffering() xwayland: Drop xwl_window_buffers_get_pixmap() xwayland: Add the Exec key to the desktop file xwayland: Use full path for Xwayland exec xwayland: Use "-decorate" if available xwayland: Move the leave kbd/ptr code xwayland: Introduce xwl_screen_lost_focus() xwayland: Update lost focus on deactivation xwayland: Use double for screen size xwayland: Store the mode width/height xwayland: Introduce output scale xwayland: Use CRTC transforms xwayland: Track output scales xwayland: Add scale factor to the Xwayland screen xwayland: Account for the scale factor xwayland: Rename scale_x/y to viewport_scale_x/y xwayland: Always set the viewport scale factor xwayland: Apply the viewport's scale_x/y to all input xwayland: Make has_viewport_enabled private xwayland: Keep track of outputs per window xwayland: Update the scale based on enter/leave events xwayland: Update the global screen scale xwayland: Rename xwl_window_enable_viewport() build: Bump wayland-protocols requirement to 1.31 xwayland: Add support for fractional scale protocol xwayland: Add helper function for fractional scaling xwayland: Use fractional scale with rootful render: Avoid possible double-free in ProcRenderAddGlyphs() Revert "xwayland/glamor: Avoid implicit redirection with depth 32 parent windows" xwayland: Walk the regions' boxes Bump version to 24.0.99.1 Bump version to 24.0.99.901 Pedro Montes Alcalde (1): AutoRepeat: Fix wrong repeat rate being applied Peter Grehan (1): Fix build on FreeBSD/PowerPC architecture. Peter Hutterer (42): Xi/randr: fix handling of PropModeAppend/Prepend mi: reset the PointerWindows reference on screen switch dix: clean up the GestureInfoRec on device close xkb: free the filters randr: avoid integer truncation in length check of ProcRRChange*Property Xi: allocate enough XkbActions for our buttons Xi: require a pointer and keyboard device for XIAttachToMaster dix: don't allow for devices with 0 axes dix: use valuator_mask_free() to free the last touches vmask test: fix various leaks in the tests test: fix the xtest device test to show the dependency test: fix the touch tests to no longer leak dix: factor out the duplicate the RemoveDevice code paths Two whitespace fixes test: speed up the XISelectEvents test meson.build: re-enable the protocol unit tests test: drop the unncessary unit_defines from meson.build xwayland: override the XTest sendEventsProc for all devices dix: initialize the XTest sendEventsProc for all devices Clean up the .gitignore file dix: allocate enough space for logical button maps dix: Allocate sufficient xEvents for our DeviceStateNotify dix: fix DeviceStateNotify event calculation Xi: when creating a new ButtonClass, set the number of buttons Xi: flush hierarchy events after adding/removing master devices dix: when disabling a master, float disabled slaved devices too dix: fix valuator copy/paste error in the DeviceStateNotify event test: switch the unit tests to something resembling a test suite test: make wrapping a function more generic test: switch the remaining wrapped functions to use the macros test: specify non-negative log verbosity for the siglogging test test: use a dbg() macro for the test output Revert "include: move BUG_*() macros to separate header" CI: use MESON_BUILDDIR for the build directory CI: switch to the meson-build.sh helper script CI: switch the mingw cross-compile job to use the meson build script too CI: replace the dist script with invocations of the meson-build script Revert "Fix missing includes of <errno.h>" CI: add a driver build stage to check for header breakage CI: Only run the driver build job on Xorg changes render: fix refcounting of glyphs during ProcRenderAddGlyphs test: fix the xi2 protocol swapping tests to actually work Sam James (2): Switch to libbsd-overlay meson: add option for systemd_notify Simon Ser (3): xwayland/glamor/gbm: use Bool for true/false fields xwayland/glamor/gbm: make wl_drm optional xwayland/glamor/gbm: simplify render node check Sultan Alsawaf (1): modesetting: Enable TearFree by default Thomas Zimmermann (1): xf86: Accept devices with the kernel's ofdrm driver Twaik Yont (1): xvfb: Use RROutputSetPhysicalSize to set physical size of display Ville Syrjälä (4): modesetting: unflip before any setcrtc() calls modesetting: Use a more optimal hw cursor size modesetting: Don't feed stack garbage to the kernel in LUT reserved fields glamor: Enable dmabuf_capable by default on Intel hardware Wanli Niu (1): dix: Fix segfault if CreateGC() failed in XaceHook() Warren Togami (1): xwayland: Ensure pointer for gestures has buttons Willem Jan Palenstijn (1): mi: fix rounding issues around zero in miPointerSetPosition Xaver Hugl (1): xwayland: add workaround for drivers that don't support impicit sync Yuriy Vasilev (2): glamor: xv: add rgba32 format glamor: xv: add rgb565 Yusuf Khan (1): hw/xfree86: fix NULL pointer refrence to mode name Zoltán Böszörményi (1): Use log lines prefixed with human readable time msizanoen1 (1): glamor: Use render node for glamor device path where possible xurui (2): modesetting: Check the return value of the drmGetVersion xwayland: Use do-while loop git tag: xwayland-24.0.99.901 https://xorg.freedesktop.org/archive/individual/xserver/xwayland-24.0.99.901.tar.xz SHA256: 0f25bd90238452210ef874cb34aabc117715acf7d22ddce077a12c0d05426cb0 xwayland-24.0.99.901.tar.xz SHA512: a2e2c294b61130e96bf7ff2e484b3c57e9559e504758158c933ee293f4d57f8a3a16b06dccdac1c72601496b5de2973896a95ec95053be8e5b0ba37573969229 xwayland-24.0.99.901.tar.xz PGP: https://xorg.freedesktop.org/archive/individual/xserver/xwayland-24.0.99.901.tar.xz.sig
OpenPGP_0x14706DBE1E4B4540.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature