[Windows 7] Fehler: MULTIPLE_IRP_COMPLETE_REQUESTS

OP (Firma: dm2sh) #2914106
Lesenswert?

Hallo,

ich habe heute folgende Blue-Screen-Fehlermeldung erhalten:
MULTIPLE_IRP_COMPLETE_REQUESTS

http://msdn.microsoft.com/en-us/library/ff558982%28v=VS.85%29.aspx

Einzelheiten siehe Anhang. Den Speicherdump kann ich bei Bedarf noch 
hochladen (800 MB).

Ich habe die Fehlermeldung erhalten, nachdem ich im Firefox:
44.225.32.171:5198
eingegeben hatte, obwohl kein Netzwerkabel angesteckt war und WLAN 
deaktiviert war.

System: Windows 7 Professsional 64 Bit, Lenovo W500

Welcher Treiber ist nun schuld und wie kann ich solche Probleme in 
Zukunft unter Windows verhindern?
Angehängte Dateien:
Gast #2914440
Lesenswert?

>> Der Bluescreen verrät oftmals den vermuteten Treibernamen.
Diesmal nicht. Siehe Anhang.

>>> Welcher Treiber ist nun schuld und wie kann ich solche Probleme in
>>> Zukunft unter Windows verhindern?
>> Das ist ein Treiberfehler.
Wow!

Analysiere den BSOD mal mit BlueScreenView oder WinDbg.
Es ist oftmals nicht direkt der Treiber sondern der Aufrufer. Hier 
vermutllich irgend eine Lenovo Wlan Software die den Fehler verursacht.
http://en.wikipedia.org/wiki/WinDbg

Stefan
#2914724
Lesenswert?

>Es ist oftmals nicht direkt der Treiber sondern der Aufrufer. Hier
>vermutllich irgend eine Lenovo Wlan Software die den Fehler verursacht.
>http://en.wikipedia.org/wiki/WinDbg

Was - eine normale SW soll daran schuld sein? Nöö. Der Treiber muß sowas 
abfangen, falls da ungültige Parameter irgendwie übergeben werden. Da 
sollte er einen entsprechenden Errror zurückgeben, aber nicht einfach 
damit ins Verderben rennen.
#2914814
Lesenswert?

@Uhu Uhuhu (uhu)

>> Was - eine normale SW soll daran schuld sein? Nöö.

>Nein, das garantiert nicht. Aber es muß auch nicht der Treiber die
>Ursache sein, der im BSOD angezeigt wird - das ist nur derjenige, in dem
>das Problem aufgefallen ist.

Jo. Deswegen schrieb ich auch "vermuteter" Treiber in meinem ersten 
Update.
Gast #2915037
Lesenswert?

>>Was - eine normale SW soll daran schuld sein? Nöö.
...
>> Nein, das garantiert nicht.

Na dann teste mal PL2303/CP210X/FTDI232, ReadFile-OverlappedIO
in eigenem Thread, mit HasOverlappedIoCompleted warten.
Zweiten Thread starten. Selbst 'erfolgreich' getestet!
Ergibt BSOD mit MULTIPLE_IRP_COMPLETE_REQUESTS 0x00000044.

Also garantiert nicht?

Stefan
Gast #2915051
Lesenswert?

>> Es kann auch was mit dem Prolific-Adapter sein, den ich da zu dem
>> Zeitpunkt dran hatte.

In der Reihenfolge?

halmacpi.dll
ntkrnlpa.exe
ser2pl.sys         <<----------- das ist der Prolific
Wdf01000.sys

Siehe meinen vorigen Post.

Stefan
#2916316
Lesenswert?

@Stefan (Gast)

>>>Was - eine normale SW soll daran schuld sein? Nöö.
>...
>>> Nein, das garantiert nicht.

>Na dann teste mal PL2303/CP210X/FTDI232, ReadFile-OverlappedIO
>in eigenem Thread, mit HasOverlappedIoCompleted warten.
>Zweiten Thread starten. Selbst 'erfolgreich' getestet!
>Ergibt BSOD mit MULTIPLE_IRP_COMPLETE_REQUESTS 0x00000044.

>Also garantiert nicht?

