Share via


Fehlerprüfung 0xA0: INTERNAL_POWER_ERROR

Die INTERNAL_POWER_ERROR-Fehlerüberprüfung hat den Wert 0x000000A0. Diese Fehlerüberprüfung zeigt an, dass beim Power Policy Manager ein schwerwiegender Fehler aufgetreten ist.

Wichtig

Dieser Artikel richtet sich an Programmierer. Wenn Sie ein Kunde sind, der während der Verwendung Ihres Computers einen Bluescreen-Fehlercode erhalten hat, finden Sie weitere Informationen unter Behandeln von Bluescreenfehlern.

INTERNAL_POWER_ERROR Parameter

Parameter 1 gibt den Typ des Verstoßes an. Die Bedeutung der anderen Parameter hängt vom Wert von Parameter 1 ab.

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Ursache

0x1

1: Ein Gerät hat die maximale Anzahl der Verweisanzahlen überlauft.

2, 3 oder 4: Zu viele Einschaltenergie-IRPs wurden in die Warteschlange eingereiht.

5: Die Energie-IRP wurde an ein Geräteobjekt auf passiver Ebene gesendet.

6: Das System konnte keine erforderliche Energie-IRP zuordnen.

Wenn Parameter 2 den Wert 1 aufweist, ist die maximale Anzahl zulässiger Verweise.

Wenn Parameter 2 den Wert 2, 3 oder 4 aufweist, ist die maximale Anzahl ausstehender IRPs zulässig.

Wenn Parameter 2 den Wert 6 aufweist, ist das Zielgerätobjekt.

Wenn Parameter 2 den Wert 6 aufweist, gibt an, ob es sich um eine Systemleistungs- (0x0) oder geräte (0x1) handelt.

Fehler bei der Behandlung des E/A-Anforderungspakets (Power I/O Request Packet, IRP).

0x2

Reserviert

Reserviert

Reserviert

Beim Versuch, ein Energieereignis zu verarbeiten, ist ein interner Fehler aufgetreten. Weitere Informationen finden Sie unter Debugfehlerprüfung 0xA0, wenn Parameter 1 gleich 0x2.

0x3

Die erwartete Prüfsumme

Die tatsächliche Prüfsumme

Die Zeilennummer des Fehlers

Die Prüfsumme für eine Ruhezustandskontextseite entspricht nicht der erwarteten Prüfsumme.

0x4

Die erwartete Prüfsumme

Die tatsächliche Prüfsumme

Die Zeilennummer des Fehlers

Die Prüfsumme für eine Seite, die in die Ruhezustandsdatei geschrieben werden soll, entspricht nicht der erwarteten Prüfsumme.

0x5

Reserviert

Reserviert

Reserviert

Ein unbekannter Herunterfahrcode wurde an den Systemabschaltungshandler gesendet.

0x7

Reserviert

Reserviert

Reserviert

Es ist eine nicht behandelte Ausnahme aufgetreten. Weitere Informationen finden Sie unter Debuggen der Fehlerüberprüfung 0xA0, wenn Parameter 1 gleich 0x7.

0x8

Dieser Parameter ist immer auf 0x100 festgelegt.

Das Geräteobjekt

POWER_CHANNEL_SUMMARY

Beim Verarbeiten eines Systemstromereignisses ist ein schwerwiegender Fehler aufgetreten.

0x9

Statuscode

Spiegelungsphase

Reserviert

Beim Vorbereiten der Ruhezustandsdatei ist ein schwerwiegender Fehler aufgetreten.

0xA

0: Sofort nach dem Fortsetzen wurde eine Fehlerprüfung angefordert.

1: Während des Fortsetzens wurde eine Fehlerüberprüfung angefordert, nachdem alle nicht ausgelagerten Geräte eingeschaltet wurden.

2: Während des Fortsetzens wurde eine Fehlerüberprüfung angefordert, nachdem alle Geräte eingeschaltet waren.

Reserviert

Reserviert

Beim Aufwachen zu Debugzwecken wurde eine Fehlerüberprüfung angefordert.

0xB

Größe der Ruhezustandsdatei.

Status des Ruhezustands, bevor der Speicherplatz knapp wird

