kernel/eka/memmodel/epoc/flexible/mmu/mrom.cpp
changeset 102 ef2a444a7410
parent 90 947f0dc9f7a8
child 109 b3a1d9898418
equal deleted inserted replaced
90:947f0dc9f7a8 102:ef2a444a7410
   967 		m.UnmapTemp(0);
   967 		m.UnmapTemp(0);
   968 		m.UnmapTemp(1);
   968 		m.UnmapTemp(1);
   969 		MmuLock::Lock();
   969 		MmuLock::Lock();
   970 		SPageInfo::FromPhysAddr(iNewPage)->SetShadow(aIndex,aMemory->PageInfoFlags());
   970 		SPageInfo::FromPhysAddr(iNewPage)->SetShadow(aIndex,aMemory->PageInfoFlags());
   971 		MmuLock::Unlock();
   971 		MmuLock::Unlock();
       
   972 
       
   973 #ifdef BTRACE_KERNEL_MEMORY
       
   974 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscAlloc, KPageSize);
       
   975 		++Epoc::KernelMiscPages;
       
   976 #endif
   972 		}
   977 		}
   973 
   978 
   974 	RamAllocLock::Unlock();
   979 	RamAllocLock::Unlock();
   975 
   980 
   976 	if(r!=KErrNone)
   981 	if(r!=KErrNone)
   990 	TRACE2(("DShadowPage[%x]::Destroy()",this));
   995 	TRACE2(("DShadowPage[%x]::Destroy()",this));
   991 	if(iNewPage!=KPhysAddrInvalid)
   996 	if(iNewPage!=KPhysAddrInvalid)
   992 		{
   997 		{
   993 		RamAllocLock::Lock();
   998 		RamAllocLock::Lock();
   994 		TheMmu.FreeRam(&iNewPage, 1, EPageFixed);
   999 		TheMmu.FreeRam(&iNewPage, 1, EPageFixed);
       
  1000 
       
  1001 #ifdef BTRACE_KERNEL_MEMORY
       
  1002 		BTrace4(BTrace::EKernelMemory, BTrace::EKernelMemoryMiscFree, KPageSize);
       
  1003 		--Epoc::KernelMiscPages;
       
  1004 #endif
   995 		RamAllocLock::Unlock();
  1005 		RamAllocLock::Unlock();
   996 		}
  1006 		}
   997 	if(IsAttached())
  1007 	if(IsAttached())
   998 		Unpin();
  1008 		Unpin();
   999 	Close();
  1009 	Close();