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?rev... ============================================================================== --- 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/o... ============================================================================== --- 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?r... ============================================================================== --- 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... ============================================================================== --- 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=26... ============================================================================== --- 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=261... ============================================================================== --- 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 *********************************************************/