CHANGELOG 0.2.1.md — Notepad

Added

  • A new public ABI on /dev/gpu0 for diagnostics and extended 2D control: GPU_IOC_GET_STATS, GPU_IOC_GET_SCANOUTS, GPU_IOC_REFRESH_SCANOUTS, GPU_IOC_SET_CURSOR and GPU_IOC_MOVE_CURSOR.
  • Wider virtio-gpu statistics for presents, stages, waits, timeouts, completions, IRQs, recovery and cursor operations.
  • Scanout enumeration and basic display info/hotplug refresh in the virtio-gpu backend, keeping desktop single-display by default.
  • Initial hardware cursor plane support in virtio-gpu, with a transparent fallback to the desktop's software cursor when the backend does not expose it or fails.
  • Additional automated coverage in gputest --smoke to validate driver progress through GPU_IOC_GET_STATS and scanout enumeration.

Changed

  • The system reports itself as v0.2.1 in the kernel, the shell, uname, sysinfo and the components consuming the shared version.
  • The normal graphics model is now definitively desktop-first: the taskbar stays visible, client apps render over a stable work area and the desktop becomes the normal owner of the scanout.
  • shellapp, gfxdemo, keytest, mousetest and doomgeneric are aligned to the compositor's client path instead of the legacy direct fullscreen over /dev/gpu0.
  • The taskbar and the Start menu get a pass of visual and behavioral polish to fit the new desktop-first contract better.
  • The virtio-gpu backend stops depending on opportunistic caller reentry to make progress: the internal scheduler now coalesces presents per resource, reduces redundant SET_SCANOUTs and advances work in the background with IRQ support when the PCI line is available.
  • virtio-gpu adds deliberate recovery and a predictable degraded mode in the face of device timeouts, trying to restore the primary scanout and the console without requiring an immediate OS restart.
  • The main build and the associated tooling make it more explicit that build/disk.img is persistent by default: SVFS2 consistency is validated, recreating the image is avoided except on real corruption, and doomgeneric together with doom1.wad is kept as a practical persistence regression test.
  • The QEMU profiles used by run, smoke and the graphics utilities align better with the current stack's real virtual hardware (virtio-gpu + virtio-tablet + desktop).
  • doomgeneric moves permanently to living as a compositor client and is aimed at manual validation inside the normal graphics session, instead of depending on a host-side smoke of its own.
Version 0.2.12026-03-300 changes