0: HIBERFILE_PROGRESS_FREE_MAP

1: HIBERFILE_PROGRESS_RESUME_CONTEXT

2: HIBERFILE_PROGRESS_PROCESSOR_STATE

3: HIBERFILE_PROGRESS_SECURE_RANGES

4: HIBERFILE_PROGRESS_MEMORY_RANGES

5: HIBERFILE_PROGRESS_TABLE_PAGES

6: HIBERFILE_PROGRESS_MEMORY_IMAGE

Wenn Absatz 2 4 ist, Größe der verbleibenden Speicherbereiche.

Die Ruhezustandsdatei ist zu klein.

0xC

Statuscode

Speicherabbildstapelkontext

Reserviert

Der Speicherabbildstapel konnte nicht initialisiert werden.

0xD

Der Systemleistungsstatus im Übergang.

Der Ruhezustandsprüfpunkt, der zuletzt erreicht wurde.

Ein Zeiger auf die POP_POWER_ACTION-Struktur.

Das System konnte einen Energieübergang nicht rechtzeitig abschließen.

0xF

Der Systemleistungsstatus im Übergang.

Der Ruhezustandsprüfpunkt, der zuletzt erreicht wurde.

Ein Zeiger auf den Thread, der die Anforderung gerade verarbeitet.

Das System konnte einen Energieübergang nicht rechtzeitig abschließen.

0xF0

Der Systemleistungsstatus, der sich im Übergang befindet.

Der Schlafpunkt wurde zuletzt erreicht.

Ein Zeiger auf den Thread, der derzeit die Anforderung verarbeitet.

Das System konnte einen Energieübergang nicht rechtzeitig abschließen(anhalten).

0xF1

Der Systemleistungsstatus, der sich im Übergang befindet.

Der Schlafpunkt wurde zuletzt erreicht.

Ein Zeiger auf den Thread, der derzeit die Anforderung verarbeitet.

Das System konnte einen Stromübergang nicht rechtzeitig abschließen(fortsetzen).

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Ursache

0x101

Reserviert

Ausnahmezeiger.

Reserviert

Beim Verarbeiten eines Systemstromereignisses ist eine nicht behandelte Ausnahme aufgetreten. Weitere Informationen finden Sie unter Debuggen der Fehlerüberprüfung 0xA0, wenn Parameter 1 0x101 entspricht.

0x102

Reserviert

DUMP_INITIALIZATION_CONTEXT

POP_HIBER_CONTEXT

Die Größe des Ruhezustandspuffers ist nicht seitenbündig.

0x103

Reserviert

POP_HIBER_CONTEXT

Reserviert

Alle Arbeitsseiten konnten während des Ruhezustands nicht berücksichtigt werden.

0x104

Reserviert

POP_HIBER_CONTEXT

Reserviert

Es wurde versucht, den internen Ruhezustandsspeicher zuzuordnen, während die internen Speicherstrukturen gesperrt waren.

0x105

Reserviert

POP_HIBER_CONTEXT

Reserviert

Es wurde versucht, den internen Ruhezustandsspeicher einem nicht unterstützten Speichertypflag zuzuordnen.

0x106

Reserviert

Die Speicherdeskriptorliste (MDL)

Reserviert

Während des Ruhezustands wurde eine Speicherdeskriptorliste erstellt, die nicht ausgelagerten Arbeitsspeicher beschreibt.

0x107

Reserviert

POP_HIBER_CONTEXT

PO_MEMORY_RANGE_ARRAY

In den internen Ruhezustandsdatenstrukturen ist ein Datenkonflikt aufgetreten.

0x108

Reserviert

POP_HIBER_CONTEXT

Reserviert

Das Datenträgersubsystem konnte einen Teil der Ruhezustandsdatei nicht ordnungsgemäß schreiben.

0x109

Reserviert

Erwartete Prüfsumme

Tatsächliche Prüfsumme

Die Prüfsumme für die Prozessorstatusdaten entspricht nicht der erwarteten Prüfsumme.

0x10A

Reserviert

POP_HIBER_CONTEXT

NTSTATUS-Fehlercode

Das Datenträgersubsystem konnte einen Teil der Ruhezustandsdatei nicht ordnungsgemäß lesen oder schreiben.

