Freigeben über


Fehlerüberprüfung 0x144: BUGCODE_USB3_DRIVER

Die BUGCODE_USB3_DRIVER Fehlerüberprüfung hat den Wert 0x00000144. Dies ist der Code, der für alle USB 3-Fehlerüberprüfungen verwendet wird. Parameter 1 gibt den Typ der USB 3-Fehlerüberprüfung an, und die Bedeutungen der anderen Parameter sind von Parameter 1 abhängig.

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.

BUGCODE_USB3_DRIVER Parameter

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Fehlerursache

0x1

Optional. Zeiger auf den IRP, der zum erneuten Senden der URB verwendet wird

Zeiger auf die URB

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber verwendete eine URB, die er zuvor an den Kernstapel gesendet hatte.

0x2

Zeiger auf das physische Geräteobjekt (PDO) für das Startgerät

Reserviert

Reserviert

Bei einem Start- oder Auslagerungsgerät ist eine erneute Enumeration fehlgeschlagen.

0x3

Optional. Zeiger auf den IRP, der zum Senden der URB verwendet wird

Zeiger auf die beschädigte URB

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat eine beschädigte URB an den Kernstapel gesendet. Dies kann passieren, weil der Clienttreiber die URB nicht mithilfe von USBD_xxxUrbAllocate zugewiesen hat oder weil der Clienttreiber eine Pufferunterausführung für die URB durchgeführt hat.

0x800

IRQL, an dem die Open Static Streams-Anforderung gesendet wurde

Zeiger auf das Open Static Streams-IRP

Zeiger auf das Geräteobjekt des Clienttreibers

Eine Open Static Streams-Anforderung wurde auf IRQL PASSIVE-EBENE > gesendet.

0x801

Zeiger auf das Open Static Streams-IRP

Zeiger auf die Open Static Streams-URB

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat versucht, statische Datenströme zu öffnen, bevor die Datenstromfunktion abgefragt wird. Ein Clienttreiber kann einen statischen Stream erst öffnen, nachdem er erfolgreich nach der Streamfunktion gefragt wurde. Weitere Informationen finden Sie in den Hinweisen.

0x802

Anzahl der statischen Datenströme, die der Clienttreiber geöffnet hat

Anzahl der statischen Datenströme, die dem Clienttreiber gewährt wurden

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat versucht, eine ungültige Anzahl statischer Streams zu öffnen. Die Anzahl der Streams darf nicht 0 sein und darf nicht größer als der Wert sein, der im Abfrage-USB-Funktionsaufruf an den Clienttreiber zurückgegeben wird.

0x803

Zeiger auf das Open Static Streams-IRP

Zeiger auf die Open Static Streams-URB

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat versucht, statische Datenströme für einen Endpunkt zu öffnen, für den bereits statische Datenströme geöffnet waren. Vor dem Öffnen statischer Streams muss der Clienttreiber die zuvor geöffneten statischen Streams schließen.

0x804

Der durchgesickerte Handle-Kontext. Führen Sie !usbanalyze -v aus , um Informationen über den geleakten Handle und die URBs abzurufen. Sie müssen die Treiberüberprüfung für den Clienttreiber aktivieren.

An USBD_CreateHandle übergebenes Geräteobjekt.

Reserviert

Ein Clienttreiber hat vergessen, einen zuvor mit USBD_CreateHandle erstellten Handle zu schließen, oder hat vergessen, eine zugewiesene URB freizusetzen.

0x805

WDFREQUEST-Handle für die URB Statische Streams schließen

Zeiger auf die URB Statische Datenströme schließen

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat eine Close Static Streams-URB in einem ungültigen Zustand gesendet (z. B. nach der Verarbeitung von D0 Exit).

0x806

Zeiger auf den IRP

Zeiger auf die URB

Zeiger auf das Geräteobjekt des Clienttreibers

Ein Clienttreiber hat versucht, eine verkettete MDL zu senden, bevor nach verketteter MDL-Funktion abgefragt wird. Ein Clienttreiber kann eine verkettete MDL erst senden, nachdem er erfolgreich die verkettete MDL-Funktion abgefragt hat. Weitere Informationen finden Sie in den Hinweisen.

0x807

Zeiger auf die verkettete MDL

Zeiger auf die URB

Zeiger auf das Geräteobjekt des Clienttreibers, falls verfügbar

Ein Clienttreiber hat eine URB an den Kernstapel mit einer Übertragungspufferlänge gesendet, die länger ist als die Byteanzahl (zurückgegeben von MmGetMdlByteCount) der übergebenen MDL . Weitere Informationen finden Sie in den Hinweisen.

0x1001

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der xHCI-Controller hat das HSE-Bit behauptet, das einen Hostsystemfehler angibt.

0x1002

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der xHCI-Controller hat das HCE-Bit behauptet, was auf einen Hostcontrollerfehler hinweist.

0x1003

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Befehl xHCI-Endpunkt beenden hat einen nicht behandelten Vervollständigungscode zurückgegeben.

0x1004

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der xHCI-Endpunktstatus hat einen Kontextstatusfehler erhalten, nachdem ein Befehl zum Beenden eines xHCI-Endpunkts ausgegeben wurde.

0x1005

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Festlegen des Queuezeigers beim Versuch, den Würstpunkt für den Steuerelementendpunkt zu löschen.

0x1006

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Zurücksetzen von EP beim Versuch, die Verzögerung für den Steuerungsendpunkt zu löschen.

