Upgrade auf Yosemite: kextd fast 95% CPU

1

Ich habe mich einfach der ständigen Nörgelei des App Stores über ein Upgrade auf Yosemite hingegeben. Abgesehen von einem unglücklichen Chrome gibt es diesen kextdProzess, der ständig mit 95% CPU läuft. Dadurch läuft auch der Lüfter konstant und mein Akku wird entladen.

Dinge, die ich versucht habe, aber nicht funktioniert habe:

  • entfernte alle .plistAkten
  • Als es heute Morgen herauskam, wurde es auf 10.10.1 aktualisiert
  • Apple-Support angerufen, der mich eine Cache-Datei löschen ließ ( /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache/loadedkextmt.plist)

Der Prozess startet nicht direkt beim Booten, sondern möglicherweise 10 Minuten später während des Betriebs.

Wie kann ich diesen kextdProzess zum Schweigen bringen?

ben
quelle
@bmike: der prozess, der in meinem fall überlastet ist kextd, ist nicht kernel_task.
ben
Fair genug - Entschuldigung für die Verwirrung, die ich verursacht habe.
bmike

Antworten:

2

Ich hatte das gleiche Problem und fand diese Meldung wiederholt in den Systemprotokollen: com.apple.kextd [8095]: Kext net.semaja2.kext.insomnia wurde für Clientpfadanforderung nicht gefunden.

Das Schließen von InsomniaX hat das Problem für mich schnell gelöst. Wir werden weitere Nachforschungen anstellen, wie das Problem behoben werden kann, damit InsomniaX ausgeführt wird.

BEARBEITEN: Nach der Deinstallation von InsomniaX und dem Upgrade auf den neuesten Build wurde das Problem behoben.

Anmut
quelle
Ich benutze Schlaflosigkeit, damit das passt! Ich habe vor einiger Zeit ein Downgrade auf Maverick durchgeführt, daher kann ich die Hypothese nicht testen.
ben
omg es war in meinem fall insomniaX!
Łukasz Rysiak
Dies ist auch jemandem in meiner Familie mit InsomniaX passiert. Es tut weh zu glauben, dass die CPU seit wahrscheinlich einem Jahr immer zu 100% gebunden ist
Colin D
1

Dies kextdist ein Prozess, der das Laden und Entladen von Kernel-Erweiterungen handhabt. Wenn das System mit der kextdNutzung kaputt geht, kann dies bedeuten, dass die Kernel-Erweiterung beschädigt ist. Dies könnte mit der Neuindizierung des Systems durch Spotlight nach dem Upgrade zusammenhängen. Tatsächlich würde ich wetten, dass dies der Fall ist, da Spotlight nach jeder Systemaktualisierung immer neu indiziert - und dies scheint ewig zu dauern.

Sie können schnell und einfach feststellen, ob Spotlight in Aktion ist, indem Sie auf das Lupensymbol oben rechts in der Finder-Steuerleiste schauen. Wenn diese Lupe einen kleinen Punkt enthält, der ein- und ausgeht, und wenn Sie dann auf die Spotlight-Lupe klicken, die etwas über die laufende Indizierung aussagt, dann können Sie loslegen.

Eine andere - radikalere - Möglichkeit, mit diesem Problem umzugehen, besteht darin, die Art und Weise, wie der Systemkern auf bestimmte Kerneltexte reagiert, anzupassen, indem Sie das System im Wesentlichen "hacken" IOPlatformPluginFamily.kext, um es aus diesem Kernelprozess zu entfernen. Mehr Details hier, aber hier ist das Lange und Kurze. Wie die Site sagt - und ich werde es noch einmal betonen -, ist dies eine radikale Methode, um das Problem zu lösen, und kann dazu führen, dass das System unbrauchbar wird. Gehen Sie also auf eigenes Risiko vor. Aber ehrlich gesagt, wenn Sie sich ansehen, wie einfach es ist, diese Änderung rückgängig zu machen, würde ich mir nicht allzu viele Sorgen machen ... Sorgen Sie sich nur genug.

Wie auch immer, gehen Sie in das Terminal und geben Sie Folgendes ein:

 system_profiler -detailLevel mini | grep "Model Identifier:"

Warten Sie jetzt ein oder zwei Sekunden. Das System sollte so etwas zurückgeben; Wenn Sie dies auf meinem Mac Mini ausführen und Mac OS X 10.9.5 (Mavericks) ausführen, wird Folgendes zurückgegeben:

Model Identifier: Macmini6,1

Bestätigen Sie als nächstes, dass IOPlatformPluginFamily.kextdas Programm ausgeführt wird, indem Sie Folgendes eingeben:

kextstat | grep IOPlatformPluginFamily

Der Wert, den ich zurückerhalte, ist der folgende:

85    7 0xffffff7f81066000 0xa000     0xa000     com.apple.driver.IOPlatformPluginFamily (5.7.1d6) <10 7 6 5 4 3>

Und wie auf der Seite erklärt, verlinke ich auf :