0x10B

Reserviert

Aktueller Ruhezustand

Reserviert

Es wurde versucht, Seiten für die Startphase des Ruhezustands zum falschen Zeitpunkt mit der PoSetHiberRange-API zu markieren.

0x10C

Reserviert

Für die API bereitgestellte Flags

Zu markierende Länge

Die PoSetHiberRange-API wurde mit ungültigen Parametern aufgerufen.

0x10D

Reserviert

POP_HIBER_CONTEXT

NTSTATUS-Fehlercode

Fehler beim Bereitstellen von Daten für die Fortsetzung des sicheren Kernelsubsystems.

0x10E

Reserviert

Falsche Prüfsumme

Prüfsumme des vorherigen Datenträgerlesevorgangs

Das Datenträgersubsystem hat beim Lesen aus der Ruhezustandsdatei beschädigte Daten zurückgegeben.

0x10F

Der aktuelle Prüfpunkt für den Systemmodus.

Der Typ des internen Fehlers.

0 : Ein Prüfpunkt wurde geschrieben, während das Paging deaktiviert wurde, aber bevor Po Interrupts auf allen Prozessoren deaktiviert hat.

1 : Eine andere CPU als 0 hat versucht, während der Unterbrechungsphase des Systemmodus einen Prüfpunkt zu schreiben.

2: Ein weiterer Code im System führt einen EFI-Laufzeitdienst aus.

Reserviert

Beim Überprüfen des Ruhezustands des Systems ist ein interner Fehler aufgetreten.

0x110

Reserviert

Reserviert

Reserviert

Das System konnte den Ruhezustand des Systems nicht deaktivieren, muss dies jedoch tun, um die Datenintegrität sicherzustellen.

0x111

Reserviert

Reserviert

Reserviert

Ein Treiber hat angegeben, dass der Benutzer vorhanden ist, und der Benutzer hat eine Debugoption aktiviert, um die Anrufliste zu erfassen.

0x200

Reserviert

DEVICE_OBJECT

DEVICE_OBJECT_POWER_EXTENSION

Ein unbekannter Gerätetyp wird auf einen Leerlaufzustand überprüft.

0x300

Reserviert

DEVICE_OBJECT

IRP

Ein unbekannter status wurde von einem IRP mit Akkuleistung zurückgegeben.

0x301

Reserviert

DEVICE_OBJECT

IRP

Der Akku ist in einen unbekannten Zustand versetzt.

0x400

Reserviert

IO_STACK_LOCATION

DEVICE_OBJECT

Ein Gerät hat seine maximale Anzahl von Verweisanzahlen überlaufen.

0x401

Reserviert

Ausstehende IRP-Liste

DEVICE_OBJECT

Zu viele Einschaltleistungs-IRPs wurden in die Warteschlange gestellt.

0x402

Reserviert

Ausstehende IRP-Liste

DEVICE_OBJECT

Zu viele Einschaltleistungs-IRPs wurden in die Warteschlange gestellt.

0x403

Reserviert

Ausstehende IRP-Liste

DEVICE_OBJECT

Zu viele Einschaltleistungs-IRPs wurden in die Warteschlange gestellt.

0x404

Reserviert

IO_STACK_LOCATION

DEVICE_OBJECT

Ein Energie-IRP wurde an ein Geräteobjekt auf passiver Ebene gesendet.

0x500

Reserviert

IRP

DEVICE_OBJECT

Ein unbekannter status wurde von einem Wärmeleistungs-IRP zurückgegeben.

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Ursache

0x600

DEVICE_OBJECT PDO

Reserviert

Reserviert

Ein Treiber hat versucht, eine doppelte Registrierung beim Power Runtime Framework zu erstellen.

0x601

POP_FX_DEVICE Gerät

PEP_DEVICE_REGISTER PEP

Reserviert

Die Geräteregistrierung wurde nicht akzeptiert.

0x602

DEVICE_NODE Geräteknoten

Anzahl des Ruhezustands

Reserviert

Die Anzahl des Ruhezustands des Geräteknotens stimmt nicht mit der Aktivierungsanzahl überein.

0x603

POP_FX_PLUGIN

