4 votes

Diverses corruptions/erreurs/affichages incorrects liés aux graphiques avec Mountain Lion

Depuis la mise à jour de novembre 2012 de Moutain Lion, je continue à avoir ces problèmes graphiques bizarres.

La liste des malheurs :

OpenCL se bloque au démarrage de l'application

Parfois, après que l'ordinateur portable se réveille d'une longue période de sommeil, lorsqu'on essaie de lancer des applications, elles se plantent toutes avec le type de trace de pile suivant, indiquant un problème dans CoreImage/OpenCL :

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

(Rapport d'accident coupé pour des raisons de commodité)

Corruption graphique

J'expérimente les mêmes artefacts graphiques (bruit blanc) de corruption superposés sur différents éléments de l'interface utilisateur comme les fenêtres ouvertes, les icônes du Finder dans la liste Cmd+Tab, l'image de fond,... comme ceci : Capture d'écran

Dans le cas de Windows corrompu, toute action qui provoque un repeint résout le problème mais les autres (icône du Finder, image d'arrière-plan) restent (probablement parce qu'ils ne se repeignent jamais) jusqu'à ce que l'ordinateur soit redémarré.

Icônes brisées

Dans ce qui est un problème persistant par la suite (même après le redémarrage), toutes les icônes de modèles (ou autres icônes traitées par shader en coulisse) disparaissent des endroits comme la barre d'état/barre d'outils/panneaux latéraux :

Capture d'écran de la zone de la barre d'outils

Pour cette dernière, les astuces habituelles consistant à créer un nouvel utilisateur ou à réinstaller une version antérieure fonctionnent au début, mais le problème refait surface par la suite.

Comme j'ai activé FileVault, je n'arrive pas non plus à démarrer en mode sans échec pour vider manuellement les caches des icônes (même problème de barre de chargement bloquée à 25-30 % que celui décrit ailleurs).

Le nettoyage de tout autre Caches Le dossier que je peux trouver n'aide pas non plus.

Maintenant Ce qui est intéressant, c'est que le problème 1 et le problème 3 sont tous deux contournés par une action simple : lancer l'application manuellement à partir d'un terminal (c'est-à-dire sans passer par l'interface de l'application). open(1) c'est-à-dire pas avec launchd comme processus parent).

Dans ce cas, le rendu des icônes est parfait et il n'y a pas d'incident OpenCL bizarre pendant la durée de vie de cette instance, bien que le problème ne soit pas résolu pour les applications lancées normalement par la suite.

En parcourant l'Internet, je n'ai pas trouvé de personnes ayant exactement les mêmes problèmes. Il se peut donc que ma machine soit simplement défectueuse, mais je poste ici au préalable pour voir si quelqu'un a d'autres idées sur la façon de diagnostiquer le problème (et pour fournir un point d'entrée sur Google).

1voto

user58328 Points 11

Je viens de rencontrer le même problème. J'ai remarqué des artefacts graphiques sur mon bureau, mais je ne m'en suis pas inquiété jusqu'à ce que Transmission ne démarre plus. Quelques itérations plus tard, je l'ai redémarré depuis iTerm (en contournant launchd), et ça a marché. J'ai haussé les épaules et redémarré - c'était une erreur.

Pratiquement toutes les applications qui utilisent le moteur de rendu MacOS Windows par défaut ne pouvaient pas démarrer, y compris le Finder. Cela signifie que je ne pouvais pas non plus lancer iTerm ou Terminal. Les applications comme Chrome, VLC, Sonos et iTunes, qui utilisent leur propre moteur de rendu de fenêtre, ont fonctionné. J'ai obtenu une trace de pile très similaire tout le temps jusqu'au dernier appel - pas strdup, mais memmove, également de stdlib. De manière assez surprenante, lorsque j'ai essayé de me connecter en tant qu'autre utilisateur, tout fonctionnait encore.

J'ai essayé de réinitialiser le SMC et la PRAM, sans succès. Puis j'ai redémarré en mode sans échec, dans lequel l'équarrissage a fonctionné, et j'ai redémarré en mode normal. Cela m'a aidé. Au moins, je peux maintenant lancer des applications - mais le Finder se bloque et se relance de temps en temps.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X