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/keyboard.c?rev=56336&r1=56335&r2=56336&view=diff
==============================================================================
--- 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=56336&r1=56335&r2=56336&view=diff
==============================================================================
--- 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=56336&r1=56335&r2=56336&view=diff
==============================================================================
--- 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;


Reply via email to