Arbeitsanforderungstyp

Reserviert

Ein Power Engine-Plug-In hat eine ungültige Arbeitsanforderung gestellt.

0x605

Benachrichtigungs-ID

POP_FX_PLUGIN

Reserviert

Ein Power Engine-Plug-In konnte eine obligatorische Gerätestromverwaltungsbenachrichtigung nicht akzeptieren.

0x606

POP_FX_COMPONENT

POP_FX_COMPONENT_FLAGS

Neue Bedingung für die Komponente

Ein Power Engine-Plug-In hat versucht, eine kritische Systemressourcenkomponente in eine Aktive (oder Leerlauf)-Bedingung zu überstellen, wenn die Ressource bereits aktiv (oder im Leerlauf) war.

0x607

POP_FX_DEVICE

NTSTATUS

Reserviert

Beim Erwerb einer Geräteentfernungssperre für das Runtime-Energieverwaltungsframework ist ein Fehler aufgetreten, wenn dies erforderlich war, um erfolgreich zu sein.

0x608

POP_FX_COMPONENT

POP_FX_COMPONENT_FLAGS

Reserviert

Ein Treiber hat versucht, eine Komponente ohne vorherige aktive Anforderung in den Leerlauf zu überführen.

0x609

POP_FX_PLUGIN

POP_FX_DEVICE

Doppelter Anforderungstyp

0: DevicePowerRequired

1: DevicePowerNotRequired

Ein Power Engine-Plug-In hat entweder die erforderliche Geräteleistung oder die Geräteleistung ohne eine dazwischenliegende Anforderung des entgegengesetzten Typs angefordert.

0x610

POP_FX_PLUGIN

POP_FX_DEVICE

Reserviert

Ein Power Engine-Plug-In hat die Geräteleistung angefordert, die nicht erforderlich ist, während eine vorherige Anforderung für die Erforderliche Geräteleistung aussteht.

0x611

POP_FX_PLUGIN

POP_FX_DEVICE

Ungültiger Komponentenindex

Ein Power Engine-Plug-In hat einen Vorgang für eine ungültige Komponente angefordert.

0x612

POP_FX_PLUGIN PowerEnginePlugin

Reserviert

Reserviert

Ein Power Engine-Plug-In hat zusätzliche Arbeiten im Kontext einer Gerätebenachrichtigung angefordert, bei der kein Puffer von PO für die Anforderung bereitgestellt wurde.

0x613

POP_FX_DEVICE

Komponentenindex

Vorgang

0: Vollständige Geräteleistung nicht erforderlich

1: Melden eines eingeschalteten Geräts

2: Vollständige Leerlaufbedingung

Ein Treiber hat versucht, eine Anforderung abzuschließen, wenn keine solche ausstehende Anforderung aussteht.

0x614

POP_FX_DEVICE

Komponentenindex

Unzulässiger Parameter

0: PO_FX_FLAG_BLOCKING bei IRQL >= DISPATCH_LEVEL

1: PO_FX_FLAG_BLOCKING und PO_FX_FLAG_ASYNC_ONLY angegeben

2: Ungültiger Komponentenindex

Ein Treiber hat einen Aktiven/Leerlauf für eine Komponente mit einem ungültigen Parameter angefordert.

0x615

POP_FX_PLUGIN

POP_FX_COMPONENT

Illegale Aktion

0: Komponente nicht im Leerlaufzustand 0

1:Komponente ist bereits aktiv

2: Keine ausstehende Aktivierungsanforderung

3: Übergang zu ausstehendem Leerlaufzustand

Ein Power Engine-Plug-In hat illegal den Abschluss einer Komponentenaktivierung angegeben.

0x616

POP_FX_PLUGIN

POP_FX_COMPONENT

Illegale Aktion

0: Ungültiger Leerlaufzustand

1: Die Komponente befindet sich bereits im angeforderten Zustand.

2: Anforderung eines Leerlaufzustands ungleich Null ohne Durchlaufen des Leerlaufzustands 0

Ein Power Engine-Plug-In hat illegal einen Leerlaufzustandsübergang der Komponente angefordert.

0x617

POP_FX_PLUGIN PowerEnginePlugin

