update for HEAD-2003021201
[reactos.git] / ntoskrnl / mm / npool.c
index daef537..29186d4 100644 (file)
@@ -317,6 +317,8 @@ MiDebugDumpNonPagedPoolStats(BOOLEAN NewOnly)
       DbgPrint("TotalBlocks %d TotalSize %d\n",
               TotalBlocks, TotalSize);
     }
+  DbgPrint("Freeblocks %d TotalFreeSize %d AverageFreeSize %d\n", 
+         EiNrFreeBlocks, EiFreeNonPagedPool, EiNrFreeBlocks ? EiFreeNonPagedPool / EiNrFreeBlocks : 0);
   DbgPrint("***************** Dump Complete ***************\n");
 #endif /* TAG_STATISTICS_TRACKING */
 }
@@ -713,6 +715,10 @@ static BLOCK_HDR* lookup_block(unsigned int size)
             (best == NULL || current->Size < best->Size)) 
         {
            best = current;
+           if (best->Size == size)
+           {
+              break;
+           }
         }
          current_entry = current_entry->Flink;
       }
@@ -840,7 +846,7 @@ static void* grow_kernel_pool(unsigned int size, ULONG Tag, PVOID Caller)
    ULONG nr_pages = PAGE_ROUND_UP(size + sizeof(BLOCK_HDR)) / PAGE_SIZE;
    ULONG start;
    BLOCK_HDR* blk=NULL;
-   int i;
+   ULONG i;
    KIRQL oldIrql;
    NTSTATUS Status;
    PVOID block = NULL;