Hi Folks,
I am stuck on pnpdtest Rebalance(FailRestart) test.
There is an error “PNPFILTR:
ERROR: A lower driver has failed IRP_MN_QUERY_STOP_DEVICE.Check to see if it is due to a valid reason. PDO = 0x81FD7300.PNPFILTR: FilterQueryStop returning 0xC0000001 for stack with PDO 0x81FD7300”
and then an assert “Assert: Device node status not as expected: problem code 0 File=d:\w7rtm\base\pnp\tools\pnpdtest\user\pnpdtest.cpp, Line=288”.
In the end, the result displays as “Fail” for the “FailRestart” testing.
I don’t know whether the failure relates to the failure of IRP_MN_QUERY_STOP_DEVICE. But I also test the MS standard serial port(com1), it cocounters exactly the same failure.
I am confused with that. Since Com1 even fails the test, could I assume that the bug may be rooted in PnpDTest.exe.
Thanks in advance for any reply.
Joseph
COM1 (the serial.sys driver really) will fail a query stop if there is an open handle to the port, otherwise it will succeed. this is not a bug in pnpdtest. it is OK to fail query stop for some various reasons, that is why the failure came with this message “Check to see if it is
due to a valid reason”. are you failing query stop?
d
Thank you Doron for your help.
Yes, I am failing query stop. And COM1 still fails a query stop, although there is not open handle to it at all.
P.S. ------All the rebanlce tests could be passed excetp the “FailRestart”.
why are you failing query stop? how do you know there is no open handle to com1? the source for serial.sys is in the wdk. you can clearly see that it fails query stop only when there is an open handle
d
why are you failing query stop?
-------This is what I am confused with. The test reports an error after CANCEL_STOP_DEVICE IRP, while device node changes from
State = DeviceNodeQueryStopped (0x309)
Previous State = DeviceNodeStarted (0x308)
StateHistory[01] = DeviceNodeStarted (0x308)
to
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeStarted (0x308)/////////////which I think it should be DeviceNodeQueryStopped (0x309)
StateHistory[02] = DeviceNodeQueryStopped (0x309)
StateHistory[01] = DeviceNodeStarted (0x308)
how do you know there is no open handle to
com1?
---------Because if there is an open handle to com1, all other pnpdtest( such as, Test Remove and so on) would not be executed any more. That is, they can pass the these pnp test only when there is no open handle to com1. And actually, I could pass all the pnp test except the “Fail Restart”, and so do COM1.
It says the “device node status not as expected: problem code 0”. I wonder what status is expected by it.