UNICODE_STRING DeviceId

PEP_DEVICE_REGISTER PEP-Registrierung

Ein Power Engine-Plug-In hat beim Verarbeiten einer Geräteregistrierungsbenachrichtigung einen ungültigen Akzeptanztyp zurückgegeben.

0x618

POP_FX_WORK_ORDER_WATCHDOG_INFO WorkOrder

Reserviert

Reserviert

Ein Laufzeit-Power Worker-Thread wurde zu lange blockiert.

0x619

POP_FX_DEVICE Gerät

Komponentenindex

NULL oder DEVICE_NODE des eigentlich verantwortlichen untergeordneten Geräts

Ein Gerät hat zu lange den Eintritt in den tiefsten Runtime-Leerlaufzustand blockiert.

0x61A

POP_FX_PLUGIN Power Engine-Plug-In

POP_FX_DEVICE Gerät

Reserviert

Ein Power Engine-Plug-In hat ungültige Informationen zu den Leistungsstatusinformationen einer Komponente bereitgestellt.

0x61B

POP_FX_DEVICE Gerät

Komponentenindex

Reserviert

Ein Treiber hat eine Perf-Statusanforderung ausgestellt, bevor er sich für Geräteperf-Zustände registriert.

0x61C

POP_FX_DEVICE Gerät

Komponentenindex

Ungültiger Parameter

WERTE:

0 : PerfChangesCount überschreitet die Anzahl der für diese Komponente registrierten Perf-Zustandssätze.

Ein Treiber hat eine Perf-Statusanforderung mit ungültigen Parametern ausgestellt.

0x61D

POP_FX_DEVICE Gerät

Komponentenindex

Ausstehender Anforderungskontext

Ein Treiber hat eine Anforderung für den Status "Perf" ausgestellt, während eine vorherige Anforderung aussteht.

0x61E

Reserviert

Reserviert

Reserviert

Ein Power Engine-Plug-In hat versucht, einen kritischen Übergang auf einem Debuggergerät durchzuführen, während automatische Übergänge aktiviert sind.

0x61F

POP_FX_DEVICE Gerät

Index des koordinierten Leerlaufzustands

Reserviert

Ein Power Engine-Plug-In hat versucht, automatische Debuggerübergänge für einen koordinierten Leerlaufzustand zu aktivieren, der kein plattformweiter Zustand ist.

0x620

POP_FX_DEVICE Gerät

Index des koordinierten Leerlaufzustands

Reserviert

Ein Power Engine-Plug-In hat versucht, eine D-Zustandsabhängigkeit für einen koordinierten Leerlaufzustand zu registrieren, der kein plattformweiter Zustand ist.

0x621

POP_FX_DEVICE Gerät

Komponentenindex

Index des koordinierten Leerlaufzustands

Ein Power Engine-Plug-In hat versucht, eine F-Zustandsabhängigkeit für einen koordinierten Leerlaufzustand zu registrieren, der kein plattformweiter Zustand ist.

0x622

Die übergeordnete POP_FX_COMPONENT

Das untergeordnete POP_FX_COMPONENT

Reserviert

Ein Treiber hat versucht, die Registrierung bei PoFx mit ausstehenden Abhängigen aufzuheben.

0x666

PPOP_PEP_ACTIVITY

Neuer Aktivitätstyp

0: DevicePowerOn

1: ComponentIdleStateChange

2: ComponentActivating

3: ComponentActive

4: DevicePowerOff

5: DeviceSuspend

Konfliktierender Aktivitätstyp

0: DevicePowerOn

1: ComponentIdleStateChange

2: ComponentActivating

3: ComponentActive

4: DevicePowerOff

5: DeviceSuspend

Das Standardmäßige Power Engine-Plug-In hat versucht, eine neue Aktivität auszulösen, die mit einer anderen Aktivität in Konflikt kommt.

0x667

POP_PEP_ACTIVITY

Aktivitätstyp

0: DevicePowerOn

1: ComponentIdleStateChange

2: ComponentActivating

3: ComponentActive

4: DevicePowerOff

5: DeviceSuspend

POP_PEP_ACTIVITY_STATUS

