From e76390da3e69d5ef572bb8164db8095016d864a4 Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Sat, 5 Apr 2014 16:46:40 +0000 Subject: [PATCH] [NTOS:INVB] - Do not use KeDelayExecutionThread while holding a spin lock CORE-8052 #resolve svn path=/trunk/; revision=62628 --- reactos/ntoskrnl/inbv/inbv.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/reactos/ntoskrnl/inbv/inbv.c b/reactos/ntoskrnl/inbv/inbv.c index 901b770b33b..b569ad29f65 100644 --- a/reactos/ntoskrnl/inbv/inbv.c +++ b/reactos/ntoskrnl/inbv/inbv.c @@ -39,7 +39,7 @@ typedef struct tagRGBQUAD static RGBQUAD _MainPalette[16]; #define PALETTE_FADE_STEPS 15 -#define PALETTE_FADE_TIME 20 * 10000 /* 20ms */ +#define PALETTE_FADE_TIME 20 * 1000 /* 20ms */ /** From bootvid/precomp.h **/ // @@ -76,9 +76,6 @@ BootImageFadeIn(VOID) LPRGBQUAD Palette = (LPRGBQUAD)(PaletteBitmapBuffer + sizeof(BITMAPINFOHEADER)); ULONG Iteration, Index, ClrUsed; - LARGE_INTEGER Interval; - - Interval.QuadPart = -PALETTE_FADE_TIME; /* Check if we're installed and we own it */ if ((InbvBootDriverInstalled) && @@ -115,14 +112,14 @@ BootImageFadeIn(VOID) VidBitBlt(PaletteBitmapBuffer, 0, 0); /* Wait for a bit. */ - KeDelayExecutionThread(KernelMode, FALSE, &Interval); + KeStallExecutionProcessor(PALETTE_FADE_TIME); } /* Release the lock */ InbvReleaseLock(); /* Wait for a bit. */ - KeDelayExecutionThread(KernelMode, FALSE, &Interval); + KeStallExecutionProcessor(PALETTE_FADE_TIME); } } -- 2.17.1