kernel/eka/memmodel/epoc/flexible/x86/xmonitor.cpp
changeset 279 957c583b417b
parent 0 a41df078684a
--- a/kernel/eka/memmodel/epoc/flexible/x86/xmonitor.cpp	Tue Sep 28 15:28:31 2010 +0100
+++ b/kernel/eka/memmodel/epoc/flexible/x86/xmonitor.cpp	Mon Oct 04 12:03:52 2010 +0100
@@ -58,7 +58,9 @@
 
 	const TPde* kpd=(const TPde*)KPageDirectoryBase;
 	const TPde* ppd=(const TPde*)(KPageDirectoryBase+(aProcess->iOsAsid<<KPageTableShift));
-	if (!PdesEqual(kpd, ppd, KGlobalMemoryBase, 0x00000000))			// kernel mappings
+
+	// Check kernel mappings are the same except for IPC alias region
+	if (!PdesEqual(kpd, ppd, KGlobalMemoryBase, KIPCAlias) || !PdesEqual(kpd, ppd, KIPCAlias+KIPCAliasAreaSize, 0x00000000))
 		{
 		if (!aForce)
 			return KErrCorrupt;