I have found a case where in the a Create Completion callback the
FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is not.
I though there where always the same?
Ken
I have found a case where in the a Create Completion callback the
FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is not.
I though there where always the same?
Ken
Ken,
The only case you should see the FltObjects->FileObject being NULL is when
your filter driver is unloading. When your filter driver unloads filter
manager will drain all the pended operation indicated by the
FLTFL_POST_OPERATION_DRAINING in the Flags field of the post operation
callback. If you are seeing this without this flag set then we can surely
investigate into this issue.
This posting is provided "AS IS" with no warranties, and confers no rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
They are supposed to be the same. Please describe the situation in
detail especially what device you were talking with. Was the FileObject
in the IOPB still valid? Can you reproduce this?
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Monday, April 05, 2004 3:12 PM
To: Windows File Systems Devs Interest List
Subject: [ntfsd] Create COmplete Callback no FIleObject
I have found a case where in the a Create Completion callback the
FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not. I though there where always the same?
Questions? First check the IFS FAQ at
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
How about a crash dump? I made one.
Yes the IOPB was valid, it was while I was unloading the driver.
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 06, 2004 2:14 PM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
They are supposed to be the same. Please describe the situation in
detail especially what device you were talking with. Was the FileObject
in the IOPB still valid? Can you reproduce this?
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Monday, April 05, 2004 3:12 PM
To: Windows File Systems Devs Interest List
Subject: [ntfsd] Create COmplete Callback no FIleObject
I have found a case where in the a Create Completion callback the
FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not. I though there where always the same?
Questions? First check the IFS FAQ at
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
Questions? First check the IFS FAQ at
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
FLTFL_POST_OPERATION_DRAINING Was not set, though I was unloading the
driver. Why would the not be the same, seem like a strange case to make the
MF have to deal with.
Ken
-----Original Message-----
From: Ravinder Thind [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 06, 2004 2:14 PM
To: Windows File Systems Devs Interest List
Subject: Re:[ntfsd] Create COmplete Callback no FIleObject
Ken,
The only case you should see the FltObjects->FileObject being NULL is when
your filter driver is unloading. When your filter driver unloads filter
manager will drain all the pended operation indicated by the
FLTFL_POST_OPERATION_DRAINING in the Flags field of the post operation
callback. If you are seeing this without this flag set then we can surely
investigate into this issue.
This posting is provided "AS IS" with no warranties, and confers no rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called. This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Tuesday, April 06, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
FLTFL_POST_OPERATION_DRAINING Was not set, though I was unloading the
driver. Why would the not be the same, seem like a strange case to make
the MF have to deal with.
Ken
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
I'll look again at the dump and see what I missed.
What is the reason for it being NULL in this case? Since its in the Iopb why
not put it in the FltObjects. Is the Iopb file object valid? I would think
the FM would do that prior to making the callback. What is the reason for it
being NULL?
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called. This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Tuesday, April 06, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
FLTFL_POST_OPERATION_DRAINING Was not set, though I was unloading the
driver. Why would the not be the same, seem like a strange case to make
the MF have to deal with.
Ken
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
Neal,
I looked at the dump again and I apologize for reading it incorrectly the
flag was set. However, I still don't understand the reason for the File
Object to be NULL.
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called. This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Tuesday, April 06, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
FLTFL_POST_OPERATION_DRAINING Was not set, though I was unloading the
driver. Why would the not be the same, seem like a strange case to make
the MF have to deal with.
Ken
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
We are completing the operation out-of-band and the goal was to have the completion routine do a minimal amount of work and then return. We didn't believe the file object was necessary for this.
In reviewing the code it is possible to provide the file object (if one exists). Internally we would need to reference it before calling you and dereference it upon return since the real operation could complete and the file closed before your processing of the "drained" irp completes.
I would want a good reason for doing this though.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Thursday, April 15, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Neal,
I looked at the dump again and I apologize for reading it incorrectly the flag was set. However, I still don't understand the reason for the File Object to be NULL.
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called.? This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
My main reason for bringing this up is both FltObjects->FileObject and
Data->Iopb->TargetFileObject are supposed to be the same. In this case they
are not. Since it is being passed in Data->Iopb->TargetFileObject isn't
there already a reference on it?
Maybe they should both be NULL?
I use the FileObject address to check if this close matches certain opens. I
also use it for debugging purposes and reference a few things in it. I might
use it to query the status (for the MF I'd use the MF query routines) if it
is a successful operation.
In this case what will the Data->IoStatus.Status be set to? Will it indicate
some kind of error? If so, I probably won't use the FileObject for anything
except debugging, displaying its address and that of a few fields in it.
I was probably making the assumption that the return status would indicate
and error.
Should I be saying something like:
if (!NT_SUCCESS(Data->IoStatus.Status) || FlagOn(Data->Flags,
FLTFL_CALLBACK_DATA_DRAINING_IO)
{
// ignore this operation and cleanup data structures
}
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Friday, April 16, 2004 2:37 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
We are completing the operation out-of-band and the goal was to have the
completion routine do a minimal amount of work and then return. We didn't
believe the file object was necessary for this.
In reviewing the code it is possible to provide the file object (if one
exists). Internally we would need to reference it before calling you and
dereference it upon return since the real operation could complete and the
file closed before your processing of the "drained" irp completes.
I would want a good reason for doing this though.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Thursday, April 15, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Neal,
I looked at the dump again and I apologize for reading it incorrectly the
flag was set. However, I still don't understand the reason for the File
Object to be NULL.
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called.? This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
Ken,
The status field does contain an error if your draining so checking the status may be sufficient. The status is set to: STATUS_FLT_POST_OPERATION_CLEANUP.
You are correct; the file object is present in the IOPB (I did not realize this). Unfortunately it is not properly referenced so it is not safe to use. I will fix this.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Friday, April 16, 2004 2:36 PM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
My main reason for bringing this up is both FltObjects->FileObject and Data->Iopb->TargetFileObject are supposed to be the same. In this case they are not. Since it is being passed in Data->Iopb->TargetFileObject isn't there already a reference on it?
Maybe they should both be NULL?
I use the FileObject address to check if this close matches certain opens. I also use it for debugging purposes and reference a few things in it. I might use it to query the status (for the MF I'd use the MF query routines) if it is a successful operation.
In this case what will the Data->IoStatus.Status be set to? Will it indicate some kind of error? If so, I probably won't use the FileObject for anything except debugging, displaying its address and that of a few fields in it.
I was probably making the assumption that the return status would indicate and error.
Should I be saying something like:
if (!NT_SUCCESS(Data->IoStatus.Status) || FlagOn(Data->Flags, ? FLTFL_CALLBACK_DATA_DRAINING_IO)
??????? {
??????? // ignore this operation and cleanup data structures
??????? }
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Friday, April 16, 2004 2:37 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
We are completing the operation out-of-band and the goal was to have the completion routine do a minimal amount of work and then return.? We didn't believe the file object was necessary for this.
In reviewing the code it is possible to provide the file object (if one exists).? Internally we would need to reference it before calling you and dereference it upon return since the real operation could complete and the file closed before your processing of the "drained" irp completes.
I would want a good reason for doing this though.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Thursday, April 15, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Neal,
I looked at the dump again and I apologize for reading it incorrectly the flag was set. However, I still don't understand the reason for the File Object to be NULL.
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called.? This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
Neal,
What will you be fixing? Setting it to NULL or referencing it and maybe also
setting the FltObjects->FileObject?
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Friday, April 16, 2004 6:01 PM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
The status field does contain an error if your draining so checking the
status may be sufficient. The status is set to:
STATUS_FLT_POST_OPERATION_CLEANUP.
You are correct; the file object is present in the IOPB (I did not realize
this). Unfortunately it is not properly referenced so it is not safe to
use. I will fix this.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Friday, April 16, 2004 2:36 PM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
My main reason for bringing this up is both FltObjects->FileObject and
Data->Iopb->TargetFileObject are supposed to be the same. In this case they
are not. Since it is being passed in Data->Iopb->TargetFileObject isn't
there already a reference on it?
Maybe they should both be NULL?
I use the FileObject address to check if this close matches certain opens. I
also use it for debugging purposes and reference a few things in it. I might
use it to query the status (for the MF I'd use the MF query routines) if it
is a successful operation.
In this case what will the Data->IoStatus.Status be set to? Will it indicate
some kind of error? If so, I probably won't use the FileObject for anything
except debugging, displaying its address and that of a few fields in it.
I was probably making the assumption that the return status would indicate
and error.
Should I be saying something like:
if (!NT_SUCCESS(Data->IoStatus.Status) || FlagOn(Data->Flags, ?
FLTFL_CALLBACK_DATA_DRAINING_IO)
??????? {
??????? // ignore this operation and cleanup data structures
??????? }
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Friday, April 16, 2004 2:37 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
We are completing the operation out-of-band and the goal was to have the
completion routine do a minimal amount of work and then return.? We didn't
believe the file object was necessary for this.
In reviewing the code it is possible to provide the file object (if one
exists).? Internally we would need to reference it before calling you and
dereference it upon return since the real operation could complete and the
file closed before your processing of the "drained" irp completes.
I would want a good reason for doing this though.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no rights.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ken Galipeau
Sent: Thursday, April 15, 2004 11:30 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Neal,
I looked at the dump again and I apologize for reading it incorrectly the
flag was set. However, I still don't understand the reason for the File
Object to be NULL.
Thanks,
Ken
-----Original Message-----
From: Neal Christiansen [mailto:xxxxx@windows.microsoft.com]
Sent: Tuesday, April 13, 2004 12:48 AM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] Create COmplete Callback no FIleObject
Ken,
I looked at the memory dump you sent me and the
FLTFL_POST_OPERATION_DRAINING flag was indeed set when your
post-operation routine was called.? This explains why the file object
was NULL in this particular situation.
Neal Christiansen
Microsoft File System Filter Group Lead
This posting is provided "AS IS" with no warranties, and confers no
rights.
This posting is provided "AS IS" with no warranties, and confers no
rights.
"Ken Galipeau" wrote in message news:xxxxx@ntfsd...
> I have found a case where in the a Create Completion callback the
> FltObjects->FileObject is NULL and the Data->Iopb->TargetFileObject is
not.
> I though there where always the same?
>
>
>
> Ken
>
>
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
---
Questions? First check the IFS FAQ at
The NT Insider:Windows NT Virtual Memory (Part I)
You are currently subscribed to ntfsd as: xxxxx@legato.com
To unsubscribe send a blank email to xxxxx@lists.osr.com