Hi All,
I am working on a WDM driver and running the Device Path Exerciser.
At the time when the tool is executing the “random IOCTL test” the
ACCESS_VOILATION is raised. All my IOCTLS are using METHOD_BUFFERED and
from documentation it looks to me like for method buffered the
ProbeForRead/Write is not needed.
Just for Trial I added the ProbeForRead And ProbeForWrite in the
code which is always raising a exception for all the IOCTL.
Questions:
-
Do we need to check for the ProbeForRead/Write in buffered IOCTL. ??
I would think that since the IOCTL is buffered the Irp->RequestorMode
will still tell me that it is a UserMode Irp but since the buffers are
allocated in the Kernel. Is this correct??
-
If 1 is correct then why I am getting a ACCESS_VOILATION when the
DevicePathExerciser is run.
Thanks,
-
No - you don’t need to probe buffers for buffered I/O controls
-
The most likely cause is that the DPE tricked you into doing an
illegal access of your buffer. Perhaps it sent down a buffer whose
length wasn’t what you expected, or perhaps it sent an I/O control with
no buffers.
You can figure out why you’re getting an access violation by debugging
your code.
-p
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ajitabh Saxena
Sent: Wednesday, December 06, 2006 1:24 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Device Path Exerciser Problem.
Hi All,
I am working on a WDM driver and running the Device Path Exerciser.
At the time when the tool is executing the “random IOCTL test” the
ACCESS_VOILATION is raised. All my IOCTLS are using METHOD_BUFFERED and
from documentation it looks to me like for method buffered the
ProbeForRead/Write is not needed.
Just for Trial I added the ProbeForRead And ProbeForWrite in the
code which is always raising a exception for all the IOCTL.
Questions:
-
Do we need to check for the ProbeForRead/Write in buffered IOCTL. ??
I would think that since the IOCTL is buffered the Irp->RequestorMode
will still tell me that it is a UserMode Irp but since the buffers are
allocated in the Kernel. Is this correct??
-
If 1 is correct then why I am getting a ACCESS_VOILATION when the
DevicePathExerciser is run.
Thanks,
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