Re: VirtualLock Question / MTRRs

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Slava M. Usov (stripit.slough_at_gmx.net)
Date: 03/01/04


Date: Mon, 1 Mar 2004 14:54:27 +0100


"Phil Barila" <PBarila@Barila.com> wrote in message
news:fJSdndSIrutrNt_dRVn-hA@4dv.net...

> It doesn't happen very often (almost never!), but you've made a mistake,
> Slava. DIRECT_IO buffers are paged and locked by the IO Manager.

Yes, yes, indeed. However, I wanted to stress the point that the MDL must
be either converted to a system address space region [thus 'doubly' mapped]
with MmGetSystemAddressForMdl(Safe)() or set in the map registers with
MapTransfer(). Either way, the MDL cannot be used directly in most cases,
and when it can it is more efficient to use the 'neither' model.

S



Relevant Pages

  • linux-next: manual merge of the trivial tree with the v4l-dvb tree
    ... misspelling of "definition" in comments") from the trivial tree. ... + * This structure is used by CPU to provide completed MDL & buffers information. ... - * firmware, but its defintion needs to be here, instead of in cx18-scb.h, ...
    (Linux-Kernel)
  • Re: ReadFileScatter and WriteFileGather
    ... Page-aligned page-size buffers can be passed down to bare metal without ... contiguity of the physical memory it gets locked into that matters. ... space and give the driver a MDL describing the physical pages. ... One example is a DB server that must cache disk data without using the OS ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Assert failure in W2K3 Checked
    ... When calling TDI send routines it is essential that the SendLen parameter ... counts at MdlAddr - which is a "Pointer to an MDL, ... In my calls to TdiBuildSend I actually calculate the SendLen by walking the ... > the send length I pass to TDI is larger than the buffers I pass? ...
    (microsoft.public.development.device.drivers)
  • Re: VirtualLock Question / MTRRs
    ... Like creating an MDL off the user ... when this information is in the ioctl code ... MDLs are created in kernel mode, by IO Manager [even though you might create ... I would suggest that you obtain a copy of DDK and study the design guide, ...
    (microsoft.public.win32.programmer.kernel)
  • Re: WDF-newbie: Sharing memory between application and driver?
    ... manager, and the MDL is at Irp->MdlAddress. ... The OP made it clear that he passes a *pointer* to a driver, so that, ... No need for it - once we know that virtual memory, described by MDL, ... I believe the OP writes a driver that is tightly coupled with his ...
    (microsoft.public.development.device.drivers)