MCPcopy Create free account
hub / github.com/bobranten/Ext4Fsd / Ext2TearDownStream

Function Ext2TearDownStream

Ext4Fsd/memory.c:2778–2803  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2776
2777
2778VOID
2779Ext2TearDownStream(IN PEXT2_VCB Vcb)
2780{
2781 PFILE_OBJECT Stream = Vcb->Volume;
2782 IO_STATUS_BLOCK IoStatus;
2783
2784 ASSERT(Vcb != NULL);
2785 ASSERT((Vcb->Identifier.Type == EXT2VCB) &&
2786 (Vcb->Identifier.Size == sizeof(EXT2_VCB)));
2787
2788 if (Stream) {
2789
2790 Vcb->Volume = NULL;
2791
2792 if (IsFlagOn(Stream->Flags, FO_FILE_MODIFIED)) {
2793 CcFlushCache(&(Vcb->SectionObject), NULL, 0, &IoStatus);
2794 ClearFlag(Stream->Flags, FO_FILE_MODIFIED);
2795 }
2796
2797 if (Stream->PrivateCacheMap) {
2798 Ext2SyncUninitializeCacheMap(Stream);
2799 }
2800
2801 ObDereferenceObject(Stream);
2802 }
2803}
2804
2805VOID
2806Ext2DestroyVcb (IN PEXT2_VCB Vcb)

Callers 2

Ext2CheckDismountFunction · 0.85
Ext2DestroyVcbFunction · 0.85

Calls 1

Tested by

no test coverage detected