Innerhalb dieses Kextes befindet sich ein weiterer Kext ACPI_SMC_PlatformPlugin.kext, in dem jedes neuere Macintosh-Modell mit relevanten Anweisungen aufgeführt ist, anhand derer der Kernel festlegt, wie und wann das Steuerelement aufgerufen werden soll .

Geben Sie nun Folgendes ein, um in das Wesentliche des ACPI_SMC_PlatformPlugin.kextInneren einzusteigen IOPlatformPluginFamily.kext:

cd /System/Library/Extensions/IOPlatformPluginFamily.kext/
cd Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/
cd Contents/Resources/

Ja, das sind viele cdElemente, bei denen es sich wahrscheinlich um eine einzelne Zeile handeln könnte, aber sie zeigen den gesamten Vorgang, den Sie ausführen möchten. Oder Sie können dies einfach cdals Einzeiler tun :

cd /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources/

Führen Sie nun den folgenden lsBefehl aus, um die darin enthaltenen Elemente zu zählen:

ls | wc -l

Auf meinem System erhalte ich Folgendes:

50

Das heißt, 50 verschiedene Systeme haben Profile in ACPI_SMC_PlatformPlugin.kext. Sie können auch einfach so laufen ls -la, um die gesamte Liste anzuzeigen, wenn Sie dies wünschen. Aber jetzt finden Sie Ihre, indem Sie einen lsBefehl wie diesen ausführen :

ls MacBookPro*

Daraufhin werden alle MacBook Pro-Profile aufgelistet. Nehmen wir also an, Ihr MacBook Pro hat die Systemkennung:

MacBookPro5,5

Dann wäre das verbundene Profil in ACPI_SMC_PlatformPlugin.kext:

MacBookPro5_5.plist

Jetzt wollen wir dieses Profil herausschieben, ACPI_SMC_PlatformPlugin.kextdamit das System nicht darauf reagiert. Sie können dies folgendermaßen tun sudo:

sudo mv MacBookPro5_5.plist ~/

Sie werden nach Ihrem Passwort gefragt. Nachdem Sie eingegeben haben, wird die Datei MacBookPro5_5.plistin Ihr Home-Verzeichnis (aka:) verschoben, von ~/dem sie effektiv neutralisiert wird ACPI_SMC_PlatformPlugin.kext.

Starten Sie jetzt einfach Ihren Computer neu und sehen Sie, was passiert. Wahrscheinlich klärt es das Problem der kextdCPU-Auslastung. Wenn nicht, ist etwas anderes passiert.

Wenn Sie sich durch nichts von dem, was wir gerade getan haben, wohl fühlen und diese Änderung rückgängig machen möchten, verschieben Sie die MacBookPro5_5.plistDatei einfach wie folgt zurück:

sudo mv ~/MacBookPro5_5.plist /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources/

Und starten Sie Ihre Maschine neu. Das Profil ist nun wieder aktiv ACPI_SMC_PlatformPlugin.kextund Sie kehren zu Ihrem ursprünglichen Zustand zurück.

JakeGould
quelle
Hallo Jake. Spotlight scheint nicht gemäß Ihrer Beschreibung zu indizieren mdsund mds_storesverwendet kaum CPU. Ich habe Ihren Hack tatsächlich früher ausprobiert und konnte meine Mac-Version nicht in der Liste finden. Meine Version ist MacBookAir6,2und die Liste endet bei MacBookAir4_2. Wenn ich es tue kextstat | grep IOPlatformPluginFamily, kehrt es zurück 94 4 0xffffff7f8136e000 0xa000 0xa000 com.apple.driver.IOPlatformPluginFamily (5.8.0d49) <11 7 6 5 4 3>.
ben
Da ich das plistfür meinen Mac nicht finden konnte, habe ich zusätzliche Nachforschungen angestellt und den folgenden Beitrag gefunden: mactalk.com.au/11/116990-kernel_task-mavericks.html#post1207490 . Ich habe alle Listen in einen anderen Ordner verschoben, bin aber kextdimmer noch auf der Suche nach mehr Energie.
ben
@ben Ich glaube nicht, dass es darauf .plistankommt, wenn dort keine Konfiguration aufgeführt ist. Stinkt. Leider sind Probleme wie diese der Grund, warum ich mich momentan an Mac OS X 10.9.5 halte. Wenn ich noch etwas entdecke, werde ich posten. Wenn Sie diese Antwort hilfreich fanden, denken Sie bitte daran, sie zu bewerten. Viel Glück!
JakeGould
0

Ich stelle fest, dass es keine echte Lösung dafür gibt und OS X möglicherweise nicht richtig ausgeführt wird, wenn Sie es beenden.

Aber wenn Sie suchen kexts, sollten Sie es finden können. Klicken Sie darauf und drücken Sie dann die Taste unter der Schaltfläche zum Schließen im Fenster.

Bildbeschreibung hier eingeben

Kaptaindogfish
quelle
Es kommt gerade wieder hoch, wenn Sie es schließen ...
ben