Strange FileObjects passed thru the MUP pseudo Fast I/O routines

Good day.

I wrote some test driver which tracks calls to pseudo Fast I/O routines
such as XxxFileForNtCreateSection, XxxForModWrite and XxxForCcFlush.
But I saw some strange behavior when requests came from network
redirectors. Normally I received file objects which had a pointer to
one of MrxSmb device objects (LanmanRedirector) but occasionally I
received file objects which referred to the MUP driver object. I
checked the FastIoDispatch field of the MUP driver object and saw that
it was NULL. But how can the MUP driver (as I understand and as I have
read in Nagar’s book, it only dispatches UNC requests to a proper
redirector) run file objects thru the mini-redirector (MrxSmb) or
possibly thru the redirector (RDBSS) Fast I/O dispatch table? Any
suggestions will be highly appreciated.

Many thanks beforehand,

Konstantin Manurin

The MUP driver implements the DFS functionality; this is something that
was added subsequent to NT 4.0 and thus would not be present in the FS
book.

Regards,

Tony

Tony Mason

Consulting Partner

OSR Open Systems Resources, Inc.

http://www.osr.com

Looking forward to seeing you at the next OSR File Systems class in
Boston, MA April 18-21, 2006 (note new date - MS scheduled plugfest the
same week again.)


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Konstantin Manurin
Sent: Friday, March 17, 2006 5:52 AM
To: ntfsd redirect
Subject: [ntfsd] Strange FileObjects passed thru the MUP pseudo Fast I/O
routines

Good day.

I wrote some test driver which tracks calls to pseudo Fast I/O routines
such as XxxFileForNtCreateSection, XxxForModWrite and XxxForCcFlush. But
I saw some strange behavior when requests came from network redirectors.
Normally I received file objects which had a pointer to one of MrxSmb
device objects (LanmanRedirector) but occasionally I received file
objects which referred to the MUP driver object. I checked the
FastIoDispatch field of the MUP driver object and saw that it was NULL.
But how can the MUP driver (as I understand and as I have read in
Nagar’s book, it only dispatches UNC requests to a proper redirector)
run file objects thru the mini-redirector (MrxSmb) or possibly thru the
redirector (RDBSS) Fast I/O dispatch table? Any suggestions will be
highly appreciated.

Many thanks beforehand,
Konstantin Manurin


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@osr.com
To unsubscribe send a blank email to xxxxx@lists.osr.com



Tony, thank you very much for your valuable clue.

Now I know that it’s a new system functionality. But then how can I
process such file objects to pass these requests down to respective
lower Fast I/O handlers? This file objects refer to a quite different
driver object and thus I cannot obtain the “right” driver object
pointer. Are there any articles about MUP, redirectors and
mini-redirectors functionality and especially their interaction?

Once again many thanks,

Best regards,

Konstantin Manurin

namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="State">
namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="City"> namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place">




style=“font-size: 10pt; font-family: Arial; color: navy;”>The MUP
driver implements the DFS
functionality; this is something that was added subsequent to NT 4.0
and thus
would not be present in the FS book.<o:p></o:p>

style=“font-size: 10pt; font-family: Arial; color: navy;”><o:p> </o:p>

style=“font-size: 10pt; font-family: Arial; color: navy;”>Regards,<o:p></o:p>

style=“font-size: 10pt; font-family: Arial; color: navy;”><o:p> </o:p>

style=“font-size: 10pt; font-family: Arial; color: navy;”>Tony<o:p></o:p>

style=“font-size: 10pt; font-family: Arial; color: navy;”><o:p> </o:p>

style=“font-size: 10pt; font-family: Arial;”>Tony Mason<o:p></o:p>

style=“font-size: 10pt; font-family: Arial;”>Consulting Partner<o:p></o:p>

style=“font-size: 10pt; font-family: Arial;”>OSR Open Systems
Resources, Inc.
<o:p></o:p>

style=“font-size: 10pt; font-family: Arial;”> href=“http://www.osr.com”>http://www.osr.com<o:p></o:p>

size=“3”> <o:p></o:p>

color=“navy” face=“Courier New” size=“2”> style=“font-size: 10pt; font-family: “Courier New”; color: navy;”>Looking
forward to seeing you at the next OSR File Systems class in
style=“font-size: 10pt; font-family: “Courier New”;”>ns0:place w:insauthor=“Tony Mason” w:insdate=“2006-03-17T12:25:00Z”
w:endinsauthor=“Tony Mason” w:endinsdate=“2006-03-17T12:25:00Z”>ns0:city w:insauthor=“Tony Mason” w:insdate=“2006-03-17T12:25:00Z”
w:endinsauthor=“Tony Mason” w:endinsdate=“2006-03-17T12:25:00Z”>st1:place w:st=“on”><st1:city w:st=“on”> style=“color: navy;”>Boston</st1:city> style=“color: navy;”>, <st1:state w:st=“on”>MA</st1:state></st1:place> color=“navy”> April </ns0:city></ns0:place> color=“navy”>18-21, 2006 (note new date -
MS scheduled
plugfest the same week again.)
<o:p></o:p>

color=“black” face=“Times New Roman” size=“3”> style=“font-size: 12pt; color: windowtext;”>


style=“font-size: 10pt; font-family: Tahoma; color: windowtext; font-weight: bold;”>From: color=“black” face=“Tahoma” size=“2”> style=“font-size: 10pt; font-family: Tahoma; color: windowtext;”>
xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] style=“font-weight: bold;”>On
Behalf Of
Konstantin Manurin

Sent: Friday, March
17, 2006 5:52
AM

To: ntfsd redirect

Subject: [ntfsd]
Strange
FileObjects passed thru the MUP pseudo Fast I/O routines
color=“black”><o:p></o:p>

size=“3”><o:p> </o:p>

style=“font-size: 10pt; font-family: Arial;”>Good day.

I wrote some test driver which tracks calls to pseudo Fast I/O routines
such as
XxxFileForNtCreateSection, XxxForModWrite and XxxForCcFlush. But I saw
some
strange behavior when requests came from network redirectors. Normally
I
received file objects which had a pointer to one of MrxSmb device
objects
(LanmanRedirector) but occasionally I received file objects which
referred to
the MUP driver object. I checked the FastIoDispatch field of the MUP
driver
object and saw that it was NULL. But how can the MUP driver (as I
understand
and as I have read in Nagar’s book, it only dispatches UNC requests to
a proper
redirector) run file objects thru the mini-redirector (MrxSmb) or
possibly thru
the redirector (RDBSS) Fast I/O dispatch table? Any suggestions will be
highly
appreciated.

Many thanks beforehand,

Konstantin Manurin


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@osr.com

To unsubscribe send a blank email to xxxxx@lists.osr.com <o:p></o:p>

> I wrote some test driver which tracks calls to pseudo Fast I/O routines such
as

XxxFileForNtCreateSection, XxxForModWrite and XxxForCcFlush. But I saw

Any need in this? These routines are provided only to allow some lock-acquire
calls to go via the proper lock priority path. No other need in them.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com