--- 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;