web-dev-qa-db-fra.com

Comment puis-je savoir ce que fait polkitd avec autant de ressources de mon système?

J'utilise la version 13.04 sur un Acer c7 (l'installation de chrubuntu 12.04, puis deux mises à niveau du système) et maintenant, chaque fois que j'utilise mon ordinateur pendant plus de quelques minutes, les ralentissements se produisent sous les noms polkitd, dbus-daemon, console-kit-daemon et networkmanager. mâche toutes mes ressources système. J'ai essayé de googler ce problème, mais il ne semble pas être très répandu, ou il me manque quelque chose.

J'ai essayé de consulter les journaux de mon système, mais rien ne semble particulièrement inhabituel. J'ai aussi essayé de regarder le moniteur dbus. Je ne suis pas tout à fait sûr de ce que je recherche là-bas, mais il ne semble pas y avoir de flux d'activité constant. Existe-t-il un autre moyen de voir quels processus polkitd et/ou autres sont en cours?

J'apprécierais également toute idée sur la façon de résoudre ce problème.

Merci!

4
knute

J'ai eu le même problème avec une utilisation intensive du processeur après la fermeture du couvercle de mon Chromebook Acer C710 exécutant chrUbuntu 13.04. Sur mon système, dbus-monitor --system affiche un essaim de messages NameOwnerChanged, environ 30 par seconde. Ceux-ci réveillent à plusieurs reprises tout le monde sur le dbus, en particulier polkitd, mais également le gestionnaire de réseau, nm-applet, etc.

Mais DBus ne le fait que parce que acpid continue à exécuter le script /etc/acpid/lid.sh à plusieurs reprises. Cela est dû à une ligne d'interruption ACPI trop active, exactement le même problème que pour cette question:

Pourquoi l'utilisation de cpu de kworker est-elle si élevée?

Pour mon système, le problème était dans/sys/firmware/acpi/interrupts/gpe1F, et l’échange de "désactiver" pour cette interruption a immédiatement arrêté l’utilisation du processeur. Il en résulte un système qui ne fait absolument rien lorsque le couvercle est fermé, mais je peux toujours "suspendre mon action" à partir de la console et ouvrir le couvercle ou appuyer sur un clavier pour que le réveil se fasse normalement.

Et plus important encore, l'utilisation du processeur est presque nulle!

6
Orion Lawlor

Extrait de: https://askubuntu.com/a/233947

Je ne peux pas commenter une autre réponse, mais la réponse la mieux notée indique d'écraser "désactivé" dans une interruption afin de désactiver une ligne ACPI trop active. Pour trouver quelle interruption, lancez ceci:

grep . -r /sys/firmware/acpi/interrupts/

Ensuite, cherchez la réponse avec le nombre élevé. Echo désactiver dans ce fichier et vous devriez être prêt à aller.

Le lien source en haut contient des informations complètes sur la façon de le rendre persistant après une suspension et un redémarrage, mais cliquez sur sa réponse, je ne mérite aucun crédit pour cela.

3
surfrock66

J'ai eu le même symptôme, dans mon cas c'était Nepomuk se noyant dbus dans un flot d'activité. J'imagine qu'il existe un million de façons de créer ce même symptôme, cependant.

dbus-monitor était un excellent endroit pour commencer. Avez-vous essayé dbus-monitor --system ainsi que dbus-monitor --session?

Avec strace, vous pouvez espionner les autres consommateurs très gourmands en ressources processeur, voir ce qu'ils ouvrent/ferme/envoient.

Un moyen facile d'ouvrir strace pour un processus par son nom:

Sudo strace -p$(ps -ef |grep console-kit-daemon |grep -v grep |awk '{print $2}') 
3