LuminalVGD v0.1.0-alpha.3 — Milestone 1 Update 2
Driver build 13 (DriverVer 0.1.0.13). Changes since v0.1.0-alpha.2 (build 11):
Fixed
- Cold-boot display activation. At first activation the OS routinely
reassigns the swapchain within ~10 ms; the frame worker created its
D3D device while holding the ring mutex, so on a cold GPU stack the
bounded worker stop could detach a worker that still pinned the mutex,
and the replacement worker starved before it could hand the OS its
swapchain device — the modeset rolled back and the display never
activated (no GDI name, zero active displays). The device create and
IddCxSwapChainSetDevicenow run entirely before any ring
bookkeeping; nothing on the activation-critical path can wait behind a
detached predecessor. - Black box around the text-caret (I-beam) cursor. The hardware-
cursor setup ladder preferred XOR emulation, and the OS's emulation
converts monochrome/XOR cursors to alpha shapes with a documented
solid border around the image. The ladder now offers FULL XOR support
first — the streaming host composites true masked/XOR shapes at
encode time — with emulation retained as the fallback on OS builds
that refuse it.
Hardening (shell callback hygiene)
- All IddCx/D3D side effects moved off callback frames onto a dedicated
effects worker; bounded (500 ms) teardown everywhere a thread could
previously block a callback; adapter epoch protocol so stale queued
work can never touch a torn-down adapter; full device-teardown reset
so a device re-add always re-initializes cleanly.
Diagnostics
- New ETW events: mode-negotiation visibility
(ParseDescription2/QueryTargetModes2/CommitModes2) and
CursorShape(shape type/geometry per published cursor shape).
Pairing
- Works with LuminalShine 26.08.0-beta.2 or later; 26.08.0-beta.4 is
current at release time. Protocol unchanged (proto 0.3,
handshake build 13).