Physical Address

How do I get the physical address of a buffer in a WDM driver.
Do I use MmProbeAndLockPages and then MmGetMdlPfnArray to get the physical addresses?
Thanks,
Anthony Malizia


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

The only legal way, is to call MapTransferBuffer, either raw as
IoMapTransferBuffer, or through the Dma Adapeter objects MapTransferBuffer
function all. If you’re in NT, then youy have to use IoMapTransferBuffer.

Gary G. Little
Staff Engineer
Broadband Storage, Inc.
xxxxx@broadstor.com

-----Original Message-----
From: Anthony Malizia [mailto:xxxxx@Matrox.COM]
Sent: Wednesday, August 22, 2001 7:45 AM
To: NT Developers Interest List
Subject: [ntdev] Physical Address

How do I get the physical address of a buffer in a WDM driver.
Do I use MmProbeAndLockPages and then MmGetMdlPfnArray to get the physical
addresses?
Thanks,
Anthony Malizia


You are currently subscribed to ntdev as: xxxxx@broadstor.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

> How do I get the physical address of a buffer in a WDM driver.

Why do you need this?

MS considers the only legal mean for getting the physical address is DMA,
and for DMA, there are ->MapTransfer or ->GetScatterGatherList.

Max


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

You may want to do common-buffer DMA. For example, like an OpenGL ICD. The
memory we’re perusing may be off-motherboard. We may want to write a peeper
to monitor the contents of the buffer. We may want to drive the DMA
controller directly from the ICD, or even from its Ring 3 component. I can
think of a variety of situations where I’d like to be able to handle
physical addresses.

And you know what ? If I’m ring 0, I can touch anything! I can even spirit
it away from the OS and make it permanently invisible to it.

Alberto.

-----Original Message-----
From: Maxim S. Shatskih [mailto:xxxxx@storagecraft.com]
Sent: Wednesday, August 22, 2001 4:35 PM
To: NT Developers Interest List
Subject: [ntdev] Re: Physical Address

How do I get the physical address of a buffer in a WDM driver.

Why do you need this?

MS considers the only legal mean for getting the physical address is DMA,
and for DMA, there are ->MapTransfer or ->GetScatterGatherList.

Max


You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com