Das Standard-Power Engine-Plug-In hat versucht, eine Aktivität abzuschließen, die nicht ausgeführt wird.

0x668

PPPM_COORDINATED_STATE, deren Referenzanzahl aktualisiert wird.

Der ungültige Wert für die Verweisanzahl, der von dieser Funktion beobachtet wird.

Die Maske der Plattform-Leerlaufzustände, die aktualisiert werden.

Das Standard-Power Engine-Plug-In hat versucht, eine Leerlaufzustandseinschränkung der Plattform zu entfernen, die zuvor nicht eingeschränkt war.

0x669

PPPM_COORDINATED_STATE, deren Referenzanzahl aktualisiert wird.

Der ungültige Wert für die Verweisanzahl, der von dieser Funktion beobachtet wird.

Reserviert

Beim Standard-Power Engine-Plug-In ist beim Versuch, PoFx exklusiv über die Verfügbarkeit eines Plattform-Leerlaufzustands zu informieren, ein interner Konsistenzfehler aufgetreten.

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Ursache

0x680

NTSTATUS-Fehlercode.

Reserviert

Reserviert

Das Laufzeit-Powerframework konnte eine erforderliche ACPI-Tabelle nicht analysieren, da sie entweder fehlte oder fehlerhaft war. Dies ist in der Regel auf einen BIOS-Fehler zurückzuführen.

0x700

PEPHANDLE

PEP_PPM_IDLE_SELECT

Reserviert

Ein Power Engine-Plug-In hat ungültige Prozessor-Leerlaufabhängigkeiten angegeben.

0x701

Der Index des ausgewählten Leerlaufzustands des abgehängten Prozessors

Die PRCB-Adresse des abgehängten Prozessors

Der Index des abgehängten Prozessors

Ein Prozessor konnte keinen Leerlaufübergang innerhalb des zugewiesenen Intervalls abschließen. Dies gibt an, dass der angegebene Prozessor aufgehängt ist.

0x702

Der Index des ausgewählten Leerlaufzustands des Prozessors

Der Synchronisierungsstatus des Prozessors im Leerlauf

Die PRCB-Adresse des abgehängten Prozessors

Ein Prozessor ist aus einem nicht unterbrechbaren Zustand aufgewacht, ohne dass das Betriebssystem eine explizite Aktivierung über pep initiiert hat (unter Verwendung der erforderlichen PPM-Leerlaufsynchronisierung).

0x703

PEPHANDLE

PEP_PPM_QUERY_PLATFORM_STATE

Reserviert

Ein Power Engine-Plug-In hat während einer Abfrageplattformstatusbenachrichtigung ungültige Prozessor-Leerlaufabhängigkeiten angegeben.

0x704

Reserviert

Reserviert

Reserviert

Ein koordinierter Übergang des Leerlaufzustands wurde nicht rechtzeitig abgeschlossen.

0x705

PEPHANDLE

Benachrichtigung

Vierzeichentag, das das illegal geänderte Feld identifiziert. Decodieren Sie das Tag in einem Kerneldebugger mit: .formats-Tag, wobei das Tag in < > eingeschlossen ist.

Ein Power Engine-Plug-In hat ein schreibgeschütztes Feld im Puffer geändert, das an eine Benachrichtigung übergeben wurde.

0x706

Benachrichtigung

Vierzeichentag, das das Feld mit dem unzulässigen Wert identifiziert. Decodieren Sie das Tag in einem Kerneldebugger mit: .formats-Tag, wobei das Tag in < > eingeschlossen ist.

Unzulässiger Wert oder Index in einem Array, in dem ein illegaler Wert vorhanden ist

Ein Power Engine-Plug-In hat einen ungültigen Wert in einem der Felder des Puffers zurückgegeben, der an eine Benachrichtigung übergeben wurde.

0x800

Aktueller CS-Status

Reserviert

Reserviert

Der Monitor wurde unerwartet aktiviert, während sich das System im verbundenen Standbymodus befand.

0x801

Grund für die Änderung des Anzeigezustands

Die ID der Sitzung, die den Anzeigezustand aktualisiert hat

Reserviert

Es ist ein ungültiger Übergang zum Anzeigezustand aufgetreten.

0x802

