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…
==============================================================================
--- 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?re…
==============================================================================
--- 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/…
==============================================================================
--- 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?…
==============================================================================
--- 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?re…
==============================================================================
--- 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@12
+.func KeSynchronizeExecution@12
+_KeSynchronizeExecution@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@4
+
+ /* Call the routine */
+ push eax
+ push [esp+20]
+ call [esp+20]
+
+ /* Lower IRQL */
+ mov ebx, eax
+ pop ecx
+ call @KfLowerIrql@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…
==============================================================================
--- 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=2…
==============================================================================
--- 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=26…
==============================================================================
--- 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 *********************************************************/