Author: arty Date: Sun Feb 19 14:13:51 2012 New Revision: 55713
URL: http://svn.reactos.org/svn/reactos?rev=55713&view=rev Log: [NEWCC] Add necessary NULL check. Add pageout case for a page that's only in segment page tables.
Modified: branches/arty-newcc/ntoskrnl/mm/rmap.c
Modified: branches/arty-newcc/ntoskrnl/mm/rmap.c URL: http://svn.reactos.org/svn/reactos/branches/arty-newcc/ntoskrnl/mm/rmap.c?re... ============================================================================== --- branches/arty-newcc/ntoskrnl/mm/rmap.c [iso-8859-1] (original) +++ branches/arty-newcc/ntoskrnl/mm/rmap.c [iso-8859-1] Sun Feb 19 14:13:51 2012 @@ -58,7 +58,15 @@
ExAcquireFastMutex(&RmapListLock); entry = MmGetRmapListHeadPage(Page); - while (RMAP_IS_SEGMENT(entry->Address)) + +#ifdef NEWCC + // Special case for NEWCC: we can have a page that's only in a segment + // page table + if (entry && RMAP_IS_SEGMENT(entry->Address) && entry->Next == NULL) + return MmpPageOutPhysicalAddress(Page); +#endif + + while (entry && RMAP_IS_SEGMENT(entry->Address)) entry = entry->Next;
if (entry == NULL)