POWER_MONITOR_REQUEST_REASON, durch die die Anzeige deaktiviert wurde

1, wenn der Power Event Processor aktiviert ist, andernfalls 0.

Zeiger auf eine POP_PDC_IDLE_PHASE_WATCHDOG_CONTEXT global.

Die PDC-System-Leerlaufphase (NoCsPhase) blockiert den Übergang zum modernen Standby für längere Zeit als erwartet.

0x900

Zeiger auf den Rückruf für die verantwortungsvolle Energieeinstellung

IRQL vor dem Aufrufen des Rückrufs für die Energieeinstellung

IRQL nach der Rückkehr vom Rückruf für die Energieeinstellung

Ein registrierter Rückruf für die Energieeinstellung, der mit geändertem IRQL zurückgegeben wird. Dies gibt an, dass der Rückruf den IRQL geändert hat, aber nicht den ursprünglichen IRQL vor der Rückgabe wiederhergestellt hat.

0x901

DEVICE_OBJECT

IRP

Die Anzahl der APC-Deaktivierungsvorgänge des Threads

Ein Treiber hat Kernel-APCs aktiviert/deaktiviert, während er eine Energie-IRP verarbeitet.

0x4001

KE-Fehlersubcode.

WERTE:

0x100 : (INTERNAL_POWER_ERROR_KE_PROCESSOR_ON_TIMED_OUT) Die Firmware hat zu lange benötigt, um einen Prozessor einzuschalten.

0x101 : (INTERNAL_POWER_ERROR_KE_INVALID_INTERRUPT_TARGET) Ein ungültiges Interruptziel wurde angegeben.

0x102 : (INTERNAL_POWER_ERROR_KE_SETDESTINATION_FAILED) Fehler beim Ändern des Zielziels einer Unterbrechungslinie.

0x103 : (INTERNAL_POWER_ERROR_KE_IPI_REQUEST_FAILED) Fehler beim Ausgeben eines IPI, während ein Interrupt umgeleitet wird.

0x104 : (INTERNAL_POWER_ERROR_KE_ARCH_NOT_SUPPORTED) Nicht unterstützte Prozessorarchitektur.

Reserviert

Reserviert

(INTERNAL_POWER_ERROR_KE_SUBCODE) Während eines Energiebetriebs ist ein interner Fehler in der Kernel executive aufgetreten.

0xAA64

Fehlercode

PSCI-Funktions-ID wird ausgeführt

Optionale interne kontextabhängige Daten

Die PSCI-Funktion (Power State Coordination Interface, Power State Coordination Interface) von AArm64 ist auf einen nicht wiederherstellbaren kritischen Fehler gestoßen.

Lösung

Allgemeine Hinweise

In der obigen Tabelle sind einige der Parameter Zeiger auf Strukturen. Wenn Parameter 2 beispielsweise als DEVICE_OBJECT aufgeführt wird, ist Parameter 2 ein Zeiger auf eine DEVICE_OBJECT Struktur. Einige der Strukturen sind in wdm.h definiert, das im Windows Driver Kit enthalten ist. Beispielsweise werden die folgenden Strukturen in wdm.h definiert.

  • EXCEPTION_POINTERS
  • DEVICE_OBJECT
  • IO_STACK_LOCATION
  • PEP_DEVICE_REGISTER

Einige der Strukturen, die in der vorherigen Tabelle angezeigt werden, sind in keiner öffentlichen Headerdatei definiert. Sie können die Definitionen dieser Strukturen mit dem Befehl dt debugger anzeigen. Das folgende Beispiel zeigt, wie Sie den Befehl dt verwenden, um die DEVICE_OBJECT_POWER_EXTENSION Struktur anzuzeigen.

3: kd> dt nt!DEVICE_OBJECT_POWER_EXTENSION
   +0x000 IdleCount        : Uint4B
   +0x004 BusyCount        : Uint4B
   +0x008 BusyReference    : Uint4B
   +0x00c TotalBusyCount   : Uint4B
   +0x010 ConservationIdleTime : Uint4B
   +0x014 PerformanceIdleTime : Uint4B
   +0x018 DeviceObject     : Ptr64 _DEVICE_OBJECT
   +0x020 IdleList         : _LIST_ENTRY
   +0x030 IdleType         : _POP_DEVICE_IDLE_TYPE
   +0x034 IdleState        : _DEVICE_POWER_STATE
   +0x038 CurrentState     : _DEVICE_POWER_STATE
   +0x040 Volume           : _LIST_ENTRY
   +0x050 Specific         : <unnamed-tag>

