- Make small allocations from the heap.

svn path=/trunk/; revision=32029
This commit is contained in:
Aleksey Bragin
2008-01-27 14:18:30 +00:00
parent 8c9bb75736
commit ec85daf548
2 changed files with 5 additions and 5 deletions
+4 -4
View File
@@ -98,7 +98,7 @@ PCACHE_BLOCK CacheInternalAddBlockToCache(PCACHE_DRIVE CacheDrive, ULONG BlockNu
// We will need to add the block to the
// drive's list of cached blocks. So allocate
// the block memory.
CacheBlock = MmAllocateMemory(sizeof(CACHE_BLOCK));
CacheBlock = MmHeapAlloc(sizeof(CACHE_BLOCK));
if (CacheBlock == NULL)
{
return NULL;
@@ -111,7 +111,7 @@ PCACHE_BLOCK CacheInternalAddBlockToCache(PCACHE_DRIVE CacheDrive, ULONG BlockNu
CacheBlock->BlockData = MmAllocateMemory(CacheDrive->BlockSize * CacheDrive->BytesPerSector);
if (CacheBlock->BlockData ==NULL)
{
MmFreeMemory(CacheBlock);
MmHeapFree(CacheBlock);
return NULL;
}
@@ -119,7 +119,7 @@ PCACHE_BLOCK CacheInternalAddBlockToCache(PCACHE_DRIVE CacheDrive, ULONG BlockNu
if (!MachDiskReadLogicalSectors(CacheDrive->DriveNumber, (BlockNumber * CacheDrive->BlockSize), CacheDrive->BlockSize, (PVOID)DISKREADBUFFER))
{
MmFreeMemory(CacheBlock->BlockData);
MmFreeMemory(CacheBlock);
MmHeapFree(CacheBlock);
return NULL;
}
RtlCopyMemory(CacheBlock->BlockData, (PVOID)DISKREADBUFFER, CacheDrive->BlockSize * CacheDrive->BytesPerSector);
@@ -162,7 +162,7 @@ BOOLEAN CacheInternalFreeBlock(PCACHE_DRIVE CacheDrive)
// Free the block memory and the block structure
MmFreeMemory(CacheBlockToFree->BlockData);
MmFreeMemory(CacheBlockToFree);
MmHeapFree(CacheBlockToFree);
// Update the cache data
CacheBlockCount--;
+1 -1
View File
@@ -71,7 +71,7 @@ BOOLEAN CacheInitializeDrive(ULONG DriveNumber)
ListEntry);
MmFreeMemory(NextCacheBlock->BlockData);
MmFreeMemory(NextCacheBlock);
MmHeapFree(NextCacheBlock);
}
}