KMDF has a send or format pattern. If you call
WdfIoTargetSendXxxSynchronously, you are sending a synchronous i/o in
all cases. If want to send an async i/o, you call
WdfIoTargetFormatForXxx and then call WdfRequestSend. As Dan has noted,
you can make this async i/o synchronous by specifying
WDF_REQUEST_SEND_OPTION_SYNCHRONOUS in the send options structure.
Almost all other KMDF DDIS are synchronous, the ones that are not let
you provide a callback which is invoked at the appropriate time (like
the execution function on a DMA transaction). WdfFdoQueryForInterface()
is most certainly synchronous (and if it weren’t, you would have to ask
yourself, “well how would it work if it were async? How would I get my
final answer”)
d
– I can spell, I just can’t type.
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Dan Kyler
Sent: Thursday, July 20, 2006 9:05 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] What is the equivalent for
IoBuildSynchronousFsdRequest in KMDF?
A1. Specify WDF_REQUEST_SEND_OPTION_SYNCHRONOUS in the request send
options.
A2. From the docs, this certainly appears to be a synchronous call.
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Praveen Kumar
Amritaluru
Sent: Thursday, July 20, 2006 9:37 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] What is the equivalent for IoBuildSynchronousFsdRequest
in KMDF?
Hi,
There is an option while building IRP using
IoBuildSynchronousFsdRequest to
specify synchronization event
that driver would wait on after sending the IRP down the stack.
Q1. Is there an equivalent of such a feature in KMDF?
Q2. Basically I would like to call WdfFdoQueryForInterface() to get
parent bus interface.
Is there a possibility of this function returning
STATUS_PENDING
and if so,
is there a sync event as provided by WDM to handle this, ie wait in
driver until I get reply for WdfFdoQueryForInterface() ?
Thanks,
-Praveen
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer