Re: A Multi Serial port driver did not install success on VISTA



if some driver in the stack fails the start irp, you will see a remove pnp irp immediately after start. somebody in the pnp stack is not properly handling a start->stop->start transition

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Simon" <simon@xxxxxxxxxxx> wrote in message news:9E600EFF-853B-40F6-9C42-B4BD7FDC3E8B@xxxxxxxxxxxxxxxx
Hi

I am writing a WDM driver for a PCI Multi serial port device .

The scenario what happend here is describted as below..

My driver received an IRP_MN_STOP_DEVICE at the process of driver booting
stage, and after IRP_MN_STOP_DEVICE has received, an IRP_MN_START_DEVICE was
sent to my driver FDO again immediatelly.

My driver has received the IRP_MN_START_DEVICE request twice, the first
time was at the beginning just when AddDevice rounrine has done. And my
problem is happend at the 2nd IRP_MN_START_DEVICE has received.

A Microsoft engineer told me this is because On Windows Vista the PNP
manager will perform a re-balance to allow other devices to claim resources.
and I receiving an IRP_MN_QUERY_STOP_DEVICE and an IRP_MN_STOP_DEVICE in a
request for me to stop using all of my resources so that the PNP manager can
reclaim them.

My problem is, an exclamation mark was showed on device manager for my
driver.

I have disconnect the interrupts, and Unmap the IO ports during the
IRP_MN_STOP_DEVICE request.

I show the piece of debug message as below..
ITE (PDO) - PNP Request (IRP_MN_START_DEVICE)
ITE (PDO) - PNP Request (IRP_MN_REMOVE_DEVICE)

From the debug message's view point, an IRP_MN_START_DEVICE sent to PDO
and the next an IRP_MN_REMOVE_DEVICE was sent to PDO immediatelly.


I feel this is not correct but do not know why?
Could anybody give me some hint?

Thanks.





--
Simon Liao
Best Regards

.



Relevant Pages