0x1007

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Zurücksetzen des xHCI-Controllers während der Wiederherstellung zum Zurücksetzen.

0x1008

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Neustart des xHCI-Controllers während der Wiederherstellung zum Zurücksetzen.

0x1009

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Ein xHCI-Controllerbefehl konnte nach dem Abbruch des Befehlstimeouts nicht abgeschlossen werden.

0x100A

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Festlegen des Dequeuezeigers beim Festlegen des Dequeuezeigers nach Abschluss des Endpunkts.

0x100B

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Beenden des xHCI-Controllers während der Wiederherstellung zum Zurücksetzen.

0x100C

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Die Firmware im xHCI-Controller wird nicht unterstützt. Der xHCI-Treiber wird auf diesem Controller nur geladen, wenn die Firmware aktualisiert wird.

0x100D

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller wurde als physisch entfernt erkannt.

0x100E

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Treiber erkennt einen Fehler auf einem streamfähigen Endpunkt.

0x100F

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Die Firmware im xHCI-Controller ist veraltet. Der xHCI-Treiber funktioniert weiterhin mit diesem Controller, kann jedoch auf einige Probleme stoßen. Ein Firmwareupdate wird empfohlen.

0x1010

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Ein Übertragungsereignis-TRB, das mit einem nicht behandelten Vervollständigungscode abgeschlossen wurde.

0x1011

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller meldete, dass der Ereignisring voll wurde. Der Controller ist auch dafür bekannt, Ereignisse zu löschen, wenn dies geschieht.

0x1012

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller hat einen Befehl in ungeordneter Reihenfolge ausgeführt.

0x1013

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Nach Abschluss des Befehlsabbruchs ist der vom Controller gemeldete Befehlsringzeiger falsch.

0x1014

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Nach dem Aktivieren des Slotabschlusses hat uns der Controller eine ungültige Slot-ID angegeben.

0x1015

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Beim Controller ist ein SetAddress-Befehl mit BSR1 fehlgeschlagen. Das ist unerwartet.

0x1016

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller konnte während eines usbdevice-Resets einen Slot nicht aktivieren. Dies ist unerwartet.

0x1017

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Beim Controller ist ein Endpunktkonfigurationsbefehl fehlgeschlagen, bei dem die Endpunkte deconiert wurden. Das ist unerwartet.

0x1018

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Beim Controller ist ein Befehl zum Deaktivieren des Slots fehlgeschlagen. Das ist unerwartet.

0x1019

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Beim Controller ist ein USB-Befehl zum Zurücksetzen des Geräts fehlgeschlagen. Das ist unerwartet.

0x101A

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Nach dem Zurücksetzen des Endpunkts ist der Befehl "Dequeue Pointer festlegen" fehlgeschlagen.

0x101B

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Befehl zum Zurücksetzen des Endpunkts xHCI hat einen nicht behandelten Vervollständigungscode zurückgegeben.

0x101C

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler bei D0Entry für xHCI.

0x101D

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim vorübergehenden Löschen und Hinzufügen eines Streamendpunkts (als zwei Befehle) beim Verwenden des Befehls Endpunkt konfigurieren anstelle von Set Dequeue Pointer während der Anforderungsabbruch.

0x101E

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller gab einen Transferabschluss an, der für den Controller nicht ausstehend war. EventData == 1 (Das Deleiten des Zeigers des Übertragungsereignis-TRB hätte eine Fehlerüberprüfung verursacht)

0x101F

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller gab einen Transferabschluss an, der für den Controller nicht ausstehend war. EventData == 0 (logische Adresse im Übertragungsereignis TRB nicht übereinstimmend)

0x1020

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Der Controller gab einen Transferabschluss an, der für den Controller nicht ausstehend war. EventData == 0 (logische Adresse im Übertragungsereignis TRB nicht übereinstimmend) Der Übertragungsereignis-TRB kann redundant sein (Punkte in der Nähe einer kürzlich abgeschlossenen Anforderung).

0x1021

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim vorübergehenden Löschen und Hinzufügen eines Streamendpunkts (als zwei Befehle) bei Verwendung des Befehls Endpunkt konfigurieren als Teil des Zurücksetzens eines Endpunkts, der nicht angehalten wurde.

0x1022

XHCI_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler beim Löschen und Hinzufügen desselben Endpunkts (als ein Befehl).

0x3000

USBHUB3_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Ein falscher Hub wurde vom Hubtreiber erfolgreich zurückgesetzt.

0x3001

USBHUB3_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Ein falscher Hub konnte vom Hubtreiber nicht erfolgreich zurückgesetzt werden.

0x3002

USBHUB3_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Ein nicht funktionsfähiger SuperSpeed-Hub wurde vom Hubtreiber deaktiviert.

0x3003

USBHUB3_LIVEDUMP_CONTEXT

Reserviert

Reserviert

Fehler bei der Enumeration eines USB-Geräts.

Hinweise

Um eine USB-Funktion abzufragen, muss der Clienttreiber WdfUsbTargetDeviceQueryUsbCapability oder USBD_QueryUsbCapability

Um eine verkettete MDL zu senden, muss der Clienttreiber USBD_QueryUsbCapability aufrufen und URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER_USING_CHAINED_MDL oder URB_FUNCTION_ISOCH_TRANSFER_USING_CHAINED_MDL verwenden.

Siehe auch

Universal Serial Bus (USB)

Referenz zu Kernel-Livedumpcode

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