From 0b03f1a2a92a828c06a81cfd767d047151d20e7b Mon Sep 17 00:00:00 2001 From: Art Yerkes Date: Fri, 1 Oct 2004 20:51:29 +0000 Subject: [PATCH] Sorry i didn't have all the assertions correct in ntoskrnl/mm/pool.c Now i've moved them to npool.c and ppool.c, where they are shorter. svn path=/trunk/; revision=11145 --- reactos/ntoskrnl/mm/npool.c | 4 +++- reactos/ntoskrnl/mm/pool.c | 14 +------------- reactos/ntoskrnl/mm/ppool.c | 4 +++- 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/reactos/ntoskrnl/mm/npool.c b/reactos/ntoskrnl/mm/npool.c index c7a92e16483..2bccf77fb4e 100644 --- a/reactos/ntoskrnl/mm/npool.c +++ b/reactos/ntoskrnl/mm/npool.c @@ -1,4 +1,4 @@ -/* $Id: npool.c,v 1.90 2004/09/25 06:41:16 arty Exp $ +/* $Id: npool.c,v 1.91 2004/10/01 20:51:28 arty Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -1556,6 +1556,8 @@ ExAllocateNonPagedPoolWithTag(ULONG Type, ULONG Size, ULONG Tag, PVOID Caller) PVOID block; KIRQL oldIrql; + ASSERT_IRQL(DISPATCH_LEVEL); + POOL_TRACE("ExAllocatePool(NumberOfBytes %d) caller %x ", Size,Caller); diff --git a/reactos/ntoskrnl/mm/pool.c b/reactos/ntoskrnl/mm/pool.c index 38d9666a016..701fc3a0752 100644 --- a/reactos/ntoskrnl/mm/pool.c +++ b/reactos/ntoskrnl/mm/pool.c @@ -1,4 +1,4 @@ -/* $Id: pool.c,v 1.34 2004/10/01 04:00:11 arty Exp $ +/* $Id: pool.c,v 1.35 2004/10/01 20:51:29 arty Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -93,8 +93,6 @@ ExAllocatePool (POOL_TYPE PoolType, ULONG NumberOfBytes) */ { PVOID Block; - ASSERT_IRQL(DISPATCH_LEVEL); - assert(KeGetCurrentIrql() == PASSIVE_LEVEL || PoolType == NonPagedPool); #if defined(__GNUC__) @@ -124,9 +122,6 @@ ExAllocatePoolWithTag (ULONG PoolType, ULONG NumberOfBytes, ULONG Tag) { PVOID Block; - ASSERT_IRQL(DISPATCH_LEVEL); - assert(KeGetCurrentIrql() == PASSIVE_LEVEL || PoolType != PagedPool); - #if defined(__GNUC__) Block = EiAllocatePool(PoolType, @@ -168,9 +163,6 @@ ExAllocatePoolWithTagPriority( IN EX_POOL_PRIORITY Priority ) { - ASSERT_IRQL(DISPATCH_LEVEL); - assert(KeGetCurrentIrql() == PASSIVE_LEVEL || PoolType != PagedPool); - /* Check if this is one of the "Special" Flags, used by the Verifier */ if (Priority & 8) { /* Check if this is a xxSpecialUnderrun */ @@ -198,9 +190,6 @@ ExAllocatePoolWithQuotaTag (IN POOL_TYPE PoolType, PVOID Block; PEPROCESS Process; - ASSERT_IRQL(DISPATCH_LEVEL); - assert(KeGetCurrentIrql() == PASSIVE_LEVEL || PoolType == NonPagedPool); - /* Allocate the Pool First */ Block = EiAllocatePool(PoolType, NumberOfBytes, @@ -263,7 +252,6 @@ ExFreePool(IN PVOID Block) VOID STDCALL ExFreePoolWithTag(IN PVOID Block, IN ULONG Tag) { - ASSERT_IRQL(DISPATCH_LEVEL); /* FIXME: Validate the tag */ ExFreePool(Block); } diff --git a/reactos/ntoskrnl/mm/ppool.c b/reactos/ntoskrnl/mm/ppool.c index c15eb8fab11..9232c120a1b 100644 --- a/reactos/ntoskrnl/mm/ppool.c +++ b/reactos/ntoskrnl/mm/ppool.c @@ -1,4 +1,4 @@ -/* $Id: ppool.c,v 1.30 2004/08/15 16:39:08 chorns Exp $ +/* $Id: ppool.c,v 1.31 2004/10/01 20:51:29 arty Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -172,6 +172,8 @@ ExAllocatePagedPoolWithTag (IN POOL_TYPE PoolType, PVOID BlockAddress; ULONG Alignment; + ASSERT_IRQL(PASSIVE_LEVEL); + ExAcquireFastMutex(&MmPagedPoolLock); /*