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/key…
==============================================================================
--- 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=5…
==============================================================================
--- 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=…
==============================================================================
--- 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;