Hello,
My device driver is allocating a continuous 32 MB kernel space.
This space is mapped to user space using the following mechanism:
-
Application is sending IOCTL request to the device driver.
-
PVOID UserSpaceCommonBuffer = MmMapLockedPagesSpecifyCache (CommnBufferMdl, UserMode, MmCached, NULL, FLASE, NormalPagePriority)
-
The value of UserSpaceCommonBuffer is less than 4GB (e.g : 0xA050000)
-
This value is returned to the application in the IOCTL reply.
But when I’m trying to access this address from the application, I’m getting access violation.
Using the V.S 2010 debugger, I can see that this space is: ???
I also tried an x64 version of the user space application and got the same results.
The O.S is windows 7-64.
Under windows server 2003-32, server 2008-64, server 2012-64, this code works great.
What can cause this problem ? Can it caused by BIOS ?
Thank you,
Zvika