Author: bonefish Date: 2010-06-10 15:22:44 +0200 (Thu, 10 Jun 2010) New Revision: 37084 Changeset: http://dev.haiku-os.org/changeset/37084/haiku Modified: haiku/trunk/src/system/kernel/arch/x86/paging/X86VMTranslationMap.h Log: Added InvalidatePage() which adds a new address to the invalidation cache. Modified: haiku/trunk/src/system/kernel/arch/x86/paging/X86VMTranslationMap.h =================================================================== --- haiku/trunk/src/system/kernel/arch/x86/paging/X86VMTranslationMap.h 2010-06-10 10:56:05 UTC (rev 37083) +++ haiku/trunk/src/system/kernel/arch/x86/paging/X86VMTranslationMap.h 2010-06-10 13:22:44 UTC (rev 37084) @@ -31,6 +31,8 @@ virtual X86PagingStructures* PagingStructures() const = 0; + inline void InvalidatePage(addr_t address); + protected: TranslationMapPhysicalPageMapper* fPageMapper; int fInvalidPagesCount; @@ -39,4 +41,14 @@ }; +void +X86VMTranslationMap::InvalidatePage(addr_t address) +{ + if (fInvalidPagesCount < PAGE_INVALIDATE_CACHE_SIZE) + fInvalidPages[fInvalidPagesCount] = address; + + fInvalidPagesCount++; +} + + #endif // KERNEL_ARCH_X86_X86_VM_TRANSLATION_MAP_H