diff -r a232af6b0b1f -r a5496987b1da kernel/eka/memmodel/epoc/flexible/mmu/mpdalloc.cpp --- a/kernel/eka/memmodel/epoc/flexible/mmu/mpdalloc.cpp Wed Jun 23 12:58:21 2010 +0100 +++ b/kernel/eka/memmodel/epoc/flexible/mmu/mpdalloc.cpp Thu Jul 01 17:57:33 2010 +0100 @@ -134,7 +134,14 @@ RamAllocLock::Lock(); TInt r = m.AllocContiguousRam(pdPhys, KLocalPdPages, KLocalPdShift-KPageShift, iPageDirectoryMemory->RamAllocFlags()); if(r==KErrNone) + { AssignPages(offset>>KPageShift,KLocalPdPages,pdPhys); + +#ifdef BTRACE_KERNEL_MEMORY + BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscAlloc, KLocalPdPages << KPageShift); + Epoc::KernelMiscPages += KLocalPdPages; +#endif + } RamAllocLock::Unlock(); if(r==KErrNone) @@ -147,6 +154,11 @@ { RamAllocLock::Lock(); m.FreeContiguousRam(pdPhys,KLocalPdPages); + +#ifdef BTRACE_KERNEL_MEMORY + BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscFree, KLocalPdPages << KPageShift); + Epoc::KernelMiscPages -= KLocalPdPages; +#endif RamAllocLock::Unlock(); } else @@ -206,6 +218,11 @@ Mmu& m = TheMmu; // Page directories are fixed. m.FreeRam(pages, KLocalPdPages, EPageFixed); + +#ifdef BTRACE_KERNEL_MEMORY + BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscFree, KLocalPdPages << KPageShift); + Epoc::KernelMiscPages -= KLocalPdPages; +#endif RamAllocLock::Unlock(); }