Build: WoW: Forever Beta 1.60.1.69913, Mac arm64, Metal (mtl_1_1). Same result with Enhanced and Classic models.
Hardware: MacBook Pro 16" M5 Pro (Mac17,8), 48 GB, macOS 26.5.2 (25F84), built-in display 1728x1117 @ 120 Hz.
Settings: fresh install, auto-detected Graphics Quality 6, which sets Secondary Lighting to High (graphicsLightMode 2, giQuality 3), render scale 50%.
Steps
- Log in, create a character, Enter World.
- Loading bar reaches 100%, the intro cinematic starts with audio only, the display stays frozen on the loading screen.
- WindowServer stops checking in, watchdogd kills it (the client is terminated with
SIGTERM [HANG]inErrors/), it hangs again right away, and after the second induced crash within 120 seconds the kernel panics and the Mac reboots. Reproduced three times in a row this morning, two of them ending in a reboot.
Evidence (from /Library/Logs/DiagnosticReports)
Both panic reports carry the same string:
panic(cpu 5 caller 0xfffffe004f8a1e44): userspace watchdog timeout: no successful checkins from WindowServer (2 induced crashes) in 120 seconds
WindowServer has not exited since first loaded
service: WindowServer (2 induced crashes), total successful checkins in 660 seconds: 54, last successful checkin: 120 seconds ago
WindowServer watchdog stackshot (userspace_watchdog_timeout.spin), main thread, identical for all 12 samples:
Thread "ws_main_thread" DispatchQueue "com.apple.SkyLight.mtl_submit"
SkyLight -> Metal -> libdispatch -> Metal -> IOGPU -> IOKit
-> kernel: IOGPUFamily -> AGXG17X -> IOGPUFamily (never returns)
The GPU command stream is stuck inside the AGX driver and WindowServer never gets its frame back. The trigger is the Secondary Lighting setting: with it at High the GPU hangs at Enter World every time; with it at Fair and every other setting unchanged the game runs.
Workaround (verified)
Set Secondary Lighting to Fair before entering the world (System > Graphics at the character screen), or with the game closed in WTF/Config.wtf:
SET graphicsLightMode "0"
SET raidGraphicsLightMode "0"
SET giQuality "1"
SET RAIDgiQuality "1"
Everything else stayed at preset 6 (shadows 3, SSAO 3, sunshafts 2, reflections 2). 77 minutes in the world afterwards with no hang and no new watchdog or panic reports.
For reference, the Secondary Lighting dropdown in the Forever UI (Blizzard_SettingsDefinitions_Shared/Graphics.lua, gated by C_VideoOptions.IsSecondaryLightingSupported()) maps 0 = Fair, 1 = Good, 2 = High to graphicsLightMode; the engine CVar is giQuality (1 to 3), and giQuality 0 asserts, so GI cannot be disabled outright.
This is the same failure reported in “Mac client crashing wow: forever”, “Forever - Beta” (Mac Technical Support) and “Mac Crashing Solution! Turn SECONDARY LIGHTING to FAIR”, and it is not in the September 17 known issues list. Until the Metal GI pass is fixed, capping Secondary Lighting at Fair in the Mac auto-detect would stop the reboots.