#ifndef VACB_MAPPING_GRANULARITY
#define VACB_MAPPING_GRANULARITY (256 * 1024)
#endif
-
+
/* GLOBALS *****************************************************************/
extern FAST_MUTEX ViewLock;
IN PVOID Context2
)
{
+ LARGE_INTEGER i;
UNIMPLEMENTED;
-
- LARGE_INTEGER i;
i.QuadPart = 0;
return i;
}
OUT PLARGE_INTEGER OldestLsn OPTIONAL
)
{
+ LARGE_INTEGER i;
UNIMPLEMENTED;
-
- LARGE_INTEGER i;
i.QuadPart = 0;
return i;
}
LIST_ENTRY FreeListHead;
NTSTATUS Status;
- DPRINT("CcSetFileSizes(FileObject %x, FileSizes %x)\n",
+ DPRINT("CcSetFileSizes(FileObject 0x%p, FileSizes 0x%p)\n",
FileObject, FileSizes);
DPRINT("AllocationSize %d, FileSize %d, ValidDataLength %d\n",
(ULONG)FileSizes->AllocationSize.QuadPart,
*/
if (Bcb == NULL)
return;
-
+
if (FileSizes->AllocationSize.QuadPart < Bcb->AllocationSize.QuadPart)
{
InitializeListHead(&FreeListHead);
- ExAcquireFastMutex(&ViewLock);
+ ExEnterCriticalRegionAndAcquireFastMutexUnsafe(&ViewLock);
KeAcquireSpinLock(&Bcb->BcbLock, &oldirql);
current_entry = Bcb->BcbSegmentListHead.Flink;
}
}
}
-
+
Bcb->AllocationSize = FileSizes->AllocationSize;
Bcb->FileSize = FileSizes->FileSize;
KeReleaseSpinLock(&Bcb->BcbLock, oldirql);
- ExReleaseFastMutex(&ViewLock);
+ ExReleaseFastMutexUnsafeAndLeaveCriticalRegion(&ViewLock);
current_entry = FreeListHead.Flink;
while(current_entry != &FreeListHead)
Status = CcRosInternalFreeCacheSegment(current);
if (!NT_SUCCESS(Status))
{
- DPRINT1("CcRosInternalFreeCacheSegment failed, status = %x\n");
+ DPRINT1("CcRosInternalFreeCacheSegment failed, status = %x\n", Status);
KEBUGCHECK(0);
}
}