Die folgenden Verfahren helfen Ihnen beim Debuggen bestimmter Instanzen dieser Fehlerüberprüfung.

Fehlerüberprüfung beim Debuggen 0xA0, wenn Parameter 1 gleich 0x2

  1. Untersuchen Sie den Stapel. Suchen Sie nach dem ntoskrnl! PopExceptionFilter-Funktion . Diese Funktion enthält den folgenden Code als erstes Argument.

     (error_code << 16) | _LINE_
    

    Wenn der Aufrufer PopExceptionFilter ist, ist das erste Argument für diese Funktion vom Typ PEXCEPTION_POINTERS. Notieren Sie sich den Wert dieses Arguments.

  2. Verwenden Sie den Befehl dt (Anzeigetyp), und geben Sie den Wert an, den Sie im vorherigen Schritt als Argument gefunden haben.

    dt nt!_EXCEPTION_POINTERS argument 
    

    Mit diesem Befehl wird die Struktur angezeigt. Notieren Sie sich die Adresse des Kontextdatensatzes.

  3. Verwenden Sie den Befehl .cxr (Kontextdatensatz anzeigen), und geben Sie den Kontextdatensatz an, den Sie im vorherigen Schritt als Datensatz gefunden haben.

    .cxr record 
    

    Mit diesem Befehl wird der Registrierungskontext auf den richtigen Wert festgelegt.

  4. Verwenden Sie eine Vielzahl von Befehlen, um die Fehlerquelle zu analysieren. Beginnen Sie mit kb (Display Stack Backtrace) .

Fehlerüberprüfung beim Debuggen 0xA0, wenn Parameter 1 gleich 0x7

  1. Untersuchen Sie den Stapel. Suchen Sie nach dem ntoskrnl! PopExceptionFilter-Funktion . Das erste Argument für diese Funktion ist vom Typ PEXCEPTION_POINTERS. Notieren Sie sich den Wert dieses Arguments.

  2. Verwenden Sie den Befehl dt (Anzeigetyp), und geben Sie den Wert an, den Sie im vorherigen Schritt als Argument gefunden haben.

    dt nt!_EXCEPTION_POINTERS argument 
    

    Mit diesem Befehl wird die Struktur angezeigt. Notieren Sie sich die Adresse des Kontextdatensatzes.

  3. Verwenden Sie den Befehl .cxr (Kontextdatensatz anzeigen), und geben Sie den Kontextdatensatz an, den Sie im vorherigen Schritt als Datensatz gefunden haben.

    .cxr record 
    

    Mit diesem Befehl wird der Registrierungskontext auf den richtigen Wert festgelegt.

  4. Verwenden Sie eine Vielzahl von Befehlen, um die Fehlerquelle zu analysieren. Beginnen Sie mit kb (Display Stack Backtrace) .

Fehlerüberprüfung beim Debuggen 0xA0, wenn Parameter 1 gleich 0x101

  1. Verwenden Sie den Befehl dt (Anzeigetyp), und geben Sie den Wert von Parameter 3 als Argument an.

    dt nt!_EXCEPTION_POINTERS argument 
    

    Mit diesem Befehl wird die Struktur angezeigt. Notieren Sie sich die Adresse des Kontextdatensatzes.

  2. Verwenden Sie den Befehl .cxr (Kontextdatensatz anzeigen), und geben Sie den Kontextdatensatz an, den Sie im vorherigen Schritt als Datensatz gefunden haben.

    .cxr record 
    

    Mit diesem Befehl wird der Registrierungskontext auf den richtigen Wert festgelegt.

  3. Verwenden Sie eine Vielzahl von Befehlen, um die Fehlerquelle zu analysieren. Beginnen Sie mit kb (Display Stack Backtrace) .

Weitere Informationen

Bug Check Code Reference (Referenz zu Fehlerüberprüfungscodes)