watchthelight labs

nvgfx: 2026-10-30 to 2026-11-11

Read from GitHub only. Nothing below is reproduced on our machine.

NullMoth 2.9

v2.9 came out on 2026-11-10, 529 commits after 2.8.1, on NVIDIA 620.70.06, and is described as the last 2.x. v3.0.0-beta.1 (2026-11-11) is for macOS 27.2 and does not concern a Tahoe machine.

What it changes for our fork:

  • Shader cache. 52a62bf writes each cache entry to a temp file, fsyncs it and renames it, on the calling thread. 2635d4f warms recorded Core Animation shader variants on two background threads after login (NVMTL_FCWARM_OFF=1 turns it off). 037e281 fixes the cache folder for the sandboxed WindowServer. Our async cache write touches the same code, so stock 2.9 has to be measured for the slow drags after login before that patch is carried over.
  • Two of our commits are upstream since 2.7.1, with credit: 4189693 (skip a repeated setRenderPipelineState) and eeeeca0 (sampler-variant memo), with switches NVMTL_NO_PSO_SKIP and NVMTL_NO_SV_MEMO. These are the two that changed Alacritty on one tester's machine (#412); the switches make that easy to test.
  • Hybrid laptops. 2.9 has an nmhybrid mode with an Intel panel kext (NMIntelFB); the 1401 app says it has not run on a hybrid laptop yet. The first report, #555 on Alder Lake, is a boot panic because IOFBDependentID is set after IOFramebuffer::start, with a patch attached. Arrow Lake is called untested.
  • HDR. HDR10 and 30-bit output exist behind nvfbhdr=1 and nvfb10bit=1. The framebuffer class name is unchanged, so the 8 bpc rule we found for NVDA class names (#341) probably still applies. Low, nobody has posted a result.
  • Display modes. The timing range goes up to 2.7 GHz and 540 Hz. #429: 300 Hz commits but the panel stays black. #549: derived 75, 120 and 150 Hz modes never commit.
  • Sleep. D3cold (nvrtd3=1) and ASPM (nvrmaspm=1) are opt-in. #220, a desktop that reboots after about 3 minutes asleep, is still open.
  • 2.9 reserves the Lenovo CBMR firmware page itself (#451), which is what our LegionCbmrFix does.

Nothing in the window is specific to GB206.

High for what the commits contain, Unverified for how 2.9 behaves on a 5070 Laptop.

Other repositories

  • 1401 issue 154: no backlight is registered on a laptop panel driven by the NVIDIA card (the NVKMS brightness query returns 0x56), and presents stay at 36 to 48 per second on a 165 Hz panel. Open, unanswered.
  • SMCNvidiaGPU v2.0 (MIT): GPU temperature, power and fan for NullMoth 2.9, tested on an RTX 5080. Not audited by us.
  • rodgod-rr/Dell-G15-5530-Hackintosh: Raptor Lake-HX with the panel on the Intel iGPU and an RTX 4050 on NullMoth 2.9, Tahoe 26.7.2. Reports sleep and wake through S0 idle, and powers the RTX off at idle with an ACPI PG01._OFF call from its own kext. One machine, self-reported, no licence.
  • yes-man-Guo/Lenovo-Legion-Y9000X-IAH7---hackintosh: scaled sizes were missing on 2.9 until a scale-resolutions display override was added.
  • NVIDIA open-gpu-kernel-modules 620.70.06: the release text is only a link. 2D18 is in the supported table.
  • thanhnndev/nvidia-macos-driver: branches for an AMD 890M panel path with WindowServer fixes in the Metal plugin (surface keep, descriptor-set reuse). Titles read only.
  • 1401 issue 136: AM5 boards that do not POST after a macOS shutdown with the driver loaded. Correlation only.
  • Web search for the window found nothing new.