[NTOS]: Trunk boots now (interesting that buildbot's QEMU does not support SYSENTER, as newer versions do), so remove the test DPRINTs.

svn path=/trunk/; revision=45281
This commit is contained in:
Sir Richard 2010-01-27 03:36:18 +00:00
parent 90e0457d60
commit 0aaa1fd765

View file

@ -831,7 +831,6 @@ KiEnableFastSyscallReturn(VOID)
if ((KiSystemCallExitAdjusted == KiSystemCallExitAdjust) && if ((KiSystemCallExitAdjusted == KiSystemCallExitAdjust) &&
(KiFastCallCopyDoneOnce)) (KiFastCallCopyDoneOnce))
{ {
DPRINT1("SYSEXIT Code Patch was already done!\n");
return; return;
} }
@ -839,17 +838,14 @@ KiEnableFastSyscallReturn(VOID)
if ((KiSystemCallExitBranch[1] - KiSystemCallExitAdjust) < 0x80) if ((KiSystemCallExitBranch[1] - KiSystemCallExitAdjust) < 0x80)
{ {
/* Remove any existing code patch */ /* Remove any existing code patch */
DPRINT1("Correct SHORT size found\n");
KiDisableFastSyscallReturn(); KiDisableFastSyscallReturn();
/* We should have a JNZ there */ /* We should have a JNZ there */
ASSERT(KiSystemCallExitBranch[0] == 0x75); ASSERT(KiSystemCallExitBranch[0] == 0x75);
/* Do the patch */ /* Do the patch */
DPRINT1("Current jump offset: %lx\n", KiSystemCallExitBranch[1]);
KiSystemCallExitAdjusted = KiSystemCallExitAdjust; KiSystemCallExitAdjusted = KiSystemCallExitAdjust;
KiSystemCallExitBranch[1] -= KiSystemCallExitAdjusted; KiSystemCallExitBranch[1] -= KiSystemCallExitAdjusted;
DPRINT1("New jump offset: %lx\n", KiSystemCallExitBranch[1]);
/* Remember that we've done it */ /* Remember that we've done it */
KiFastCallCopyDoneOnce = TRUE; KiFastCallCopyDoneOnce = TRUE;
@ -873,12 +869,10 @@ KiRestoreFastSyscallReturnState(VOID)
if (!KiFastSystemCallDisable) if (!KiFastSystemCallDisable)
{ {
/* KiSystemCallExit2 should come BEFORE KiSystemCallExit */ /* KiSystemCallExit2 should come BEFORE KiSystemCallExit */
DPRINT1("Exit2: %p Exit1: %p\n", KiSystemCallExit2, KiSystemCallExit);
ASSERT(KiSystemCallExit2 < KiSystemCallExit); ASSERT(KiSystemCallExit2 < KiSystemCallExit);
/* It's enabled, so we'll have to do a code patch */ /* It's enabled, so we'll have to do a code patch */
KiSystemCallExitAdjust = KiSystemCallExit - KiSystemCallExit2; KiSystemCallExitAdjust = KiSystemCallExit - KiSystemCallExit2;
DPRINT1("SYSENTER Capable Machine. Jump Offset Delta: %lx\n", KiSystemCallExitAdjust);
} }
else else
{ {