- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 1.6k
 
Description
With macOS 12.5 Beta 3 and newer, Apple has broken support for Nvidia Kepler GPUs. More specifically, for devices using Nvidia Kepler as primary screen rendering devices.
When running with the Kepler patchset on 12.5, we see that upon entering the user's password, WindowServer starts rendering and freezes shortly after (generally with the spinner). After approximately 10 seconds, the OS's watchdog will kick in, forcing you back to the login screen.
When monitoring logs, we see that WindowServer's not crashing but waiting due to another process. When examining the generated spin dump, the following can be seen on the main thread:
12  ??? (<F71FB3CA-5FCC-3577-9457-B047888A46D1> + 21806) [0x11140c52e] 1-12
    12  ??? (WindowServer + 13224) [0x109b873a8] 1-12
      12  SLXServer + 1690 (SkyLight + 2914661) [0x7ff8155d3965] 1-12
        12  server_loop + 91 (SkyLight + 2915439) [0x7ff8155d3c6f] 1-12
          12  CGXRunOneServicesPass + 214 (SkyLight + 2910471) [0x7ff8155d2907] 1-12
            12  run_timer_pass + 502 (SkyLight + 2674062) [0x7ff815598d8e] 1-12
              12  desktop_window_effects_update(CGXWindow*, bool) + 2606 (SkyLight + 262569) [0x7ff81534c1a9] 1-12
                12  ??? (MPSImage + 133129) [0x7ff81b22d809] 1-12
                  12  ??? (MPSImage + 130875) [0x7ff81b22cf3b] 1-12
                    12  ??? (MPSImage + 225677) [0x7ff81b24418d] 1-12
                      12  MPSAutoCache::GetTempTexture(MPSPixelInfo const*, MTLSize const*, MTLTextureDescriptor*, bool, TextureSizeAndAlign*) + 508 (MPSCore + 255618) [0x7ff819f07682] 1-12
                        12  ??? (MPSCore + 256411) [0x7ff819f0799b] 1-12
                          12  ??? (MPSCore + 252876) [0x7ff819f06bcc] 1-12
                            12  ??? (MPSCore + 159618) [0x7ff819eeff82] 1-12
                              12  ??? (GeForceMTLDriver + 1092826) [0x110444cda] 1-12
We see that one of the Metal Performance Shader sub frameworks, MPSImage, is having troubles rendering with Kepler's Metal driver.
Unfortunately for us, we cannot downgrade MPS or their sub frameworks due to the dyld shared cache fusion. Last time the MPS stack was on root was in macOS Catalina. More info on the challenges of the dyld shared cache can be read below:
Otherwise, systems with Kepler should avoid running 12.5 until further research can be done. No estimate for a fix can be provided at this time