Garantiert. Das ist trotzdem Treiberproblem, denn ein Treiber hat dafür 
zu sorgen, daß er das, was er in den Hals bekommt, sauber "händelt".
Die Software auf Userlevel kann höchstens der Trigger sein, der so einen 
Bug aufdeckt.
Prolific-Adapter scheinen ohnehin mit dem Originaltreiber nicht sauber 
zu funktionieren. Hatte ich auch schon vor etlichen Jahren mal versucht, 
solch einen Adapter in XP zum Laufen zu bringe, hatte aber immer nur 
nicht-ansprechbare COM-Schnittstellen presentiert. Erst mit einem rel. 
neuen Treiber gings dann endlich (hatte ich auch schon hier in µc.net 
des öffteren gelesen).
Gast #2916842
Lesenswert?

Jens G. schrieb:
> Garantiert. Das ist trotzdem Treiberproblem, denn ein Treiber hat dafür
> zu sorgen, daß er das, was er in den Hals bekommt, sauber "händelt".
> Die Software auf Userlevel kann höchstens der Trigger sein, der so einen
> Bug aufdeckt.
> Prolific-Adapter scheinen ohnehin mit dem Originaltreiber nicht sauber
> zu funktionieren. Hatte ich auch schon vor etlichen Jahren mal versucht,
> solch einen Adapter in XP zum Laufen zu bringe, hatte aber immer nur
> nicht-ansprechbare COM-Schnittstellen presentiert.

Hmm, dann hättest Du aber das Betriebssystem wechseln müssen.

Wdf01000.sys :
Betriebssystem Microsoft® Windows®
Kernelmodustreiber-Frameworklaufzeit

der hat ja schliesslich die Exception geworfen.
Das Problem ist eher beim WDF zu suchen. Unter Windows XP lief das alles 
deutlich sauberer. Im Internet sind in diesem Zusammenhang Probleme mit 
Treibern für verschiedene Geräte von mehreren Herstellen zu finden. Wie 
gesagt ich konnte den Fehler mit PL2303/CP210X/FTDI232 nachvollziehen. 
Ich dachte auch erst es liegt am Prolific Treiber. Seitdem ich die 
Software überarbeitet habe tut alles prima tun.

Stefan
Stefan
#2917695
Lesenswert?

>http://msdn.microsoft.com/en-us/library/windows/ha...

>Es geht nicht um einen Treiber, es geht um gaaaanz viele verschiedene!

Und was soll der Link da jetzt? Der hilft doch sowieso nicht.
Und ob es um einen oder mehrere Treiber da geht, ist eher Wurst bei der 
Frage, ob ein Userlevel-Programm die Ursache sein kann.

Wenn die Exception einen Treiber wie Wdf01000.sys anzeigt, dann ist dies 
nur der vermutete Treiber, bzw. der hat ein Problem als erster bemerkt. 
Das Problem kann aber schon durch andere Teile im Kernel entsprechend 
vorbereitet worden sein, falls der Treiber auf entsprechende Daten 
zugreifen muß.
Gast #2918242
Lesenswert?

ich schrieb :
>> Das Problem ist eher beim WDF zu suchen.
>> Im Internet sind in diesem Zusammenhang Probleme mit
>> Treibern für verschiedene Geräte von mehreren Herstellen zu finden
>> Es geht nicht um einen Treiber, es geht um gaaaanz viele verschiedene!

google mal 'Wdf01000.sys MULTIPLE_IRP_COMPLETE_REQUESTS'.
Es scheint ja viele Hersteller zu geben die nicht in der Lage sind
Treiber für die eigene Hardware zu schreiben.


>> Hmm, dann hättest Du aber das Betriebssystem wechseln müssen.
>>>> Wieso ich? Was kann das OS dafür, wenn ein Treiber da nicht will?
>> Und was soll der Link da jetzt? Der hilft doch sowieso nicht.

Na ja wenn's einen interessiert schon. Hilft das vielleicht?
http://msdn.microsoft.com/en-us/library/windows/hardware/ff544208(v=vs.85).aspx

>> Und ob es um einen oder mehrere Treiber da geht, ist eher Wurst bei
>> der Frage, ob ein Userlevel-Programm die Ursache sein kann.

Es ist nicht der 'Fehler' des Programms. Es dürfte aber weniger 
aufwändig sein auf das den crash verursachende Programm zu verzichten 
als sich schnell mal ein fehlerfreies Betriebssystem zu schreiben. Wenn 
man Zugriff auf die Sourcen des Programms hat kann man auch drumherum 
programmieren, wie ich auch schon schrieb.

Bei mir waren es vermutlich zwei Fehler bei MS.
1. die unglückliche Implementierung des Macros 
HasOverlappedIoCompleted(). 2. eine WDF lib von MS die Daten nicht, wie 
von Dir gefordert, überprüft.

Stefan

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren