[NTOSKRNL]

Fix an off-by-one error in an ASSERT in MiDecrementReferenceCount (MmHighestPhysicalPage itself is still a valid PFN)

svn path=/trunk/; revision=61073
This commit is contained in:
Timo Kreuzer 2013-11-22 12:10:20 +00:00
parent dfc5f7e3fa
commit 49642d5bb1

View file

@ -1308,14 +1308,14 @@ MiDecrementReferenceCount(IN PMMPFN Pfn1,
ASSERT(KeGetCurrentIrql() == DISPATCH_LEVEL);
/* Sanity checks on the page */
if (PageFrameIndex >= MmHighestPhysicalPage ||
if (PageFrameIndex > MmHighestPhysicalPage ||
Pfn1 != MI_PFN_ELEMENT(PageFrameIndex) ||
Pfn1->u3.e2.ReferenceCount == 0 ||
Pfn1->u3.e2.ReferenceCount >= 2500)
{
DPRINT1("PageFrameIndex=0x%lx, MmHighestPhysicalPage=0x%lx\n", PageFrameIndex, MmHighestPhysicalPage);
DPRINT1("Pfn1=%p, Element=%p, RefCount=%u\n", Pfn1, MI_PFN_ELEMENT(PageFrameIndex), Pfn1->u3.e2.ReferenceCount);
ASSERT(PageFrameIndex < MmHighestPhysicalPage);
ASSERT(PageFrameIndex <= MmHighestPhysicalPage);
ASSERT(Pfn1 == MI_PFN_ELEMENT(PageFrameIndex));
ASSERT(Pfn1->u3.e2.ReferenceCount != 0);
ASSERT(Pfn1->u3.e2.ReferenceCount < 2500);