kernel/eka/memmodel/epoc/flexible/mmu/mmu.h
changeset 201 43365a9b78a3
parent 152 657f875b013e
--- a/kernel/eka/memmodel/epoc/flexible/mmu/mmu.h	Wed Jun 23 19:44:53 2010 +0300
+++ b/kernel/eka/memmodel/epoc/flexible/mmu/mmu.h	Tue Jul 06 15:50:07 2010 +0300
@@ -571,6 +571,23 @@
 		}
 
 	/**
+	Mark this page as an oldest old page.
+
+	This does not mark the object as modified as conceptually it's still an oldest page.  This means
+	that if a page goes from young -> old -> oldest the second transition will not interrupt the
+	page restriction that happens on the first.
+
+	@pre #MmuLock held.
+	*/
+	FORCE_INLINE void SetOldestPage(TPagedState aPagedState)
+		{
+		CheckAccess("SetPagedState");
+		__NK_ASSERT_DEBUG(iPagedState==EPagedOld);
+		__NK_ASSERT_DEBUG(aPagedState==EPagedOldestClean || aPagedState==EPagedOldestDirty);
+		iPagedState = aPagedState;
+		}
+
+	/**
 	Set the page's #iModifier value.
 
 	#iModifier is cleared to zero whenever the usage or paging state of the page