ObDereferenceObject and VPB?

Hi,

Can anyone explain to me why calling IoCreateStreamFileObjectLite with a
fileobject argument would increment VPB->ReferenceCount when filtering FAT,
yet a call to ObDereferenceObject on the fileobject gotten from
IoCreateStreamFileObjectLite would not decrement the VPB->ReferenceCount? I
seem to see this behavior when the new fileobject has not had its Fscontext
pointers initialized and I call ObDereferenceObject.

Thanks for any help,

Matt

> Can anyone explain to me why calling IoCreateStreamFileObjectLite with a

fileobject argument would increment VPB->ReferenceCount when filtering
FAT,

This is not only when filtering FAT. It is because the function
wants to ensure that volume does not get unmounted while
the file object is being sent to the file system.

L.

Yeah, I understand that, but just wondering why the ObDereferenceObject
doesn’t decrement the VPB.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Ladislav Zezula
Sent: Tuesday, November 08, 2005 10:57 AM
To: Windows File Systems Devs Interest List
Subject: Re: [ntfsd] ObDereferenceObject and VPB?

Can anyone explain to me why calling IoCreateStreamFileObjectLite with
a fileobject argument would increment VPB->ReferenceCount when
filtering FAT,

This is not only when filtering FAT. It is because the function wants to
ensure that volume does not get unmounted while the file object is being
sent to the file system.

L.


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

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