[ros-diffs] [ion] 26167: - Fixup some kernel module debugging flags/settings from leftovers. - Enable debugging during text-mode setup. - Optimize KeSynhronizeExecution into assembly so we can avoid using EBP and have the fastest possible routine, since it is performance critical. -

ion at svn.reactos.org ion at svn.reactos.org
Sun Mar 25 16:33:55 CEST 2007


Author: ion
Date: Sun Mar 25 18:33:54 2007
New Revision: 26167

URL: http://svn.reactos.org/svn/reactos?rev=26167&view=rev
Log:
- Fixup some kernel module debugging flags/settings from leftovers.
- Enable debugging during text-mode setup.
- Optimize KeSynhronizeExecution into assembly so we can avoid using EBP and have the fastest possible routine, since it is performance critical.
- 

Modified:
    trunk/reactos/boot/bootdata/txtsetup.sif
    trunk/reactos/ntoskrnl/dbgk/dbgkobj.c
    trunk/reactos/ntoskrnl/include/internal/ob.h
    trunk/reactos/ntoskrnl/io/iomgr/iomgr.c
    trunk/reactos/ntoskrnl/ke/i386/trap.s
    trunk/reactos/ntoskrnl/ke/spinlock.c
    trunk/reactos/ntoskrnl/ob/obinit.c
    trunk/reactos/ntoskrnl/ps/query.c

Modified: trunk/reactos/boot/bootdata/txtsetup.sif
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/txtsetup.sif?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/boot/bootdata/txtsetup.sif (original)
+++ trunk/reactos/boot/bootdata/txtsetup.sif Sun Mar 25 18:33:54 2007
@@ -40,7 +40,7 @@
 [SetupData]
 DefaultPath = \ReactOS
 ;OsLoadOptions = "/NOGUIBOOT /NODEBUG"
-OsLoadOptions = "/NOGUIBOOT"
+OsLoadOptions = "/NOGUIBOOT /DEBUGPORT=COM1"
 ;OsLoadOptions = "/NOGUIBOOT /DEBUGPORT=SCREEN"
 ;OsLoadOptions = "/NOGUIBOOT /DEBUGPORT=BOCHS"
 

Modified: trunk/reactos/ntoskrnl/dbgk/dbgkobj.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/dbgk/dbgkobj.c?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/dbgk/dbgkobj.c (original)
+++ trunk/reactos/ntoskrnl/dbgk/dbgkobj.c Sun Mar 25 18:33:54 2007
@@ -14,7 +14,7 @@
 
 POBJECT_TYPE DbgkDebugObjectType;
 FAST_MUTEX DbgkpProcessDebugPortMutex;
-ULONG DbgkpTraceLevel = 0; //-1;
+ULONG DbgkpTraceLevel = 0;
 
 GENERIC_MAPPING DbgkDebugObjectMapping =
 {

Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/ob.h?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/ob.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/ob.h Sun Mar 25 18:33:54 2007
@@ -9,7 +9,7 @@
 //
 // Define this if you want debugging support
 //
-#define _OB_DEBUG_                                      0x00
+#define _OB_DEBUG_                                      0x01
 
 //
 // These define the Debug Masks Supported

Modified: trunk/reactos/ntoskrnl/io/iomgr/iomgr.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/iomgr.c?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/iomgr.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/iomgr.c Sun Mar 25 18:33:54 2007
@@ -13,7 +13,7 @@
 #define NDEBUG
 #include <internal/debug.h>
 
-ULONG IopTraceLevel = 0; //IO_API_DEBUG | IO_FILE_DEBUG;
+ULONG IopTraceLevel = 0;
 
 // should go into a proper header
 VOID

Modified: trunk/reactos/ntoskrnl/ke/i386/trap.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/trap.s?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/i386/trap.s (original)
+++ trunk/reactos/ntoskrnl/ke/i386/trap.s Sun Mar 25 18:33:54 2007
@@ -2379,3 +2379,31 @@
     /* Cleanup verification */
     VERIFY_INT_END kid, 0
 .endfunc
+
+.globl _KeSynchronizeExecution at 12
+.func KeSynchronizeExecution at 12
+_KeSynchronizeExecution at 12:
+
+    /* Save EBX and put the interrupt object in it */
+    push ebx
+    mov ebx, [esp+8]
+
+    /* Go to DIRQL */
+    mov cl, [ebx+KINTERRUPT_SYNCHRONIZE_IRQL]
+    call @KfRaiseIrql at 4
+
+    /* Call the routine */
+    push eax
+    push [esp+20]
+    call [esp+20]
+
+    /* Lower IRQL */
+    mov ebx, eax
+    pop ecx
+    call @KfLowerIrql at 4
+
+    /* Return status */
+    mov eax, ebx
+    pop ebx
+    ret 12
+.endfunc

Modified: trunk/reactos/ntoskrnl/ke/spinlock.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/spinlock.c?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ke/spinlock.c (original)
+++ trunk/reactos/ntoskrnl/ke/spinlock.c Sun Mar 25 18:33:54 2007
@@ -250,31 +250,6 @@
 /*
  * @implemented
  */
-BOOLEAN
-NTAPI
-KeSynchronizeExecution(IN PKINTERRUPT Interrupt,
-                       IN PKSYNCHRONIZE_ROUTINE SynchronizeRoutine,
-                       IN PVOID SynchronizeContext)
-{
-    KIRQL OldIrql;
-    BOOLEAN Status;
-
-    /* Raise IRQL and acquire lock on MP */
-    OldIrql = KeAcquireInterruptSpinLock(Interrupt);
-
-    /* Call the routine */
-    Status = SynchronizeRoutine(SynchronizeContext);
-
-    /* Release lock and lower IRQL */
-    KeReleaseInterruptSpinLock(Interrupt, OldIrql);
-
-    /* Return routine status */
-    return Status;
-}
-
-/*
- * @implemented
- */
 VOID
 NTAPI
 KeReleaseInterruptSpinLock(IN PKINTERRUPT Interrupt,

Modified: trunk/reactos/ntoskrnl/ob/obinit.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ob/obinit.c?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ob/obinit.c (original)
+++ trunk/reactos/ntoskrnl/ob/obinit.c Sun Mar 25 18:33:54 2007
@@ -44,7 +44,7 @@
 };
 
 PDEVICE_MAP ObSystemDeviceMap = NULL;
-ULONG ObpTraceLevel = OB_HANDLE_DEBUG | OB_REFERENCE_DEBUG;
+ULONG ObpTraceLevel = 0;
 
 VOID
 NTAPI

Modified: trunk/reactos/ntoskrnl/ps/query.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ps/query.c?rev=26167&r1=26166&r2=26167&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ps/query.c (original)
+++ trunk/reactos/ntoskrnl/ps/query.c Sun Mar 25 18:33:54 2007
@@ -17,7 +17,7 @@
 #include "internal/ps_i.h"
 
 /* Debugging Level */
-ULONG PspTraceLevel = 0;//PS_KILL_DEBUG | PS_REF_DEBUG;
+ULONG PspTraceLevel = 0;
 
 /* PRIVATE FUNCTIONS *********************************************************/
 




More information about the Ros-diffs mailing list