Tech Support > Microsoft Windows > Drivers > KMDF: forwarding requests from PDOs to parent FDO
KMDF: forwarding requests from PDOs to parent FDO
Posted by Maxim on October 22nd, 2007


I have an FDO device that creates several static PDOs.
These PDOs need to handle some requests themselves and forward
the rest to the FDO. I've tried creating an IOTARGET for the parent
device based on PDEVICE_OBJECT retrieved from parent device - create
and open calls succeed. In the queue-handling function, I call
WdfRequestFormatRequestUsingCurrentType and then WdfRequestSend.
Both calls succeed, yet after that the FDO and the PDO stop responding
altogether.

What am I doing wrong?

Posted by Doron Holan [MSFT] on October 22nd, 2007


did you add an EvtIo handler in the FDO for these fwd'ed requests?

--
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.


"Maxim" <Maxim@discussions.microsoft.com> wrote in message
news:4DD85926-6B31-4E81-8EE7-8A7497A85ED1@microsoft.com...

Posted by Maxim on October 22nd, 2007


yes, absolutely. i've been using the FDO successfully for a while.
i think i might have one clue...

documentation for WdfRequestFormatRequestUsingCurrentType
says it is used for sending requests to local io target. i am not using a
local IO target. does that mean i cannot resend a request but rather have to
create a new request and send that?


"Doron Holan [MSFT]" wrote:


Posted by Doron Holan [MSFT] on October 22nd, 2007


you can use FormatRequestUsingCurrentType without a problem when sending it
to the FDO. did you set a completion routine before sending it? if not,
you need to

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.


"Maxim" <Maxim@discussions.microsoft.com> wrote in message
news:E52769F9-CABA-436A-A474-AC559390C4B0@microsoft.com...

Posted by Maxim on October 24th, 2007


Thanks, Doron! That did it. Of course, inside the completion routine I
actually had to complete the request. Didn't realize that each driver has to
do its on complete in this case... Problem resolved.

"Doron Holan [MSFT]" wrote:

Posted by Maxim on October 24th, 2007


Corrections in prev post: on=own, driver=device


Similar Posts