Seit dem Update von Moutain Lion im November 2012 erhalte ich ständig diese seltsamen Grafikprobleme.
Die Leidensliste:
Manchmal, nachdem der Laptop aus einem langen Ruhezustand aufgewacht ist, stürzen sie beim Versuch, Anwendungen zu starten, alle mit der folgenden Art von Stacktrace ab, die ein Problem in CoreImage/OpenCL aufweist:
Code Type: X86-64 (Native)
Parent Process: launchd [136]
OS Version: Mac OS X 10.8.3 (12D68)
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x000000010c8d0000
VM Regions Near 0x10c8d0000:
shared memory 000000010c8c0000-000000010c8d0000 [ 64K] r--/r-- SM=SHM
-->
CG shared images 000000011a442000-000000011a44a000 [ 32K] r--/r-- SM=SHM
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_c.dylib 0x00007fff9371c6d3 strlen + 51
1 libsystem_c.dylib 0x00007fff9376a067 strdup + 21
2 libcldcpuengine.dylib 0x000000010c2a4e72 0x10c29e000 + 28274
3 libcldcpuengine.dylib 0x000000010c2a2ac6 glrCompBuildProgram + 96
4 com.apple.opencl 0x00007fff906cb398 0x7fff906a3000 + 164760
5 com.apple.opencl 0x00007fff906b3bc3 clBuildProgram + 904
6 com.apple.CoreImage 0x00007fff92542455 -[FEOpenCLContext _loadKernel:target:testOnly:] + 1156
7 com.apple.CoreImage 0x00007fff9263c35f -[FEContext(Kernel) loadKernel:target:] + 94
8 com.apple.CoreImage 0x00007fff9257e54f FEApplyTreeNode::render1(FETreeContext*, FEShape const&, fe_kernel_target_struct*, int, float*, FETreeTexture*) + 105
9 com.apple.CoreImage 0x00007fff9257f735 FEApplyTreeNode::render2(FETreeContext*, FEShape const*, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 1583
10 com.apple.CoreImage 0x00007fff9257c7c7 FETreeNode::render_(FETreeContext*, FEShape const*, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 169
11 com.apple.CoreImage 0x00007fff925804c5 FETreeNode::render(FETreeContext*, FEShape const&, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 107
12 com.apple.CoreImage 0x00007fff92584211 FETreeContext::renderTree(FETreeNode*, FEShape const&, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 277
13 com.apple.CoreImage 0x00007fff92584535 FETreeContext::renderImage_(FEImage*, CGRect, FEShape const*, CGAffineTransform, CGColorSpace*, FEFormat, bool, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 703
14 com.apple.CoreImage 0x00007fff92584911 FETreeContext::renderImage(FEImage*, CGRect, FEShape const*, CGAffineTransform, CGColorSpace*, FEFormat, bool, void (*)(FEContext*, void*, FEFormat), void (*)(FEContext*, void*), void*) + 459
15 com.apple.CoreImage 0x00007fff9255b1a6 -[FEImage(Internal) _renderWithContext:bounds:transform:colorSpace:format:premultiplied:setupCallback:finishCallback:callbackData:] + 339
16 com.apple.CoreImage 0x00007fff9255a5bf -[FEImage getBitmap:withContext:origin:transform:colorSpace:] + 694
17 com.apple.CoreImage 0x00007fff9250fa9a -[CIContextImpl render:toBitmap:rowBytes:bounds:format:colorSpace:] + 427
18 com.apple.CoreImage 0x00007fff9250e968 -[CIContext render:toBitmap:rowBytes:bounds:format:colorSpace:] + 77
19 com.apple.coreui 0x00007fff938ff5fc _CUICreateImageByApplyingEffectsToImageViaCI(long, CUIDescriptor const*, __CFArray const*, CGImage*, double, unsigned char) + 16220
20 com.apple.coreui 0x00007fff938f9219 CUIArtFileRenderer::DrawImage(CGRect, long, CUIDescriptor const*) + 9651
21 com.apple.coreui 0x00007fff938e7887 CUIArtFileRenderer::Draw(CUIDescriptor const*, CGAffineTransform, CUIReturnInfo&) + 1571
22 com.apple.coreui 0x00007fff938c2895 CUIRenderer::Draw(CGRect, CGContext*, __CFDictionary const*, __CFDictionary const**) + 3343
23 com.apple.coreui 0x00007fff938edbcb CUIDraw + 180
Model: MacBookAir5,2, BootROM MBA51.00EF.B02, 2 processors, Intel Core i7, 2 GHz, 8 GB, SMC 2.5f7
Graphics: Intel HD Graphics 4000, Intel HD Graphics 4000, Built-In, 512 MB
(Absturzbericht der Einfachheit halber ausgeschnitten)
Ich erlebe die gleichen grafischen Artefakte (weißes Rauschen), die auf verschiedenen UI-Elementen wie geöffneten Fenstern, den Finder-Symbolen in der Cmd + Tab-Liste, dem Hintergrundbild usw. überlagert sind: Screenshot
Bei beschädigten Fenstern behebt jede Aktion, die ein Neuzeichnen auslöst, das Problem, aber die anderen (Finder-Symbol, Hintergrundbild) bleiben (wahrscheinlich, weil sie nie neu zeichnen), bis der Computer neu gestartet wird.
Bei einem anhaltenden Problem danach (auch nach dem Neustart) verschwinden alle Vorlagensymbole (oder anderweitig Shader-verarbeitete Hinter-den-Kulissen-Symbole) von Orten wie Statusleiste/Symbolleiste/Seitenleisten:
Screenshot des Symbolleistenbereichs
Für letzteres funktionieren die üblichen Tricks, einen neuen Benutzer zu erstellen oder eine frühere Version neu zu installieren, am Anfang, aber das Problem taucht später wieder auf.
Da ich FileVault aktiviert habe, kann ich anscheinend auch nicht in den abgesicherten Modus booten, um die Symbol-Caches manuell zu leeren (dasselbe Problem mit 25-30% hängender Ladeleiste wie an anderer Stelle beschrieben).
Das Reinigen aller anderen Caches
Ordner, die ich finden kann, hilft auch nicht.
Nun , das Interessante ist, dass Problem 1 und Problem 3 beide mit einer einfachen Aktion umgangen werden: Manuelles Ausführen der Anwendung von einem Terminal aus (wie in, nicht über dh nicht mit open(1)
als launchd
Elternprozess).
In diesem Fall werden die Symbole perfekt gerendert und es gibt keinen seltsamen OpenCL-Absturz für die Lebensdauer dieser Instanz, obwohl es das Problem für normal gestartete Anwendungen danach nicht behebt.
Als ich das Internet durchstöberte, konnte ich keine Leute mit genau den gleichen Problemen finden, also könnte es einfach sein, dass mein Gerät defekt ist, aber ich poste hier vorher, um zu sehen, ob jemand andere Ideen zur Diagnose des Problems hat ( und einen Google-Einstiegspunkt dafür bereitzustellen).
Ich habe gerade das gleiche Problem erlebt. Ich bemerkte grafische Artefakte auf meinem Desktop, machte mir aber keine Sorgen darüber, bis Transmission nicht gestartet werden konnte. Ein paar Iterationen später habe ich es von iTerm aus neu gestartet (wodurch launchd umgangen wurde), und es hat funktioniert. Ich zuckte mit den Schultern und startete neu – das war jetzt ein Fehler.
So ziemlich alle Apps, die die standardmäßige Windows-Rendering-Engine von MacOS verwenden, konnten nicht gestartet werden, einschließlich Finder. Dies bedeutete, dass ich iTerm oder Terminal auch nicht starten konnte. Chrome, VLC, Sonos und iTunes, die ihren eigenen Fenster-Renderer verwenden, funktionierten. Ich habe die ganze Zeit über einen sehr ähnlichen Stacktrace erhalten, bis auf den letzten Aufruf - nicht strdup, sondern memmove, auch von stdlib. Überraschenderweise funktionierte alles noch, als ich versuchte, mich als ein anderer Benutzer anzumelden.
Ich habe versucht, SMC und PRAM zurückzusetzen, ohne Erfolg. Dann habe ich im abgesicherten Modus neu gestartet, in dem das Rendern funktionierte, und in den normalen Modus zurückgekehrt. Das hat geholfen. Zumindest kann ich jetzt Apps starten - aber der Finder stürzt ab und zu hin und wieder neu.
Kriegshammerkind
Alexander Staubo
Benjamin