kernel/eka/memmodel/epoc/flexible/mmu/mexport.cpp
branchRCL_3
changeset 22 2f92ad2dc5db
parent 4 56f325a607ea
child 26 c734af59ce98
equal deleted inserted replaced
21:e7d2d738d3c2 22:2f92ad2dc5db
    14 //
    14 //
    15 
    15 
    16 #include "memmodel.h"
    16 #include "memmodel.h"
    17 #include "mm.h"
    17 #include "mm.h"
    18 #include "mmu.h"
    18 #include "mmu.h"
    19 
    19 #include "mpager.h"
    20 #include "mrom.h"
    20 #include "mrom.h"
    21 
    21 
    22 /**	Returns the amount of free RAM currently available.
    22 /**	Returns the amount of free RAM currently available.
    23 
    23 
    24 @return The number of bytes of free RAM currently available.
    24 @return The number of bytes of free RAM currently available.
   605 	{
   605 	{
   606 	return KPageSize;
   606 	return KPageSize;
   607 	}
   607 	}
   608 
   608 
   609 
   609 
       
   610 void M::BTracePrime(TUint aCategory)
       
   611 	{
       
   612 	(void)aCategory;
       
   613 
   610 #ifdef BTRACE_KERNEL_MEMORY
   614 #ifdef BTRACE_KERNEL_MEMORY
   611 void M::BTracePrime(TUint aCategory)
   615 	// Must check for -1 as that is the default value of aCategory for
   612 	{
   616 	// BTrace::Prime() which is intended to prime all categories that are 
   613 	// TODO:
   617 	// currently enabled via a single invocation of BTrace::Prime().
   614 	}
   618 	if(aCategory == BTrace::EKernelMemory || (TInt)aCategory == -1)
       
   619 		{
       
   620 		NKern::ThreadEnterCS();
       
   621 		RamAllocLock::Lock();
       
   622 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryInitialFree, TheSuperPage().iTotalRamSize);
       
   623 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryCurrentFree, Kern::FreeRamInBytes());
       
   624 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscAlloc, Epoc::KernelMiscPages << KPageShift);
       
   625 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryDemandPagingCache, ThePager.MinimumPageCount() << KPageShift);
       
   626 		BTrace8(BTrace::EKernelMemory, BTrace::EKernelMemoryDrvPhysAlloc, Epoc::DriverAllocdPhysRam, -1);
       
   627 		RamAllocLock::Unlock();
       
   628 		NKern::ThreadLeaveCS();
       
   629 		}
   615 #endif
   630 #endif
   616 
   631 	TheMmu.BTracePrime(aCategory);
       
   632 	}
   617 
   633 
   618 
   634 
   619 //
   635 //
   620 // DPlatChunkHw
   636 // DPlatChunkHw
   621 //
   637 //