Author: sginsberg Date: Sun Apr 8 15:57:04 2012 New Revision: 56336
URL: http://svn.reactos.org/svn/reactos?rev=56336&view=rev Log: - There is no need for the i8042 driver to use a hacked KdSystemDebugControl call to breakpoint or crash on TAB+k/TAB+b. Just call DbgBreakPoint or KeBugCheck directly.
Modified: trunk/reactos/drivers/input/i8042prt/keyboard.c trunk/reactos/ntoskrnl/kd/kdmain.c trunk/reactos/ntoskrnl/kd64/kdapi.c
Modified: trunk/reactos/drivers/input/i8042prt/keyboard.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/i8042prt/keyb... ============================================================================== --- trunk/reactos/drivers/input/i8042prt/keyboard.c [iso-8859-1] (original) +++ trunk/reactos/drivers/input/i8042prt/keyboard.c [iso-8859-1] Sun Apr 8 15:57:04 2012 @@ -812,16 +812,30 @@ else if (DeviceExtension->TabPressed) { DeviceExtension->TabPressed = FALSE; - - /* Send request to the kernel debugger. - * Unknown requests will be ignored. */ - KdSystemDebugControl(' soR', - (PVOID)(ULONG_PTR)InputData->MakeCode, - 0, - NULL, - 0, - NULL, - KernelMode); + + /* Check which action to do */ + if (InputData->MakeCode == 0x25) + { + /* k - Breakpoint */ + DbgBreakPoint(); + } + else if (InputData->MakeCode == 0x30) + { + /* b - Bugcheck */ + KeBugCheck(MANUALLY_INITIATED_CRASH); + } + else + { + /* Send request to the kernel debugger. + * Unknown requests will be ignored. */ + KdSystemDebugControl(' soR', + (PVOID)(ULONG_PTR)InputData->MakeCode, + 0, + NULL, + 0, + NULL, + KernelMode); + } } }
Modified: trunk/reactos/ntoskrnl/kd/kdmain.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/kd/kdmain.c?rev=56... ============================================================================== --- trunk/reactos/ntoskrnl/kd/kdmain.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/kd/kdmain.c [iso-8859-1] Sun Apr 8 15:57:04 2012 @@ -56,20 +56,12 @@ { switch ((ULONG_PTR)Buffer1) { - case ManualBugCheck: - KeBugCheck(MANUALLY_INITIATED_CRASH); - break; - case DumpAllThreads: PspDumpThreads(TRUE); break;
case DumpUserThreads: PspDumpThreads(FALSE); - break; - - case EnterDebugger: - DbgBreakPoint(); break;
case KdSpare3:
Modified: trunk/reactos/ntoskrnl/kd64/kdapi.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/kd64/kdapi.c?rev=5... ============================================================================== --- trunk/reactos/ntoskrnl/kd64/kdapi.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/kd64/kdapi.c [iso-8859-1] Sun Apr 8 15:57:04 2012 @@ -1953,14 +1953,6 @@ { switch ((ULONG_PTR)InputBuffer) { - case 0x30: // ManualBugCheck: - KeBugCheck(MANUALLY_INITIATED_CRASH); - break; - - case 0x25: // EnterDebugger: - DbgBreakPoint(); - break; - case 0x24: MmDumpArmPfnDatabase(FALSE); break;