Re[2]: Fast I/O &. IRP_MJ_xxx

Hello Tony,

Thanks a lot


Roman Kudinov

mailto:xxxxx@rbcmail.ru

Friday, July 23, 2004, 2:05:42 PM, you wrote:

TM> Fast I/O read and write operate against the cache in all of the Windows
TM> file systems. A 3rd party file system could do something “tricky” here,
TM> I suppose, but in our implementations we obey this same rule - no
TM> caching, no fast I/O.

TM> Regards,

TM> Tony

TM> Tony Mason
TM> Consulting Partner
TM> OSR Open Systems Resources, Inc.
TM> http://www.osr.com

TM> -----Original Message-----
TM> From: xxxxx@lists.osr.com
TM> [mailto:xxxxx@lists.osr.com] On Behalf Of Roman Kudinov
TM> Sent: Friday, July 23, 2004 5:51 AM
TM> To: ntfsd redirect
TM> Subject: [ntfsd] Fast I/O &. IRP_MJ_xxx

TM> Hi,

TM> As it comes from OSR FAQ there is no description of Fast I/O calls and
TM> I just need to pass them through without any processing.
TM> However I need to block I/O operations which can modify information on
TM> disk on some conditions for a particular period of time. As I
TM> understand I can do it by handling regular IRP_MJ_xxx calls and doesn’t
TM> need to think about Fast I/O at all. Am I right?

TM> P.S.
TM> I’ve used FileMon and found that for every Fast I/O call, which is
TM> interesting for me a corresponding IRP_MJ_xx call is received by the
TM> filter, for example FileMon intercepts FASTIO_WRITE sent by the process
TM> and then IRP_MJ_WRITE sent by the system.

TM> Is it always true?

TM> –
TM> Roman

TM> mailto:xxxxx@rbcmail.ru

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

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

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

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

> However I need to block I/O operations which can modify information

on disk on some conditions for a particular period of time.

Block CREATE requests which ask for write access. This is the only really
possible mean of achieving this task.

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

>> However I need to block I/O operations which can modify information

> on disk on some conditions for a particular period of time.

MSS> Block CREATE requests which ask for write access. This is the only really
MSS> possible mean of achieving this task.

Unfortunately a file can be opened already at the moment I need to
block it.
Is there any danger in blocking of IRP_MJ_WRITE request? I tried to
do it and in test mode it worked fine. But I can suppose that issues
may appear when it will work with real file operations with caching
and so on.


Roman Kudinov

mailto:xxxxx@rbcmail.ru

> Is there any danger in blocking of IRP_MJ_WRITE request?

You can end with “Lost Delayed Write Data” popup.

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

Do you mean blocking it by failing the write or by pending the write for
a period of time? Failing it has problems as Maxim pointed out.

Pending the write is reasonable as long as you don’t pend it for too
long and make the IRP cancelable. I would also be concerned if you are
doing this for a large number of files at the same time as you might
deadlock the system.

If you are going to do this I would recommend that you use the cancel
safe queue support provided by the kernel.

Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided “AS IS” with no warranties, and confers no
rights.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Roman Kudinov
Sent: Monday, July 26, 2004 12:49 AM
To: Windows File Systems Devs Interest List
Subject: Re[2]: [ntfsd] Fast I/O &. IRP_MJ_xxx

> However I need to block I/O operations which can modify information
> on disk on some conditions for a particular period of time.

MSS> Block CREATE requests which ask for write access. This is the only
really
MSS> possible mean of achieving this task.

Unfortunately a file can be opened already at the moment I need to
block it.
Is there any danger in blocking of IRP_MJ_WRITE request? I tried to
do it and in test mode it worked fine. But I can suppose that issues
may appear when it will work with real file operations with caching
and so on.


Roman Kudinov

mailto:xxxxx@rbcmail.ru


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

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