RE: Is there an error in the OSR FAQ? (Buffered VS unbuff ered IO)

Don,

I read back through the FAQ and I read it differently than you do:

“For applications programs, most IRPs are still buffered. The operations for
which this is not necessarily the case are those for which larger amounts of
data are transferred. These are:…”

Thus, I read that those IRPs are *NOT* always buffered. However, I did some
further digging and confirmed there is an error here - IRP_MJ_QUERY_SECURITY
and IRP_MJ_SET_SECURITY are NEVER buffered - they are always METHOD_NEITHER.

Quota IRPs should be included on this list as well. I will update the FAQ.

Regards,

Tony

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

-----Original Message-----
From: xxxxx@pinnaclesys.com [mailto:xxxxx@pinnaclesys.com]
Sent: Tuesday, July 01, 2003 1:17 PM
To: File Systems Developers
Subject: [ntfsd] Is there an error in the OSR FAQ? (Buffered VS unbuffered
IO)

The OSR FAQ states that that the following IRPs are always buffered

IRP_MJ_READ
IRP_MJ_WRITE
IRP_MJ_QUERY_SECURITY
IRP_MJ_SET_SECURITY
IRP_MJ_QUERY_EA
IRP_MJ_SET_EA
IRP_MJ_DIRECTORY_CONTROL

And, on a per control-code basis:

IRP_MJ_DEVICE_CONTROL
IRP_MJ_INTERNAL_DEVICE_CONTROL
IRP_MJ_FILE_SYSTEM_CONTROL

After examing the IFS documentation, it would appear to me that there
might be two errors here (of course the documentation could be wrong or I
could be crazy too).

The IFS documentation seems to indicate that the SECURITY IRPS are always
buffered. It also seems to indicate that the QUOTA IRPs are not always
buffered. Does anyone know where the truth lies?

Thanks,

Don


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

Tony,

So let me see if I have gotten this straight.

IRP_MJ_SET_SECURITY and IRP_MJ_QUERY_SECURITY are always method neither.

IRP_MJ_READ, IRP_MJ_WRITE
IRP_MJ_QUERY_QUOTA, IRP_MJ_SET_QUOTA
IRP_MJ_QUERY_EA, IRP_MJ_SET_EA
IRP_MJ_DIRECTORY_CONTROL

And, on a per control-code basis:
IRP_MJ_DEVICE_CONTROL, IRP_MJ_INTERNAL_DEVICE_CONTROL
IRP_MJ_FILE_SYSTEM_CONTROL
Depend on the Device Object Flags

All the other calls are always buffered.

Is this correct?

Thanks,
Don

Don,

I read back through the FAQ and I read it differently than you do:

“For applications programs, most IRPs are still buffered. The operations for
which this is not necessarily the case are those for which larger amounts of
data are transferred. These are:…”

Thus, I read that those IRPs are *NOT* always buffered. However, I did some
further digging and confirmed there is an error here - IRP_MJ_QUERY_SECURITY
and IRP_MJ_SET_SECURITY are NEVER buffered - they are always METHOD_NEITHER.

Quota IRPs should be included on this list as well. I will update the FAQ.

Regards,

Tony

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

-----Original Message-----
From: xxxxx@pinnaclesys.com [mailto:xxxxx@pinnaclesys.com]
Sent: Tuesday, July 01, 2003 1:17 PM
To: File Systems Developers
Subject: [ntfsd] Is there an error in the OSR FAQ? (Buffered VS unbuffered
IO)

The OSR FAQ states that that the following IRPs are always buffered

IRP_MJ_READ
IRP_MJ_WRITE
IRP_MJ_QUERY_SECURITY
IRP_MJ_SET_SECURITY
IRP_MJ_QUERY_EA
IRP_MJ_SET_EA
IRP_MJ_DIRECTORY_CONTROL

And, on a per control-code basis:

IRP_MJ_DEVICE_CONTROL
IRP_MJ_INTERNAL_DEVICE_CONTROL
IRP_MJ_FILE_SYSTEM_CONTROL

After examing the IFS documentation, it would appear to me that there
might be two errors here (of course the documentation could be wrong or I
could be crazy too).

The IFS documentation seems to indicate that the SECURITY IRPS are always
buffered. It also seems to indicate that the QUOTA IRPs are not always
buffered. Does anyone know where the truth lies?

Thanks,

Don


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