Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS 12.5: Nvidia Kepler and WindowServer crashing #1004

Closed
khronokernel opened this issue Jul 19, 2022 · 0 comments
Closed

macOS 12.5: Nvidia Kepler and WindowServer crashing #1004

khronokernel opened this issue Jul 19, 2022 · 0 comments
Labels
help wanted Extra attention is needed

Comments

@khronokernel
Copy link
Member

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

@khronokernel khronokernel added the help wanted Extra attention is needed label Jul 19, 2022
khronokernel added a commit that referenced this issue Jul 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant