5 votes

TCC fait geler mon Mac pendant 5 à 20 secondes de façon sporadique tout au long de la journée. Comment puis-je le réparer ?

Tout au long de la journée, lorsque je travaille sur mon iMac 2017 de 27 pouces fonctionnant sous MacOS 10.14.6, le système entier se fige pendant 5 à 20 secondes. Il ne semble pas y avoir de rime ou de raison à cela, mais cela se produit le plus souvent lors de l'utilisation d'applications qui utilisent les permissions d'accessibilité, telles que xGestures ou BetterTouchTool. J'ai ensuite confirmé (comme documenté dans cette question ) que le problème est TCC ; le processus WindowServer du système est en train d'effectuer une sorte de vérification pour s'assurer qu'un processus a les permissions dont il a besoin, et il se bloque pendant ce temps, provoquant le gel de tout le système jusqu'à ce qu'il termine. Pendant ce temps, le curseur se déplace toujours, mais je ne peux pas cliquer sur quoi que ce soit à l'écran.

Est-ce que quelqu'un a une idée de ce qui ne va pas ici, ou comment je peux le réparer ?

Jusqu'à présent, j'ai essayé de réinitialiser la base de données TCC en utilisant la commande tccutil reset All Et si cela a semblé rendre mon ordinateur un peu plus rapide au début, dès que j'ai accordé à toutes les applications que j'utilise les autorisations dont elles ont besoin, les blocages sont revenus. J'ai également réinstallé MacOS à partir de l'environnement de récupération, mais cela n'a pas résolu le problème non plus.

J'ai un MacBook Pro 2019 exécutant la même version de Mojave avec une grande partie des mêmes logiciels installés, et il n'a pas ce problème, pour ce que cela vaut.

J'ai également lu cette question mais il s'agit d'un problème différent lié à TCC, et l'utilisation d'un profil MDM ne sera pas utile puisque son but est d'ajouter des applications à la base de données TCC sans nécessiter l'intervention de l'utilisateur. Cette question ne concerne pas les retards de l'ordre de quelques secondes introduits par TCC lors du lancement d'applications, mais un bogue spectaculaire de TCC qui rend littéralement l'ensemble du Mac insensible pendant plusieurs secondes.

Mise à jour 17/06/2021 : l'un des déclencheurs de ce bug semble être les applications dont la signature est invalide ou manquante. Je viens de réussir à déclencher systématiquement ce bug dans une application avec une signature invalide où l'un de ses processus enfants essayait d'envoyer des événements Apple. Je l'ai ensuite corrigé en démissionnant l'app avec mon certificat "Developer ID Application". Je ne sais pas à ce stade si ce type de certificat spécifique est nécessaire.

3voto

Bri Bri Points 1991

J'ai découvert que le problème vient des applications auxquelles il manque une signature ou dont la signature est invalide.

Dans ces cas, chaque fois qu'ils essaient d'accéder à quelque chose qui nécessite de passer par TCC, le plus souvent en utilisant AppleScript ou des événements Apple, l'ensemble du système se fige pendant que TCC travaille... algo . Je pense qu'il recalcule la signature de l'application en question, et si le paquet de l'application est assez volumineux, comme c'est le cas pour certaines des applications non signées avec lesquelles je travaillais, cela peut prendre beaucoup de temps. J'ai découvert que ce problème est reproductible sur tous mes systèmes MacOS 10.14.

Je ne comprends pas pourquoi le système doit être gelé pendant ce temps. Cela me semble être une très, très mauvaise conception. Essentiellement, l'ensemble du serveur de fenêtres se bloque en attendant que le TCC termine son travail. (Voir ma question précédente pour savoir comment j'ai découvert que c'était le cas).

La solution, qui est plutôt une solution de contournement, consiste à démissionner de l'application incriminée. J'ai constaté que l'utilisation d'une signature ad-hoc (c'est à dire codesign -f -s - /path/to/app.app ) semble fonctionner.

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