Vérification de bogue : 0xA0 INTERNAL_POWER_ERROR
La vérification de bogue INTERNAL_POWER_ERROR a une valeur de 0x000000A0. Cette vérification de bogue indique que le gestionnaire de stratégies d’alimentation a subi une erreur irrécupérable.
Important
Cet article s’adresse aux programmeurs. Si vous êtes un client et que vous avez reçu ce code d’erreur d’écran bleu en utilisant votre ordinateur, consultez Résoudre les erreurs d’écran bleu.
Paramètres INTERNAL_POWER_ERROR
Le paramètre 1 indique le type de violation. La signification des autres paramètres dépend de la valeur du paramètre 1.
Paramètre 1 | Paramètre 2 | Paramètre 3 | Paramètre 4 | Cause |
---|---|---|---|---|
0x1 |
1 : un appareil a dépassé son nombre maximal de décomptes de références. 2, 3 ou 4 : un trop grand nombre d’IRP d’alimentation d’appel a été mis en file d’attente. 5 : l’IRP d’alimentation a été envoyé à un objet d’appareil de niveau passif. 6 : le système n’a pas pu allouer un IRP d’alimentation nécessaire. |
Si le paramètre 2 a la valeur 1, nombre maximal de références autorisées. Si le paramètre 2 a la valeur 2, 3 ou 4, nombre maximal d’IRP en attente autorisé. Si le paramètre 2 a la valeur 6, objet d’appareil cible. |
Si le paramètre 2 a la valeur 6, indique s’il s’agit d’un système (0x0) ou d’un appareil (0x1) d’alimentation IRP. | Une erreur s’est produite lors de la gestion du paquet de demande d’E/S d’alimentation (IRP). |
0x2 |
Reserved |
Réservé |
Réservé |
Une défaillance interne s’est produite lors de la tentative de traitement d’un événement d’alimentation. Pour en savoir plus, consultez Vérification des bogues de débogage 0xA0 lorsque le paramètre 1 est égal à 0x2. |
0x3 |
Somme de contrôle attendue |
Somme de contrôle réelle |
Numéro de ligne de la défaillance. |
La somme de contrôle d’une page de contexte de mise en veille prolongée ne correspond pas à sa somme de contrôle attendue. |
0x4 |
Somme de contrôle attendue |
Somme de contrôle réelle |
Numéro de ligne de la défaillance. |
La somme de contrôle d’une page sur le point d’être écrite dans le fichier de mise en veille prolongée ne correspond pas à sa somme de contrôle attendue. |
0x5 |
Reserved |
Réservé |
Réservé |
Un code d’arrêt inconnu a été envoyé au gestionnaire d’arrêt du système. |
0x7 |
Reserved |
Réservé |
Réservé |
Une exception non gérée s'est produite. Pour en savoir plus, consultez Vérification des bogues de débogage 0xA0 lorsque le paramètre 1 est égal à 0x7. |
0x8 |
Ce paramètre est toujours défini sur 0x100. |
Objet d’appareil |
POWER_CHANNEL_SUMMARY |
Une erreur irrécupérable s’est produite lors du traitement d’un événement d’alimentation système. |
0x9 |
Code d’état |
Phase de mise en miroir |
Reserved |
Une erreur irrécupérable s’est produite lors de la préparation du fichier en veille prolongée. |
0xA |
0 : une vérification de bogue a été demandée immédiatement lors de la reprise. 1 : une vérification de bogue a été demandée lors de la reprise après la mise sous tension de tous les appareils non paginables. 2 : une vérification de bogue a été demandée lors de la reprise après la mise sous tension de tous les appareils. |
Reserved |
Réservé |
Une vérification de bogue a été demandée lors de la sortie du mode veille à des fins de débogage. |
0xB |
Taille du fichier de mise en veille prolongée. |
Progression de la mise en veille prolongée avant de manquer d’espace 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 |
Lorsque le paramètre 2 a une valeur 4, taille des plages de mémoire restantes. |
Le fichier de mise en veille prolongée est trop petit. |
0xC |
Code d’état |
Contexte de pile de vidage |
Reserved |
Échec de l’initialisation de la pile de vidage. |
0xD |
État d’alimentation du système en transition. |
Le point de contrôle de veille le plus récemment atteint. |
Pointeur vers la structure POP_POWER_ACTION. |
Le système n’a pas réussi à effectuer une transition d’alimentation en temps voulu. |
0xF |
État d’alimentation du système en transition. |
Le point de contrôle de veille le plus récemment atteint. |
Pointeur vers le thread qui traite actuellement la requête. |
Le système n’a pas réussi à effectuer une transition d’alimentation en temps voulu. |
0xF0 |
État d’alimentation du système en transition. |
Le point de contrôle de veille le plus récemment atteint. |
Pointeur vers le thread qui traite actuellement la requête. |
Le système n’a pas réussi à effectuer (suspendre) une transition d’alimentation en temps voulu. |
0xF1 |
État d’alimentation du système en transition. |
Le point de contrôle de veille le plus récemment atteint. |
Pointeur vers le thread qui traite actuellement la requête. |
Le système n’a pas réussi à effectuer (reprendre) une transition d’alimentation en temps voulu. |
Paramètre 1 | Paramètre 2 | Paramètre 3 | Paramètre 4 | Cause |
---|---|---|---|---|
0x101 |
Reserved |
Pointeur d’exception. |
Reserved |
Une exception non gérée s’est produite lors du traitement d’un événement d’alimentation système. Pour en savoir plus, consultez Vérification des bogues de débogage 0xA0 lorsque le paramètre 1 est égal à 0x101. |
0x102 |
Reserved |
DUMP_INITIALIZATION_CONTEXT |
POP_HIBER_CONTEXT |
La taille du tampon de travail de mise en veille prolongée n’est pas alignée sur les pages. |
0x103 |
Reserved |
POP_HIBER_CONTEXT |
Reserved |
Toutes les pages de travail n’ont pas pu être prises en compte pendant le processus de mise en veille prolongée. |
0x104 |
Reserved |
POP_HIBER_CONTEXT |
Reserved |
Une tentative a été effectuée pour mapper la mémoire de mise en veille prolongée interne pendant que les structures de mémoire interne étaient verrouillées. |
0x105 |
Reserved |
POP_HIBER_CONTEXT |
Reserved |
Une tentative a été effectuée pour mapper la mémoire de mise en veille prolongée interne avec un indicateur de type de mémoire non pris en charge. |
0x106 |
Reserved |
Liste de descripteurs de mémoire (MDL) |
Reserved |
Une liste de descripteurs de mémoire a été créée pendant le processus de mise en veille prolongée qui décrit la mémoire qui n’est pas alignée sur les pages. |
0x107 |
Reserved |
POP_HIBER_CONTEXT |
PO_MEMORY_RANGE_ARRAY |
Une incompatibilité de données s’est produite dans les structures de données de mise en veille prolongée interne. |
0x108 |
Reserved |
POP_HIBER_CONTEXT |
Reserved |
Le sous-système de disque n’a pas pu écrire correctement une partie du fichier de mise en veille prolongée. |
0x109 |
Reserved |
Somme contrôle attendue |
Somme de contrôle réelle |
La somme de contrôle pour les données d’état du processeur ne correspond pas à sa somme de contrôle attendue. |
0x10A |
Reserved |
POP_HIBER_CONTEXT |
Code d’échec NTSTATUS |
Le sous-système de disque n’a pas pu lire ou écrire correctement une partie du fichier de mise en veille prolongée. |
0x10B |
Reserved |
Progression actuelle de la mise en veille prolongée |
Reserved |
Une tentative de marquer des pages pour la phase de démarrage de la mise en veille prolongée a été effectuée au mauvais moment à l’aide de l’API PoSetHiberRange. |
0x10C |
Reserved |
Indicateurs fournis à l’API |
Longueur à marquer |
L’API PoSetHiberRange a été appelée avec des paramètres non valides. |
0x10D |
Reserved |
POP_HIBER_CONTEXT |
Code d’échec NTSTATUS |
Le sous-système du noyau sécurisé a échoué alors qu’il fournissait des données pour la reprise. |
0x10E |
Reserved |
Somme de contrôle erronée |
Somme de contrôle de la lecture précédente du disque |
Le sous-système de disque a renvoyé des données endommagées lors de la lecture à partir du fichier de mise en veille prolongée. |
0x10F |
Point de contrôle actuel de la mise en veille du système. |
Type d’erreur interne. 0 : un point de contrôle a été écrit alors que la pagination était désactivée, mais avant que Po ne désactive les interruptions sur tous les processeurs. 1 : un processeur autre que 0 a essayé d’écrire un point de contrôle pendant la phase d’interruption désactivée de mise en veille du système. 2 : un autre morceau de code dans le système exécute un service d’exécution EFI. |
Reserved |
Une erreur interne s’est produite lors du contrôle de la progression de la mise en veille du système. |
0x110 |
Reserved |
Réservé |
Réservé |
Le système n’a pas pu désactiver les états de veille du système, mais doit le faire pour garantir l’intégrité des données. |
0x111 |
Reserved |
Réservé |
Réservé |
Un pilote a indiqué que l’utilisateur est présent et ce dernier a activé une option de débogage pour capturer la pile d’appels. |
0x200 |
Reserved |
DEVICE_OBJECT |
DEVICE_OBJECT_POWER_EXTENSION |
Un type d’appareil inconnu est vérifié en relation avec un état inactif. |
0x300 |
Reserved |
DEVICE_OBJECT |
IRP |
Un état inconnu a été renvoyé par un IRP d’alimentation de batterie. |
0x301 |
Reserved |
DEVICE_OBJECT |
IRP |
La batterie est entrée dans un état inconnu. |
0x400 |
Reserved |
IO_STACK_LOCATION |
DEVICE_OBJECT |
un appareil a dépassé son nombre maximal de décomptes de références. |
0x401 |
Reserved |
Liste d’IRP en attente |
DEVICE_OBJECT |
Un trop grand nombre d’IRP d’alimentation d’appel a été mis en file d’attente. |
0x402 |
Reserved |
Liste d’IRP en attente |
DEVICE_OBJECT |
Un trop grand nombre d’IRP d’alimentation d’appel a été mis en file d’attente. |
0x403 |
Reserved |
Liste d’IRP en attente |
DEVICE_OBJECT |
Un trop grand nombre d’IRP d’alimentation d’appel a été mis en file d’attente. |
0x404 |
Reserved |
IO_STACK_LOCATION |
DEVICE_OBJECT |
Un IRP d’alimentation a été envoyé à un objet d’appareil de niveau passif. |
0x500 |
Reserved |
IRP |
DEVICE_OBJECT |
Un état inconnu a été renvoyé par un IRP d’alimentation thermique. |
Paramètre 1 | Paramètre 2 | Paramètre 3 | Paramètre 4 | Cause |
---|---|---|---|---|
0x600 |
DEVICE_OBJECT PDO |
Reserved |
Réservé |
Un pilote a tenté une inscription dupliquée avec le Power Runtime Framework. |
0x601 |
Appareil POP_FX_DEVICE |
PEP_DEVICE_REGISTER PEP |
Reserved |
Aucun plug-in du moteur d’alimentation n’a accepté l’inscription de l’appareil. |
0x602 |
Nœud d’appareil DEVICE_NODE |
Nombre de veilles |
Reserved |
Le nombre de veilles des nœuds d’appareil ne correspond pas à son nombre d’activations. |
0x603 |
POP_FX_PLUGIN |
Type de demande de travail |
Reserved |
Un plug-in du moteur d’alimentation a effectué une demande de travail non valide. |
0x605 |
ID de notification |
POP_FX_PLUGIN |
Reserved |
Un plug-in du moteur d’alimentation n’a pas accepté la notification obligatoire de gestion de l’alimentation de l’appareil. |
0x606 |
POP_FX_COMPONENT |
POP_FX_COMPONENT_FLAGS |
Nouvelle condition pour le composant |
Un plug-in du moteur d’alimentation a tenté de faire passer un composant de ressource système critique à une condition active (ou inactive) lorsque la ressource était déjà active (ou inactive). |
0x607 |
POP_FX_DEVICE |
NTSTATUS |
Reserved |
L’acquisition d’un blocage de suppression de dispositif de la structure de gestion de l’alimentation en cours d’exécution a échoué alors qu’elle devait réussir. |
0x608 |
POP_FX_COMPONENT |
POP_FX_COMPONENT_FLAGS |
Reserved |
Un pilote a tenté de faire passer un composant en mode inactif sans demande active précédente. |
0x609 |
POP_FX_PLUGIN |
POP_FX_DEVICE |
Type de demande dupliquée 0 : DevicePowerRequired 1 : DevicePowerNotRequired |
Un plug-in du moteur d’alimentation a demandé l’alimentation de l’appareil nécessaire ou l’alimentation de l’appareil non nécessaire sans une demande d’intervention du type opposé. |
0x610 |
POP_FX_PLUGIN |
POP_FX_DEVICE |
Reserved |
Un plug-in du moteur d’alimentation a demandé l’alimentation de l’appareil non nécessaire pendant qu’une demande précédente d’alimentation de l’appareil est en attente. |
0x611 |
POP_FX_PLUGIN |
POP_FX_DEVICE |
Index de composant non valide |
Un plug-in du moteur d’alimentation a demandé une opération sur un composant non valide. |
0x612 |
POP_FX_PLUGIN PowerEnginePlugin |
Reserved |
Réservé |
Un plug-in du moteur d’alimentation a demandé la réalisation de tâches supplémentaires dans le contexte d’une notification d’appareil où aucune mémoire tampon n’a été fournie par PO pour la demande. |
0x613 |
POP_FX_DEVICE |
Index de composants |
Opération 0 : alimentation complète de l’appareil non nécessaire 1 : signaler l’appareil sous tension 2 : condition complète d’inactivité |
Un pilote a tenté de terminer une demande alors qu’aucune demande de ce type n’est en suspens. |
0x614 |
POP_FX_DEVICE |
Index de composants |
Paramètre illégal 0 : PO_FX_FLAG_BLOCKING utilisé à IRQL >= DISPATCH_LEVEL 1 : PO_FX_FLAG_BLOCKING et PO_FX_FLAG_ASYNC_ONLY tous deux spécifiés 2 : index de composants non valide |
Un pilote a demandé une transition active/inactive sur un composant avec un paramètre illégal. |
0x615 |
POP_FX_PLUGIN |
POP_FX_COMPONENT |
Action illégale 0 : le composant n’est pas dans l’état inactif 0 1 : le composant est déjà actif 2 : aucune demande d’activation en attente 3 : transition d’état inactif en attente |
Un plug-in du moteur d’alimentation a indiqué illégalement l’achèvement d’une activation de composant. |
0x616 |
POP_FX_PLUGIN |
POP_FX_COMPONENT |
Action illégale 0 : état inactif non valide 1 : le composant est déjà dans l’état demandé 2 : demande d’un état inactif autre que 0 sans passer par l’état inactif 0 |
Un plug-in du moteur d’alimentation a demandé illégalement une transition d’état inactif du composant. |
0x617 |
POP_FX_PLUGIN PowerEnginePlugin |
UNICODE_STRING DeviceId |
Inscription PEP PEP_DEVICE_REGISTER |
Un plug-in du moteur d’alimentation a renvoyé un type d’acceptation non valide lors du traitement d’une notification d’inscription d’appareil. |
0x618 |
Ordre de travail POP_FX_WORK_ORDER_WATCHDOG_INFO |
Reserved |
Réservé |
Un thread de travail d’alimentation pendant l’exécution a été bloqué depuis trop longtemps. |
0x619 |
Appareil POP_FX_DEVICE |
Index de composants |
NULL ou DEVICE_NODE de l’appareil enfant responsable |
Un appareil a bloqué l’entrée dans l’état d’inactivité du runtime le plus profond pendant trop longtemps. |
0x61A |
Plug-in du moteur d’alimentation POP_FX_PLUGIN |
Appareil POP_FX_DEVICE |
Reserved |
Un plug-in du moteur d’alimentation a fourni des informations non valides sur l’état des performances d’un composant. |
0x61B |
Appareil POP_FX_DEVICE |
Index de composants |
Reserved |
Un pilote a émis une demande d’état des performances avant de s’inscrire pour des états des performances de l’appareil. |
0x61C |
Appareil POP_FX_DEVICE |
Index de composants |
Paramètre non valide VALEURS : 0 : PerfChangesCount dépasse le nombre d’ensemble d’états des performances inscrits pour ce composant |
Un pilote a émis une demande d’état des performances avec des paramètres non valides. |
0x61D |
Appareil POP_FX_DEVICE |
Index de composants |
Contexte de demande en attente |
Un pilote a émis une demande d’état des performances alors qu’une demande précédente est en attente. |
0x61E |
Reserved |
Réservé |
Réservé |
Un plug-in du moteur d’alimentation a tenté d’effectuer une transition critique sur un appareil de débogage alors que les transitions automatiques sont activées. |
0x61F |
Appareil POP_FX_DEVICE |
Index d’état inactif coordonné |
Reserved |
Un plug-in du moteur d’alimentation a tenté d’activer les transitions automatiques du débogueur pour un état inactif coordonné qui n’est pas un état à l’échelle de la plateforme. |
0x620 |
Appareil POP_FX_DEVICE |
Index d’état inactif coordonné |
Reserved |
Un plug-in du moteur d’alimentation a tenté d’inscrire une dépendance d’état D pour un état inactif coordonné qui n’est pas un état à l’échelle de la plateforme. |
0x621 |
Appareil POP_FX_DEVICE |
Index de composants |
Index d’état inactif coordonné |
Un plug-in du moteur d’alimentation a tenté d’inscrire une dépendance d’état F pour un état inactif coordonné qui n’est pas un état à l’échelle de la plateforme. |
0x622 |
Le POP_FX_COMPONENT parent |
Le POP_FX_COMPONENT enfant |
Reserved |
Un pilote a tenté de se désinscrire de PoFx avec des dépendances en attente. |
0x666 |
PPOP_PEP_ACTIVITY |
Nouveau type d’activité 0 : DevicePowerOn 1 : ComponentIdleStateChange 2 : ComponentActivating 3 : ComponentActive 4 : DevicePowerOff 5 : DeviceSuspend |
Type d’activité conflictuelle 0 : DevicePowerOn 1 : ComponentIdleStateChange 2 : ComponentActivating 3 : ComponentActive 4 : DevicePowerOff 5 : DeviceSuspend |
Le plug-in du moteur d’alimentation par défaut a tenté de déclencher une nouvelle activité qui est en conflit avec une autre activité. |
0x667 |
POP_PEP_ACTIVITY |
Type d’activité 0 : DevicePowerOn 1 : ComponentIdleStateChange 2 : ComponentActivating 3 : ComponentActive 4 : DevicePowerOff 5 : DeviceSuspend |
POP_PEP_ACTIVITY_STATUS |
Le plug-in du moteur d’alimentation par défaut a tenté d’effectuer une activité qui n’est pas en cours d’exécution. |
0x668 |
PPPM_COORDINATED_STATE dont le nombre de références est en cours de mise à jour. |
Valeur du nombre de références non valide observée par cette fonction. |
Masque des états inactifs de la plateforme est cours de mise à jour. |
Le plug-in du moteur d’alimentation par défaut a tenté de supprimer une restriction d’état inactif de la plateforme qui n’était pas restreinte auparavant. |
0x669 |
PPPM_COORDINATED_STATE dont le nombre de références est en cours de mise à jour. |
Valeur du nombre de références non valide observée par cette fonction. |
Reserved |
Le plug-in du moteur d’alimentation par défaut a rencontré une erreur de cohérence interne en tentant d’informer exclusivement PoFx de la disponibilité d’un état inactif de la plateforme. |
Paramètre 1 | Paramètre 2 | Paramètre 3 | Paramètre 4 | Cause |
---|---|---|---|---|
0x680 |
Code d’échec NTSTATUS. |
Reserved |
Réservé |
Le cadre d’exécution de l’alimentation n’a pas pu analyser une table ACPI requise parce qu’elle était manquante ou malformée. Il s’agit généralement d’une erreur du BIOS. |
0x700 |
PEPHANDLE |
PEP_PPM_IDLE_SELECT |
Reserved |
Un plug-in du moteur d’alimentation a spécifié des dépendances inactives de processeur non valides. |
0x701 |
Index de l’état d’inactivité sélectionné du processeur bloqué |
Adresse PRCB du processeur bloqué |
Index du processeur bloqué |
Un processeur n’a pas pu effectuer une transition inactive dans l’intervalle alloué. Cela indique que le processeur spécifié est bloqué. |
0x702 |
Index de l’état d’inactivité sélectionné du processeur |
État de synchronisation inactif du processeur |
Adresse PRCB du processeur bloqué |
Un processeur est sorti d’un état non interruptible sans que le système d’exploitation n’initie une sortie de veille explicite par l’intermédiaire du PEP (en utilisant la synchronisation d’inactivité PPM nécessaire). |
0x703 |
PEPHANDLE |
PEP_PPM_QUERY_PLATFORM_STATE |
Reserved |
Un plug-in du moteur d’alimentation a spécifié des dépendances inactives du processeur non valides lors d’une notification d’état de plateforme de demande. |
0x704 |
Reserved |
Réservé |
Réservé |
Une transition coordonnée de l’état inactif n’a pas été effectuée en temps voulu. |
0x705 |
PEPHANDLE |
Notification |
Balise à quatre caractères identifiant le champ modifié illégalement. Décoder une balise dans un débogueur de noyau avec la balise .formats, avec une balise entre < >. |
Un plug-in de moteur d’alimentation a modifié un champ en lecture seule dans la mémoire tampon passé dans une notification. |
0x706 |
Notification |
Balise à quatre caractères identifiant le champ contenant la valeur illégale. Décoder une balise dans un débogueur de noyau avec la balise .formats, avec une balise entre < >. |
Valeur ou index illégaux dans un tableau où une valeur illégale existe |
Un plug-in du moteur d’alimentation a renvoyé une valeur illégale dans l’un des champs de la mémoire tampon transmis dans une notification. |
0x800 |
État actuel de CS |
Reserved |
Réservé |
Le moniteur a été activé de manière inattendue pendant que le système était en veille connectée. |
0x801 |
Raison de la modification de l’état d’affichage |
ID de la session qui a mis à jour l’état d’affichage |
Reserved |
Une transition d’état d’affichage non valide s’est produite. |
0x802 |
POWER_MONITOR_REQUEST_REASON qui a provoqué la désactivation de l’affichage |
1, si le processeur d’événements d’alimentation est activé, sinon 0. |
Pointeur vers un POP_PDC_IDLE_PHASE_WATCHDOG_CONTEXT global. |
La phase d’inactivité du système PDC (NoCsPhase) bloque la transition vers le mode veille moderne pendant plus longtemps que prévu. |
0x900 |
Pointeur vers le rappel responsable du paramètre d’alimentation |
IRQL avant d’appeler le rappel de paramètre d’alimentation |
IRQL après le renvoi à partir du rappel de paramètre d’alimentation |
Rappel de paramètre d’alimentation inscrit renvoyé avec IRQL modifié. Cela indique que le rappel a changé l’IRQL, mais n’a pas restauré l’IRQL d’origine avant de renvoyer. |
0x901 |
DEVICE_OBJECT |
IRP |
Nombre de désactivations de l’APC du thread |
Un pilote a activé/désactivé des APC du noyau lors de la gestion d’un IRP d’alimentation. |
0x4001 |
Sous-code d’erreur KE. VALEURS : 0x100 : (INTERNAL_POWER_ERROR_KE_PROCESSOR_ON_TIMED_OUT) Le microprogramme a mis trop de temps à activer un processeur. 0x101 : (INTERNAL_POWER_ERROR_KE_INVALID_INTERRUPT_TARGET) Une cible d’interruption non valide a été spécifiée. 0x102 : (INTERNAL_POWER_ERROR_KE_SETDESTINATION_FAILED) Échec de la modification de la destination cible d’une ligne d’interruption. 0x103 : (INTERNAL_POWER_ERROR_KE_IPI_REQUEST_FAILED) Échec de l’émission d’un IPI pendant qu’une interruption est redirigée. 0x104 : (INTERNAL_POWER_ERROR_KE_ARCH_NOT_SUPPORTED) Architecture de processeur non prise en charge. |
Reserved |
Réservé |
(INTERNAL_POWER_ERROR_KE_SUBCODE) Une défaillance interne s’est produite dans le noyau exécutif pendant une opération d’alimentation. |
0xAA64 |
Code d’erreur |
ID de la fonction PSCI en cours |
Données facultatives dépendantes du contexte interne |
La fonction PSCI (Power State Coordination Interface) de l’AArm64 a rencontré une erreur critique irrécupérable. |
Résolution
Remarques générales
Dans le tableau précédent, plusieurs des paramètres sont des pointeurs vers des structures. Par exemple, si le paramètre 2 est répertorié comme DEVICE_OBJECT, le paramètre 2 est un pointeur vers une structure DEVICE_OBJECT. Certaines des structures sont définies dans wdm.h, qui est inclus dans le Kit de pilotes de Windows. Par exemple, les structures suivantes sont définies dans wdm.h.
- EXCEPTION_POINTERS
- DEVICE_OBJECT
- IO_STACK_LOCATION
- PEP_DEVICE_REGISTER
Certaines des structures qui apparaissent dans le tableau précédent ne sont pas définies dans un fichier d’en-tête public. Vous pouvez voir les définitions de ces structures à l’aide de la commande de déboguer dt. L’exemple suivant montre comment utiliser la commande dt pour afficher la structure DEVICE_OBJECT_POWER_EXTENSION.
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>
Les procédures suivantes vous aideront à déboguer certaines instances de ce vérification de bogues.
Vérification de bogue de débogage 0xA0 lorsque le paramètre 1 est égal à 0x2
Examinez la pile. Recherchez la fonction ntoskrnl!PopExceptionFilter. Cette fonction contient le code suivant comme premier argument.
(error_code << 16) | _LINE_
Si l’appelant est PopExceptionFilter, le premier argument de cette fonction est de type PEXCEPTION_POINTERS. Notez la valeur de cet argument.
Utilisez la commande dt (Display Type) et spécifiez la valeur que vous avez trouvée à l’étape précédente en tant qu’argument.
dt nt!_EXCEPTION_POINTERS argument
Cette commande affiche la structure. Notez l’adresse de l’enregistrement de contexte.
Utilisez la commande .cxr (Display Context Record) et spécifiez l’enregistrement de contexte que vous avez trouvé à l’étape précédente en tant qu’enregistrement.
.cxr record
Cette commande définit le contexte de registre sur la valeur appropriée.
Utilisez diverses commandes pour analyser la source de l’erreur. Commencez par kb (Display Stack Backtrace).
Vérification de bogue de débogage 0xA0 lorsque le paramètre 1 est égal à 0x7
Examinez la pile. Recherchez la fonction ntoskrnl!PopExceptionFilter. Le premier argument de cette fonction est de type PEXCEPTION_POINTERS. Notez la valeur de cet argument.
Utilisez la commande dt (Display Type) et spécifiez la valeur que vous avez trouvée à l’étape précédente en tant qu’argument.
dt nt!_EXCEPTION_POINTERS argument
Cette commande affiche la structure. Notez l’adresse de l’enregistrement de contexte.
Utilisez la commande .cxr (Display Context Record) et spécifiez l’enregistrement de contexte que vous avez trouvé à l’étape précédente en tant qu’enregistrement.
.cxr record
Cette commande définit le contexte de registre sur la valeur appropriée.
Utilisez diverses commandes pour analyser la source de l’erreur. Commencez par kb (Display Stack Backtrace).
Vérification de bogue de débogage 0xA0 lorsque le paramètre 1 est égal à 0x101
Utilisez la commande dt (Display Type) et spécifiez la valeur du paramètre 3 en tant qu’argument.
dt nt!_EXCEPTION_POINTERS argument
Cette commande affiche la structure. Notez l’adresse de l’enregistrement de contexte.
Utilisez la commande .cxr (Display Context Record) et spécifiez l’enregistrement de contexte que vous avez trouvé à l’étape précédente en tant qu’enregistrement.
.cxr record
Cette commande définit le contexte de registre sur la valeur appropriée.
Utilisez diverses commandes pour analyser la source de l’erreur. Commencez par kb (Display Stack Backtrace).