Using own Mdl

i am trying to intercept paging writes and send down my own mdl describing
my own buffer. i have encountered page faults after iocalldriver even though
my buffer is allocated from nonpagedpool. anyone knows the proper way to do
this so as not to get page faults? like how to allocate the buffer, how to
create the mdl, etc…

Ho Mun Chuen
@@ “Not everything that counts can be counted;
<” )~ and not everything that can be counted counts"
//\ … Albert Einstein

> i am trying to intercept paging writes and send down my own mdl describing

my own buffer. i have encountered page faults after iocalldriver even
though
my buffer is allocated from nonpagedpool. anyone knows the proper way to

MDLs for paging IO are built not by IoAllocateMdl/MmCreateMdl. They are
built in a special way by the MM - for instance, the inpage MDL is a tail of
the
larger structure called “inpage support block” which is used to resolve
collided page faults.

Max

that means i cannot use my own mdl? any way to touch that mdl?

initially i used mmbuildmdlfornonpagedpool with my mdl and buffer and it
page faults, but after i change to use mmprobeandlockpages with my mdl and
buffer, i have not encountered page faults. i just xor the data in the
buffer with 0x00 (ie. no change), and it seems to work for notepad, word,
excel and powerpoint. however, wordpad saved the wrong data.
comments?

Ho Mun Chuen
Advanced Technology Solutions Centre
@@ “Not everything that counts can be counted;
<” )~ and not everything that can be counted counts"
//\ … Albert Einstein
----- Original Message -----
From: Maxim S. Shatskih
To: File Systems Developers
Sent: Sunday, June 11, 2000 2:27 AM
Subject: [ntfsd] Re: Using own Mdl

> i am trying to intercept paging writes and send down my own mdl describing
> my own buffer. i have encountered page faults after iocalldriver even
though
> my buffer is allocated from nonpagedpool. anyone knows the proper way to

MDLs for paging IO are built not by IoAllocateMdl/MmCreateMdl. They are
built in a special way by the MM - for instance, the inpage MDL is a tail of
the
larger structure called “inpage support block” which is used to resolve
collided page faults.

Max


You are currently subscribed to ntfsd as: xxxxx@pmail.ntu.edu.sg
To unsubscribe send a blank email to $subst(‘Email.Unsub’)