Commit Graph

  • 22266c47cf Merge client-recover: open a fresh server session after a device loss. swung0x48 2026-10-02 23:38:56 -04:00
  • 4a4e53d9a9 Merge magma-validate: Magma SPIR-V validation declines and surfaceless EGL. swung0x48 2026-10-02 23:38:19 -04:00
  • b7cc56dd44 [Docs] (Anland): record the app-driven desktop's timings, idle numbers and frame pacing swung0x48 2026-10-02 23:36:47 -04:00
  • 7823bcd987 [Fix] (Client): recover a fresh server session after a device loss so applications can recreate their contexts swung0x48 2026-10-02 23:34:21 -04:00
  • caa00995e7 [Fix] (EGL): slow an unpaced Wayland window to one frame a second while the compositor shows none of it swung0x48 2026-10-02 23:26:03 -04:00
  • 1ff7ca5331 [Fix] (EGL): pace Wayland window swaps by frame callbacks so clients idle while the compositor shows nothing swung0x48 2026-10-02 23:10:33 -04:00
  • 6125f941d1 [Fix] (EGL): accept surfaceless make-current and config-less contexts so eglinfo prints the GL renderer lines swung0x48 2026-10-02 23:09:59 -04:00
  • bfa7987ca6 [Fix] (Magma): decline programs whose final SPIR-V fails validation instead of handing the module to the driver swung0x48 2026-10-02 23:09:58 -04:00
  • b1405e17ad [Docs] (Anland): the desktop starts from the app and idles while hidden, with no manual bring-up swung0x48 2026-10-02 22:46:04 -04:00
  • b64c2de3c8 [Docs] (Anland): point the reproduce guide at the anland fork swung0x48 2026-10-02 22:26:24 -04:00
  • 2b95a9697a [Docs] (Anland): reproduce the MobileGL Plasma container setup from source swung0x48 2026-10-02 22:26:11 -04:00
  • 228bd24c67 [Fix] (Espryt): turn window buffer age on by default swung0x48 2026-10-02 21:00:20 -04:00
  • c822a9fef7 [Fix] (Espryt): copy only the damaged rectangles into shared images again swung0x48 2026-10-02 21:00:10 -04:00
  • 815217cc07 [Fix] (Espryt): turn the scissor off around backend copies by what the driver has, not another session's render-state shadow swung0x48 2026-10-02 20:57:18 -04:00
  • 7a5b0755b3 [Docs] (Anland): install MobileGL as the container's system-wide vendor and document the fallback swung0x48 2026-10-02 20:13:33 -04:00
  • 3d69c37504 [Fix] (EGL): keep a process the vendor does not serve from opening its log swung0x48 2026-10-02 20:07:15 -04:00
  • 4f679d669d [Fix] (EGL): answer client queries and proc lookups without bringing a session up swung0x48 2026-10-02 20:03:45 -04:00
  • 4095624f87 [Fix] (Client): step aside for processes that ask for software rendering swung0x48 2026-10-02 19:57:49 -04:00
  • 321e61ca0b [Docs] (README): the target is OpenGL 4.6 Core, with the current modules and platforms swung0x48 2026-10-02 19:53:29 -04:00
  • 552dd3d39b [Fix] (EGL): decline another backend's GBM device and ask X for a visual only on X displays swung0x48 2026-10-02 19:49:32 -04:00
  • 6c742eba8a [Build] (Config): bump the version to 26.10 swung0x48 2026-10-02 19:43:47 -04:00
  • 69e96f5b8d [Feature] (Client): read a system config file and decline EGL/GLX/GBM when no server answers swung0x48 2026-10-02 19:36:38 -04:00
  • d24abe9287 [Fix] (Espryt): make window buffer age opt-in swung0x48 2026-10-02 18:34:23 -04:00
  • d6d75c9951 [Fix] (Espryt): copy whole frames into shared images swung0x48 2026-10-02 17:38:55 -04:00
  • bb4e3e0ec6 [Fix] (Espryt): query buffer age only after a damage region is declared swung0x48 2026-10-02 17:11:31 -04:00
  • 233e2f8ced [Fix] (Espryt): swap a pbuffer without damage rectangles swung0x48 2026-10-02 16:27:16 -04:00
  • 74919a3bc1 [Feature] (Present): buffer age and swap damage end to end on Espryt and Magma swung0x48 2026-10-02 15:19:39 -04:00
  • 7090e31dee [Feature] (Damage): damage-region and buffer-age bookkeeping with host tests swung0x48 2026-10-02 14:51:48 -04:00
  • 5accb0985c [Fix] (glslang): keep samplers of anonymous uniform structs out of the default uniform block, which made Adreno page-fault into device loss on Shadertoy swung0x48 2026-10-02 14:20:36 -04:00
  • 58685bc116 [Fix] (Server): wait out an apply thread that is busy in a GPU stall at Stop() instead of aborting every session swung0x48 2026-10-02 13:54:26 -04:00
  • 34090097a1 [Fix] (Client): make a readback on a lost device a no-op instead of a Fatal that kills the client swung0x48 2026-10-02 13:43:51 -04:00
  • 58c3d9bde5 [Fix] (P14): latch a lost GPU device per session on Magma and Espryt instead of aborting the whole server swung0x48 2026-10-02 13:34:18 -04:00
  • d03fe4c9dd [Fix] (Client): drop the late reply of a timed-out surface op instead of reading it as the next op's swung0x48 2026-10-02 13:34:17 -04:00
  • 239fc228fc [Fix] (DirectVulkan): retype gl_FragCoord access chains to Private when the y-flip pass redirects them to its copy swung0x48 2026-10-02 13:34:16 -04:00
  • 8da082f805 [Fix] (State): start the clear colour at GL's (0, 0, 0, 0), not opaque black swung0x48 2026-10-02 12:50:36 -04:00
  • 258b946086 [Fix] (P12): publish the server window's extent from the display on every resize, at once, and let eglQuerySurface take it in swung0x48 2026-10-02 12:03:52 -04:00
  • 16b07cf4b5 [Fix] (DirectVulkan): build offscreen targets of a window-created renderer through AImageReader instead of a null headless entry point swung0x48 2026-10-02 11:42:14 -04:00
  • 51c37bcbc9 [Fix] (Sampler): convert sampler parameters set through the other scalar type swung0x48 2026-10-02 11:22:00 -04:00
  • 5a7b23f661 [Feature] (P12): suspend the on-screen session when the server window goes, resume it on the next, and republish a resized window's extent swung0x48 2026-10-02 11:14:27 -04:00
  • 15f9b27a42 [Fix] (P14): publish a cached sampler CSO into each share group that names it swung0x48 2026-10-02 10:35:44 -04:00
  • 82d96a63c9 [Docs] (Anland): runbook and skill for bringing up MobileGL with anland and KDE Plasma swung0x48 2026-10-02 10:31:35 -04:00
  • 7520e53b5e [Feature] (SharedImage): GPU-side fences between sessions on Espryt and Magma, no CPU wait at present swung0x48 2026-10-02 10:31:34 -04:00
  • b5cab44100 [Feature] (SharedImage): sync_file write/read fences per image, so sessions order their access without CPU waits swung0x48 2026-10-02 09:40:12 -04:00
  • 672261764e [Fix] (SharedImage): allocate and import ARGB8888/XRGB8888 images so KWin's offscreen Quick views get buffers swung0x48 2026-10-02 09:37:17 -04:00
  • 0e314f645e Remove a stray build log swung0x48 2026-10-02 09:18:20 -04:00
  • 350fc699a1 [Fix] (SharedImage): create dma-buf wl_buffers without create_immed, drain the ring before teardown ops, and decline Magma records after the renderer is gone swung0x48 2026-10-02 09:18:05 -04:00
  • 3d17e8c10b [Feature] (SharedImage): zero-copy Wayland windows via linux-dmabuf, EGL dma-buf import, GBM backend, and Espryt/Magma AHB present and texture binding swung0x48 2026-10-02 08:39:59 -04:00
  • 38842985f8 [Feature] (SharedImage): server-allocated AHB images over a shared_image pipe verb, with dma-buf fds on the aux socket swung0x48 2026-10-02 07:52:25 -04:00
  • e06aabe812 [Docs] (Anland): plan for zero-copy windows via server-allocated AHB dma-bufs swung0x48 2026-10-02 07:34:45 -04:00
  • 67a97065b8 [Fix] (DirectVulkan): transpose quarter-turn viewports and scissors, rebuild a resized pbuffer's target, and leave out-of-range default-framebuffer reads unfilled swung0x48 2026-10-02 07:15:47 -04:00
  • ec084959fa [Docs] (Anland): record the Magma bring-up to Espryt parity swung0x48 2026-10-02 06:36:20 -04:00
  • 4b388950e3 [Fix] (DirectVulkan): decline draws from storeless buffers and sample with defaults when a texture's sampler CSO is gone, as DirectGLES does swung0x48 2026-10-02 06:33:53 -04:00
  • 7e76a98d36 [Fix] (DirectVulkan): keep one renderer per session across its surfaces, follow bind_context to each context's surface, and keep the wire resource ops registered while any session lives swung0x48 2026-10-02 06:24:13 -04:00
  • 15dbe78ce6 [Fix] (DirectVulkan): give each served session its own renderer and Magma state swung0x48 2026-10-02 05:52:38 -04:00
  • 168808d1a7 [Fix] (DirectVulkan): advertise the GLSL 1.00-era ARB strings KWin gates on, and let a debug property pick the Android backend swung0x48 2026-10-02 05:42:14 -04:00
  • 75e1da4d1b [Docs] (Anland): record the lock-screen corruption root cause swung0x48 2026-10-02 05:07:59 -04:00
  • cd610934d7 [Fix] (DirectGLES): scope object deaths to their session, and keep container objects and staging rings per native context swung0x48 2026-10-02 05:07:59 -04:00
  • 335637af38 [Docs] (Anland): record the GLX, Chrome and server-config fixes swung0x48 2026-10-02 03:09:18 -04:00
  • 4236b42a57 [Fix] (Server+Transpiler): configure the server once per process, and enable blend_func_extended for index-1 outputs swung0x48 2026-10-02 03:09:17 -04:00
  • 0b6842ac8b [Fix] (EGL+GL): let ANGLE's GL backend run on MobileGL (GBM displays, foreign wl_display, precision query, ES-free GL_VERSION) swung0x48 2026-10-02 02:58:55 -04:00
  • 47db68d557 [Feature] (GLX): serve as a glvnd GLX vendor and present remote X windows swung0x48 2026-10-02 02:11:36 -04:00
  • ce11c9accd [Docs] (Anland): record the Chrome/dma-buf feedback fix swung0x48 2026-10-02 01:45:03 -04:00
  • 7bb9d9829f [Docs] (Anland): record the Plasma desktop milestone and the remaining issues swung0x48 2026-10-02 01:38:57 -04:00
  • ccf8eb6571 [Fix] (Client): serialize multi-threaded GL streams, follow Wayland window resizes, export the KHR image aliases swung0x48 2026-10-02 01:38:21 -04:00
  • 0b314ddae7 [Fix] (P14): serialize sessions on one backend turn and give each client surface its own native surface swung0x48 2026-10-02 01:38:20 -04:00
  • d5acece005 [Docs] (Anland): record the Plasma bring-up state after the P14 server-state fixes swung0x48 2026-10-02 00:04:01 -04:00
  • 30fef23d52 [Fix] (P14): scope the server staged stores and the context-live flag to the calling session swung0x48 2026-10-02 00:04:00 -04:00
  • cbb87b968a [Docs] (Anland): drop the stale-glslang note and record d554c87c and the landed tooling swung0x48 2026-10-01 23:36:27 -04:00
  • d554c87c45 [Fix] (Loader+Texture): tolerate drivers without EXT swap-with-damage, and pair stencil-only storage correctly swung0x48 2026-10-01 23:16:33 -04:00
  • 7a48521d37 [Fix] (DirectGLES): destroy stale window surfaces before creating a new one swung0x48 2026-10-01 22:32:53 -04:00
  • 6946ff3a5c [Docs] (Anland): refresh the handoff to the post-P14 landed state swung0x48 2026-10-01 20:41:54 -04:00
  • 5a0f13fdfa [Fix] (DirectGLES): advertise the GLSL 1.00-era ARB strings KWin gates on swung0x48 2026-10-01 20:21:35 -04:00
  • ff2120616d [Feature] (P14): key the backend twin tables by session and share group swung0x48 2026-10-01 20:11:53 -04:00
  • 5c6399e240 [Docs] (Design): record S5 landed shape and remaining twin-key debt swung0x48 2026-10-01 19:23:57 -04:00
  • 4ed1c9cef2 [Feature] (P14): state ownership - multi-session, multi-context, share groups swung0x48 2026-10-01 19:16:41 -04:00
  • ebc552a048 [Fix] (WSI): report Wayland present failure and keep GLX drawables off XIDs swung0x48 2026-10-01 13:45:52 -04:00
  • 6fb880cdf2 [Build] (Linux): alias libGL.so and libGL.so.1 to libMobileGL swung0x48 2026-10-01 13:45:51 -04:00
  • d52c031c50 [Docs] (Design): state ownership for multi-session/context/share-group (P14) swung0x48 2026-10-01 13:43:51 -04:00
  • 4156ca6e36 [Docs] (Anland): hand off unified runtime work and record corrected state ownership requirements swung0x48 2026-10-01 13:18:23 -04:00
  • 2f64ede8c6 [Feature] (Remote): serve concurrent shared-memory clients in isolated workers swung0x48 2026-10-01 12:53:27 -04:00
  • a5b463a5e8 [Feature] (Remote): expose a package-neutral embedded display server API swung0x48 2026-10-01 12:31:16 -04:00
  • 32c79f4135 [Feature] (EGL): Wayland window surfaces, presented through wl_shm BZLZHH 2026-10-01 10:59:07 -04:00
  • f458924360 [Fix] (EGL): a second display is served, and glvnd gets its answers from one table gold 2026-10-01 02:55:16 +08:00
  • 0dad3fcaa1 [Feature] (EGL): MobileGL serves EGL through libglvnd gold 2026-10-01 02:36:53 +08:00
  • 75f83b20fc [Feature] (EGL): the platform and device extensions are one list, spelled once gold 2026-10-01 02:36:53 +08:00
  • 57781688ce [Chore] (glvnd): vendor the EGL vendor ABI headers gold 2026-10-01 01:53:37 +08:00
  • 7fd7f71d6c [Feature] (EGL): Wayland window surfaces, presented through wl_shm feat/disaggregated-container-gbm BZLZHH 2026-10-01 10:59:07 -04:00
  • 353daa265e [Fix] (Pipe): the records two families keep of their own are forgotten with the session too BZLZHH 2026-10-01 10:59:06 -04:00
  • 69728a4f9b [Fix] (Remote): the create window starts empty with each session BZLZHH 2026-10-01 10:31:20 -04:00
  • c6f828532a [Fix] (Pipe): nothing is published once the split session is gone BZLZHH 2026-10-01 10:31:20 -04:00
  • 5bb28140cb [Feature] (Remote): the TCP supervisor serves sessions side by side BZLZHH 2026-10-01 10:31:20 -04:00
  • bf7fc6bf6b [Fix] (DirectGLES): an imported external texture is attached as the host frame canvas BZLZHH 2026-10-01 09:47:32 -04:00
  • b72d4c5dff [Feature] (DirectGLES): a stable canvas in front of the host frames BZLZHH 2026-10-01 09:47:24 -04:00
  • c88c6ff196 [Fix] (Remote): the present record presents a host-framed surface BZLZHH 2026-10-01 09:47:18 -04:00
  • 16488d5801 [Feature] (GL): glFlush presents the display host's frame for a compositor that never swaps BZLZHH 2026-10-01 09:47:12 -04:00
  • c16a51da62 [Feature] (EGL): a surfaceless compositor takes the display host's frame surface BZLZHH 2026-10-01 09:47:06 -04:00
  • 08e45dc9c6 [Fix] (GLState): an external texture is a 2D texture that remembers it is external BZLZHH 2026-10-01 09:46:57 -04:00
  • b2ce268c86 [Fix] (GLState): a global buffer target asked through the indexed lookup is a warning, not an abort BZLZHH 2026-10-01 09:46:46 -04:00
  • df58f21d83 [Feature] (EGL): the vendor answers what a compositor resolves, and the imported texture is complete BZLZHH 2026-10-01 18:15:55 +08:00
  • 29a89cc10a [Fix] (gbm): the two defects only the Android build could find gold 2026-10-01 08:23:04 +08:00