- Fix the ASSERT in VdmSwapContext now that we are always setting up the trap frame correctly on debug build.

- Fix the ASSERT in KeConnectInterrupt for debug single-processor builds (but keep the old one for multiprocessor build to make it less confusing if it is hit).

svn path=/trunk/; revision=69075
This commit is contained in:
Stefan Ginsberg 2015-09-06 22:29:10 +00:00
parent 93ff988b19
commit ec566e8082
2 changed files with 11 additions and 3 deletions

View file

@ -447,8 +447,16 @@ KeConnectInterrupt(IN PKINTERRUPT Interrupt)
/* The vector is shared and the interrupts are compatible */
Interrupt->Connected = Connected = TRUE;
/* FIXME */
// ASSERT(Irql <= SYNCH_LEVEL);
/*
* Verify the IRQL for chained connect,
*/
#if defined(CONFIG_SMP)
ASSERT(Irql <= SYNCH_LEVEL);
#elif (NTDDI_VERSION >= NTDDI_WS03)
ASSERT(Irql <= (IPI_LEVEL - 2));
#else
ASSERT(Irql <= (IPI_LEVEL - 1));
#endif
/* Check if this is the first chain */
if (Dispatch.Type != ChainConnect)

View file

@ -50,7 +50,7 @@ VdmSwapContext(IN PKTRAP_FRAME TrapFrame,
/* Make sure that we're at APC_LEVEL and that this is a valid frame */
ASSERT(KeGetCurrentIrql() == APC_LEVEL);
//ASSERT(TrapFrame->DbgArgMark == 0xBADB0D00);
ASSERT(TrapFrame->DbgArgMark == 0xBADB0D00);
/* Check if this is a V86 frame */
if (TrapFrame->EFlags & EFLAGS_V86_MASK)