XDC 2024 - X.Org Developer's Conference 2024

Canada/Eastern
Concordia University Conference Centre

Concordia University Conference Centre

1450 Guy St., Montreal, Quebec, Canada H3H 0A1
Registration
XDC 2024 Registration
Participants
  • Abhinav Kumar
  • Alex Deucher
  • Alex Goins
  • Alex Goins
  • Alex Hung
  • Alexander Orzechowski
  • Ali Homafar
  • Alyssa Rosenzweig
  • Andres Gomez
  • Andrew Wafaa
  • Antonino Maniscalco
  • Anuj Phogat
  • Arkadiusz Hiler
  • Arthur Rasmusson
  • Arun Raghavan
  • Bardia Moshiri
  • Bas Nieuwenhuizen
  • Billy Laws
  • Cecilia Quarroz Florin
  • Chris Healy
  • Christian Gmeiner
  • Christian Schaller Christian Fredrik Kalager Schaller
  • Christopher Michael
  • Connor Abbott
  • Daniel Dadap
  • Daniel Mussell
  • Daniel Stone
  • David Heidelberg
  • Demi Obenour
  • Diego Nieto Munoz
  • Dmitry Baryshkov
  • Doğukan Korkmaztürk
  • Ella Stanforth
  • Eric Engestrom
  • Eric Smith
  • Erico Nunes
  • Erik Faye-Lund
  • Evan Tang
  • Faith Ekstrand
  • Fino Meng
  • Frederic Plourde
  • Gabe Rowe
  • Gabriel Lassonde
  • Germán Poo-Caamaño
  • Harry Wentland
  • Ismael Luceno Cortés
  • Ivan Avdeev
  • Jacob Jacob Czekalla
  • Jake Edge
  • James Jones
  • James Ramey
  • Jared Dominguez
  • Jeff Fortin Tam
  • Jeremy Larsen
  • Jessica Zhang
  • Joan Torres
  • Joaquin Philco
  • Joaquín Vacas Verísimo
  • John Einar Reitan
  • Jonas Ådahl
  • Jonathan Marek
  • Jorge Zapata
  • José María Casanova Crespo
  • Karmjit Mahil
  • Karol Herbst
  • Kessler DuPont-Teevin
  • Kyle Weicht
  • Laurent Pinchart
  • Len Zhang
  • Leo Li
  • Liviu Dudau
  • Louis-Francis Ratté-Boulianne
  • Lyude Paul
  • Mai Faulkner
  • Marek Olšák
  • MARIE ANGE NABUTCHI CHIRUZA
  • Mario Kleiner
  • Mark Collins
  • Mark Filion
  • Mark Pearson
  • Martin Roukala (né Peres)
  • Mary Guillemard
  • Matt Turner
  • Matthew Waters
  • Matthias Clasen
  • Melissa Wen
  • Michel Dänzer
  • Mihail Atanassov
  • Mike Blumenkrantz
  • Mitul Golani
  • Mykhaylo Starodubtsev
  • Neal Gompa
  • Niels De Graef
  • Olivier Gauthier
  • Orko Garai
  • Paulo Matos
  • Philipp Kaeser
  • Pierre-Loup Griffais
  • Pono Takamori
  • Rahul Rameshbabu
  • Ray Huang
  • Ricardo Garcia
  • Rich Vaughn
  • Richard Everheart
  • Rob Clark
  • Robert Foss
  • Rodrigo Siqueira Jordao
  • Rubén Gonzalez
  • Sahas Leelodharry
  • Samuel Pitoiset
  • Sanchayan Maity
  • Sasha McIntosh
  • Simon Ser
  • Simona Vetter
  • Slava Abramov
  • Stefan Monnier
  • Taruntej Kanakamalla
  • Thomas Andersen
  • Timur Kristóf
  • Tony Wasserka
  • Ulrich Czekalla
  • Victor Manuel Jáquez Leal
  • Victoria Brekenfeld
  • Xaver Hugl
  • Yannick Lamarre
  • Yunxiang (Teddy) Li
  • Zan Dobersek
  • Zeb Figura
  • zirma daleem
    • 08:00 09:00
      Breakfast and Registration
    • 09:00 18:00
      Main Track (Room 9AB): Main Track
      • 09:00
        Wednesday Opening Session 10m

        Wednesday Opening Session

        Speaker: Mark Filion (Collabora)
      • 09:15
        Ray tracing for Adreno GPUs on Turnip 45m

        Turnip is the fourth Vulkan driver in Mesa to gain support for ray tracing acceleration, after anv, radv, and lavapipe, using the Ray Tracing Unit introduced by Qualcomm on Snapdragon 8 Gen 2. This talk will go over the driver-agnostic framework added to Mesa for building Bounded Volume Hierachy (BVH) trees on the GPU, based on the radv implementation and with turnip as the first user, as well as Qualcomm-specific challenges and future directions.

        Speaker: Connor Abbott (Valve)
      • 10:05
        Mesh Shaders on NVK 20m

        A deep dive into how mesh shaders work on NVIDIA hardware and what's next on NVK to fully support it.

        Speaker: Mary Guillemard (Collabora)
      • 10:30
        Porting the nouveau image library to Rust 20m

        This talk covers the process of porting the Nouveau Image Library (NIL) to Rust. It presents a practical "rewrite-it-in-Rust" strategy by exploring how Rust can coexist and interoperate with a large C codebase. Attendees will learn effective techniques for integrating Rust into existing C projects, ensuring both languages work seamlessly together. Additionally, the talk will highlight a few common pitfalls encountered during the porting process and how to avoid them.

        Speaker: Daniel Almeida (Collabora)
      • 10:50
        Break 30m
      • 11:20
        KMS drivers in Rust and Rvkms! 45m

        In this talk, I will go over the ongoing work with the rust KMS bindings for the kernel that I've been working on for eventual use by the nova driver. This includes many of the challenges I've been running into, what I've come up with so far, and what my future plans are for this, and a little bit of explanation on the rvkms driver.

        Speaker: Lyude Paul (Red Hat)
      • 12:10
        Color operations for Linux color pipeline on AMD devices 20m

        Linux color pipeline is a prescriptive API to address hardware color management that differs from one hardware to another. Each device driver passes userspace a pipeline consisting of a chain of unique and static colorops that map to color management blocks in hardware.

        This talk shares an overview of a color pipeline and the definitions of colorops for 1D curve/LUTs, 3D LUTs and matrices for Linux. The work includes kernel implementation of colorops specific to AMD devices, and IGT tests that demonstrates how an userspace application communicates to Linux kernel by new APIs and drm_colorops structures.

        Speaker: Alex Hung
      • 12:30
        Lunch 1h 30m
      • 14:05
        EBC - A new backend compiler for etnaviv 45m

        An efficient and flexible compiler backend is crucial for performance and adaptability. This presentation will take the audience through the journey of developing a new backend compiler for etnaviv, inspired by the architecture of agx and nak, and partially implemented in Rust. Leveraging the infrastructure that Mesa offers, we will delve into the motivations, challenges, and technical intricacies encountered during this project.

        Speaker: Christian Gmeiner
      • 14:55
        Enhancements to the Raspberry Pi GPU driver stack. 20m

        In 2023, the Raspberry Pi GPU driver team focused on enabling OpenGL 3.1 (v3d) and Vulkan 1.2 (v3dv) on the Raspberry Pi 5, which launched in October 2023.

        It's been one year since the Raspberry Pi 5 hit the market. During this time, we have been working on getting Vulkan 1.3 conformance, improving subgroups support and implementing a number of additional features and performance optimizations on both the kernel and user space drivers.

        During the talk we will analyze the different strategies we have followed to improve the GPU driver stack, allowing us to make better use of memory resources, reduce memory bandwidth, emit better code for shaders and more. We will also break down how some of these changes helped improve performance of specific samples and benchmarks.

        Speaker: José María Casanova Crespo (Igalia)
      • 15:20
        Adding test machines to a CI-Tron instance, and making use of them in GitLab 10m

        Over the past year, the CI-Tron project has gotten closer to its goal of being a plug-and-play CI system, especially when it comes to compatibility with ARM/RISCV64 SBCs and Android-based devices.

        In this demo, I would like to show how simple adding new test machines has become and how Gitlab projects can make use of them.

        Speakers: Martin Roukala (né Peres) (MuPuF TMI / Valve contractor) , Eric Engestrom (Igalia / Mesa)
      • 15:30
        Break 30m
      • 16:00
        Video offloading on the Wayland Linux Desktop 20m

        While efficient video playback has long been possible in the embedded Linux world, desktop applications have been lagging behind other platforms. In the last years, and 2023/24 specifically, various developments made it possible to let the two worlds converge, offering various advantages for both.

        The talk aims to give a short overview over recent developments in various components such as Wayland compositors, Gstreamer, Gnome, Gtk and Chromium that make video playback either more efficient - or efficient playback easier to use, including short demos. And, if time allows, give a short outlook what to expect regarding HDR playback.

        Speaker: Robert Mader (Collabora)
      • 16:25
        Input Devices And Proton/Wine Gaming 20m

        Getting input right and meeting game expectations right is hard, especially on an OS they were not designed with in mind.

        Some use access to raw HID devices - we not only have to sort out permissions but also undo fixes provided by the Linux Kernel.

        Then there's Wayland with its limitations, even over XWayland. Are you trying to clip the cursor to an unusual area? Good luck!

        I hope to start a discussion on the current limitations and how to get around them.

        Speaker: Arkadiusz Hiler (CodeWeavers)
      • 16:50
        Designing a Driver for Simulated DSI Panels 20m

        Currently, validating DSI panels requires the user to have the physical panel and a valid panel driver. This talk will go over the proposed design for adding a driver that will allow users to simulate different DSI panels without requiring them to have the physical panel attached to the device.

        Speaker: Jessica Zhang (Qualcomm)
      • 17:15
        Dynamic Switching of Display Muxes on Hybrid GPU Systems 20m

        Many notebook systems introduced in recent years are equipped with both integrated and discrete GPUs, and allow for driving displays using either GPU or both GPUs. Several newer notebook designs include dynamic display mux hardware, which enables switching between GPUs while the system is actively running and displaying content. Investigation into implementing support for dynamic mux switches has highlighted limitations in existing Linux software infrastructure, such as vga-switcheroo, which prevent this hardware from being used to its fullest potential.

        This talk will present an overview of dynamic display mux hardware and the use cases which it makes possible, review existing proposals for extending DRM-KMS to support dynamic mux switching, and provide a high-level outline for how display servers and compositors would need to be updated to take advantage of dynamic mux functionality once it's available in the kernel.

        Speaker: Daniel Dadap (NVIDIA)
    • 19:00 22:00
      Social Event: Welcome Party 3h 3 Brasseurs Saint-Paul

      3 Brasseurs Saint-Paul

      105 Rue Saint-Paul E, Montréal, QC H2Y 1G7

      https://maps.app.goo.gl/RvT1SsgdEgmDeLqg8

    • 08:00 09:15
      Breakfast and Registration
    • 09:15 16:40
      Main Track (Room 9AB): Main Track
      • 09:15
        AAA!! She's a witch! 45m

        Last XDC, we had OpenGL® ES 3.1 running on the M1. But now it's time to play with the big kids.

        This XDC, we have conformant Vulkan® 1.3 on the M1 supporting the the most cursed features... Geometry shaders, tessellation, transform feedback, and more. That means it's time for... for... AAA! *hides*

        Prepare ye for a harrowing talk and a magical demo.

        Speaker: Alyssa Rosenzweig (Valve contractor)
      • 10:05
        Nouveau/NVK Update 20m

        A lot has happened in NVK in the last year. Faith will give an overview of the new features, performance improvements, and overall status of the nouveau/NVK stack. She'll also talk about OpenGL support through NVK+Zink, status of distro support, and plans for the future.

        Speaker: Dr Faith Ekstrand (Collabora)
      • 10:30
        Panfrost update 20m

        This talk will cover what's happened in the word of Panfrost in the last year. There's been a lot going on, from V10 support all the way through the kernel and mesa to passing the GLES 3.1 CTS, to further work on PanVK.

        Speakers: Erik Faye-Lund (Collabora) , Boris Brezillon (Collabora)
      • 10:50
        Break 30m
      • 11:20
        A bug's life 45m

        Let me tell you a story of a bug affecting larger adoption of EGL standart, which lived for more than 11 years in Mesa3D.

        The journey to fix this bug involved many people, a lot of code, some CI testing, a new display extension, and many sleepless nights.

        This talk aims to illustrate, what can be done with open-source drivers and CI infrastructure which would never be possible achieve with a closed-source proprietary driver.

        Speakers: David Heidelberg, Erico Nunes
      • 12:10
        Towards a universal buffer allocator for Linux 20m

        Buffer allocation for media contents, despite being required for any framework or application dealing with image capture, processing, decoding, encoding, rendering and display, remains an area plagued by many unsolved problems. Over time improvements have been made to APIs for buffer allocation, both on the kernel side (standardization of the DRM dumb buffer API, or DMA heaps, to name a few) and in userspace (most notably with GBM, and the buffer management API in Vulkan), or for specific use cases (e.g. gralloc in Android). Unfortunately, no universal solution exists to allocate buffers shared by multiple devices. This is hindering interoperability and forces userspace to pile hacks and workarounds.

        This talk will introduce the problem, present an overview of the existing relevant APIs and frameworks, as well as previous attempts to address the issues. Together with the audience, we will assess if there's a desire to move towards a solution, and if so continue with a workshop on the third day of the conference.

        Speaker: Laurent Pinchart
      • 12:30
        Lunch 1h 30m
      • 14:05
        io_uring for DRM 20m

        Modern GPUs are moving more functionality into firmware in order to allow for user space to submit jobs directly and gain additional performance from that.

        DRM framework for rendering nodes assumes that the kernel driver is in charge all the time and job submissions are only happening in kernel context.

        io_uring is a mechanism inside the kernel that allows for asynchronously queuing requests from userspace and let them be handled by the kernel driver(s) in a batched mode. Adopting this (or a very similar) mechanism in DRM would allow us to gain the benefits of reduced context switching between userspace apps and kernel while keeping the kernel driver(s) for GPU(s) in charge of actual job submissions.

        I am looking at gathering feedback on the idea and on why it might not be appropriate to add support for io_uring in DRM. We know that io_uring had its fair share of security issues and that Android for example disables it completely, but there are other aspects that need to be discussed like user space implementing a job scheduling on its own, or lack of a need for job scheduling at all as firmware might be completely in charge of that.

        Speaker: Liviu Dudau (Arm Ltd)
      • 14:30
        Cloud workstation platform & compositor dev-tools 10m

        What is a cloud workstation, and what does it have to do with compositor developer tools? In this talk I’ll give an introduction to how cloud workstations in a post X11 world can be built with the help of PipeWire and libei, and how that, somehow, opened up ways to create compositor developer tools.

        Speaker: Jonas Ådahl (Red Hat)
      • 14:45
        A little Windows with your Mesa? 45m

        We talk a lot about the value of free software drivers on Linux but what about bringing those same free software drivers to other platforms? Earlier this year, Faith successfully got RADV running on Windows on top of AMD's closed-source kernel driver. In this talk, Faith will go over the basics of the WDDM2 kernel API, how she went about reverse-engineering the AMD interfaces, and talk about what shipping a Mesa-based driver on Windows would actually look like.

        Speaker: Dr Faith Ekstrand (Collabora)
      • 15:30
        Break 30m
      • 16:00
        Concurrent Writeback for MSM DPU Driver 10m

        This demo will showcase concurrent writeback on the Qualcomm SM8650 MTP. We will also briefly give an introduction to the concurrent writeback feature and the current state of the patch series in the MSM DPU driver

        Speaker: Jessica Zhang (Qualcomm)
      • 16:15
        CoC Team: Processes, Guidelines, Oversight 20m

        The fd.o Code of Conduct team has put in a lot of effort in recent months into documenting our processes, guidelines for moderation and how oversight is implemented. In this talk we'll go through all that and some of the future plans we have.

        Speakers: Sima Vetter (Intel) , Lyude Paul (Red Hat) , Karol Herbst (Red Hat, Nouveau) , Daniel Stone (Collabora) , Simon Ser (SourceHut)
    • 16:45 17:50
      Lightning Talks
      • 16:45
        etnaviv status update 5m

        This talk will discuss various on-going efforts in the etnaviv driver stack.

        Speaker: Christian Gmeiner
      • 16:50
        GPU Compute Virtualization with VirtIO 5m

        Last year, we introduced how to enable graphic virtio native context and GPU passthrough based on Xen hypervisor[1]. However, graphic usage is not enough for modern requirement of GPU virtualization. Because AI and compute are more and more popular recently, and the community also wants to have a way to support compute virtualization on general GPU devices.
        AMD provided an open source stack named ROCm[2] to support machine learning, coupled with being inspired by the idea of virtio native context. Then we dig out a solution to use Thunk (libhsakmt) API forwarding [3] via virtio-gpu to implement ROCm support on virtual machine and add virtio-gpu support into ROCm runtime as another GPU backend. With this way, we can have a prototype to implement GPU compute virtualization with virtio.
        OpenCL is the first step that we step in ROCm virtualization with virtio-gpu. This talk will provide an overview of AMDs experiences enabling compute virtualization with OpenCL over ROCm native context approach.

        Reference:
        [1] https://indico.freedesktop.org/event/4/contributions/216/
        [2] https://github.com/ROCm
        [3] https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1370

        Speakers: Ray Huang (AMD) , Honglei Huang
      • 16:55
        NVIDIA Wayland Roadmap 5m

        In this Lightning talk NVIDIA attendees will cover recently shipped Wayland features and what we've learned from them. We will go over future developments and request feedback on features the community wants to see.

        Speakers: Austin Shafer (NVIDIA) , James Jones (NVIDIA)
      • 17:00
        Device-Generated Commands in Vulkan 5m

        Device-Generated Commands are the Vulkan equivalent of DX12’s ExecuteIndirect functionality and the next step beyond indirect draws and dispatches. Some games are starting to use these APIs and some Mesa drivers have recently implemented support for related Vulkan extensions. This talk will quickly explain the general concepts behind Device-Generated Commands and will provide a rough idea of how these APIs look like in Vulkan.

        Speaker: Ricardo Garcia (Igalia, S.L.)
      • 17:05
        Input observers beyond focus 5m

        Rationale and use-cases for observing & receiving (some) input device actions also for non-focussed surfaces.

        Speaker: Philipp Kaeser (Google)
      • 17:10
        Rusticl status update 5m

        I want to talk about the new drivers and features being supported and what I'm planning to work on going forward.

        I'll probably also talk about Shared Virtual Memory (SVM) specifically as this an important feature and quite some details to get right and wrong here and how we want to implement it inside Mesa.

        Speaker: Karol Herbst (Red Hat, Nouveau)
      • 17:15
        Vulkan for Wayland Compositors: the new best choice? 5m

        This talk puts forward the following assertion: OpenGL should no longer be considered the "default" API used for compositor development, and Vulkan's design is a better match for what the modern compositor needs. This talk will cover multi-GPU challenges I've encountered during recent compositor work, explain why Vulkan's device-aware API is a good match, demonstrate some unique asynchronous copy logic made possible by Vulkan, and go over why EGL can't be extended with similar features. Vulkan isn't a silver bullet, but OpenGL isn't the obvious choice it once was. The goal is to promote discussion about and further development of Vulkan-based compositors and infrastructure.

        Speaker: Austin Shafer (NVIDIA)
      • 17:20
        Creating a database of games using specific vulkan extensions 5m

        When implementing vulkan extensions it is nice to know which games are using a specific extension. Smoke testing real world users of the extension can be a good addition to running the cts.

        I have started working on a vulkan layer that tries to detect when an extension is being used. This layer can be used to populate a database of users of each individual extension.

        This talk will be a quick status of the project and a call for others to participate by sending in more entries to the database.

        Speaker: Thomas Andersen
      • 17:25
        How do you debug and triage AMD display driver issues? 5m

        Every year, many users and developers adopt AMD dGPU and APU devices; sometimes, they face issues that they need to know if it is a display issue. In this presentation, I want to equip users and developers with debug techniques (for AMD drivers) to help them determine if an issue is really a display problem by sharing some ways to interpret debug logs. I will also show how to narrow issues down to some parts of the source code. At the end of the presentation, I hope the listener can use some of the AMD debugs and test tools and know where to check more about display documentation.

        Summary of the topics:

        • Display code overview.
        • Check if an issue is a display problem or not.
        • Provide details about AMD logs (Dmesg, DTN, and UMR registers).
        • Some specific issues (hard hang, MPO, Power issues).
        • IGT.
        • Report bugs and how to contribute.
        Speaker: Rodrigo Siqueira Jordao (AMD)
      • 17:30
        Wayland DRM Lease Protocol: Impacts on XR 5m

        This lightning talk will provide a brief overview of the latest developments in the Wayland DRM Lease protocol and highlight the immediate benefits it has brought to Monado, th Open-Source OpenXR runtime.

        Speaker: Frederic Plourde (Collabora ltd.)
    • 08:00 09:15
      Breakfast and Registration
    • 09:15 12:30
      Display/KMS Meeting (Room 9D)
      • 09:15
        Display/KMS Meeting (Room 9D) 3h 15m

        Developers and experts in the Linux display stack have been meeting to discuss major API changes and work in the kernel and user space that support new features and technologies. This meeting will bring us together once again to share outcomes and development status-update on topics discussed since the last Linux Display Next hackfest[1][2]. This is an opportunity to unblock developments, brainstorm new features, share new hardware capabilities and keep developers up-to-date.

        Possible topics includes:
        - KMS Color Management
        - HDR Video and Plane Offloading
        - Real-time Scheduling and Async KMS API
        - Display Mux
        - Display Control
        - Scaling and Sharpening

        Related XDC 2024 talks:
        - https://indico.freedesktop.org/event/6/contributions/293/
        - https://indico.freedesktop.org/event/6/contributions/310/
        - https://indico.freedesktop.org/event/6/contributions/297/
        - https://indico.freedesktop.org/event/6/contributions/288/
        - https://indico.freedesktop.org/event/6/contributions/289/
        - https://indico.freedesktop.org/event/6/contributions/303/

        Related upstream/community work:
        - https://lore.kernel.org/dri-devel/20240819205714.316380-1-harry.wentland@amd.com/
        - https://invent.kde.org/plasma/kwin/-/commits/work/zamundaaa/drm-colorop
        - https://github.com/ValveSoftware/gamescope/pull/1309
        - https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3433
        - https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3893
        - https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7444

        [1] https://events.pages.igalia.com/linuxdisplaynexthackfest/
        [2] https://melissawen.github.io/blog/2024/09/25/reflections-2024-display-next-hackfest

        Speakers: Melissa Wen (Igalia) , Rodrigo Siqueira Jordao (AMD)
    • 09:15 12:30
      Workshops, Meetings & Hacking Sessions: (Room 9F)
    • 09:30 11:00
      X.Org Board of Directors meeting: (Room 9EG)
    • 11:00 13:00
      Towards a universal buffer allocator for Linux (Room 9C) 2h

      Buffer allocation for media contents, despite being required for any framework or application dealing with image capture, processing, decoding, encoding, rendering and display, remains an area plagued by many unsolved problems. Over time improvements have been made to APIs for buffer allocation, both on the kernel side (standardization of the DRM dumb buffer API, or DMA heaps, to name a few) and in userspace (most notably with GBM, and the buffer management API in Vulkan), or for specific use cases (e.g. gralloc in Android). Unfortunately, no universal solution exists to allocate buffers shared by multiple devices. This is hindering interoperability and forces userspace to pile hacks and workarounds.

      This workshop is a continuation of the Thursday presentation with the same title.

      Speakers: James Jones (NVIDIA) , Laurent Pinchart
    • 12:30 14:00
      Lunch 1h 30m
    • 14:00 16:00
      Pain Points for Downstream DRM (Kernel) and Mesa (User space) Distributors: (Room 9EG)

      The Linux graphics stack is amazing, but it presents some difficulties for downstream distributions. Many of these are related to security, as downstream distros want to know when there is a vulnerability that affects them so they can prioritize fixes. A better security process for open source graphics, including both kernel (drm) and userspace (mesa), would be a significant help here. Others include knowing which GPUs are still supported, problems with patent-encumbered media codec, and being able to help users who cannot run drm-tip or other development branches.

      Conveners: Demi Obenour (Invisible Things Lab) , Rob Clark (Google)
    • 14:00 17:00
      Wayland workshop: Wayland workshop (Room 9D)
      • 14:00
        Wayland workshop (Room 9D) 3h

        A workshop to discuss Wayland development, including protocols, governance, WSI, etc.

        Speakers: Daniel Stone (Collabora) , Jonas Ådahl (Red Hat)
    • 14:00 17:00
      Workshops, Meetings & Hacking Sessions: (Room 9F)
    • 17:00 17:10
      Main Track (Room 9AB)
      • 17:00
        State of the X.Org Foundation (Room AB) 10m

        State of the X.Org Foundation

        Speaker: Lyude Paul (Red Hat)
    • 17:10 17:25
      Workshops, Meetings & Hackfest Recaps (Lightning talks, Room AB)
    • 17:25 17:30
      XDC 2024 Closing session 5m
      Speaker: Mark Filion (Collabora)