Prev: BSOD while completing the request
Next: WDDM(display) - Questions about build process of path and multiple monitor support
From: Kota on 11 Feb 2010 09:23 Hi, I am using MmMapLockedPagesSpecifyCache function to map my device memory RAM to user area. It is not a security conernt to me to do by this method. I want to support this for a 32 bit application, calls 64 bit driver(64 bit system), I am taking care of 32 bit process detection, In this case, if i uses above function, it returns a PVOID, I am not sure, will get a 32/64 bit pointer, but PVOID is 64 bit in 64 bit system? Is there any way to request only 32 bit User pointer from this API? Any coversion of mapping 64 bit userarea pointer to 32 bit different user area pointer? Any other ways to support this in 32 bit process in a 64 bit driver, for getting a 32 bit User address pointer? I have tested once, I received a 32 bit pointer, but i doubt, this will not be a case always. Thanks, kota
From: Scott Noone on 11 Feb 2010 09:27 > Is there any way to request only 32 bit User pointer from this API? > Any coversion of mapping 64 bit userarea pointer to 32 bit different user > area pointer? If the user application is 32bit you'll get a 32bit pointer. See: http://analyze-v.com/?p=227 -scott -- Scott Noone Consulting Associate OSR Open Systems Resources, Inc. http://www.osronline.com "Kota" <Kota(a)discussions.microsoft.com> wrote in message news:A98810BA-5D94-4C9C-A780-E637C06D4CE8(a)microsoft.com... > Hi, > > I am using MmMapLockedPagesSpecifyCache function to map my device memory > RAM > to user area. It is not a security conernt to me to do by this method. > > I want to support this for a 32 bit application, calls 64 bit driver(64 > bit > system), I am taking care of 32 bit process detection, In this case, if i > uses above function, it returns a PVOID, I am not sure, will get a 32/64 > bit > pointer, but PVOID is 64 bit in 64 bit system? > > Is there any way to request only 32 bit User pointer from this API? > Any coversion of mapping 64 bit userarea pointer to 32 bit different user > area pointer? > > Any other ways to support this in 32 bit process in a 64 bit driver, for > getting a 32 bit User address pointer? > > I have tested once, I received a 32 bit pointer, but i doubt, this will > not > be a case always. > > Thanks, > kota
From: Maxim S. Shatskih on 11 Feb 2010 13:05
> Any other ways to support this in 32 bit process in a 64 bit driver, for > getting a 32 bit User address pointer? Return the 64bit pointer to user mode, and, in 32bit app, just truncate the upper 32 bits. -- Maxim S. Shatskih Windows DDK MVP maxim(a)storagecraft.com http://www.storagecraft.com |