diff --git a/reactos/ntoskrnl/Makefile b/reactos/ntoskrnl/Makefile index 1cfda91d8c6..384cd005c71 100644 --- a/reactos/ntoskrnl/Makefile +++ b/reactos/ntoskrnl/Makefile @@ -24,18 +24,6 @@ endif LINKER_SCRIPT := ntoskrnl.lnk STRIP_FLAGS := -Wl,-s -ifeq ($(KDBG), 1) -OBJECTS_KDBG := dbg/kdb.o dbg/kdb_cli.o dbg/kdb_expr.o dbg/kdb_keyboard.o \ - dbg/kdb_serial.o dbg/kdb_string.o dbg/rdebug.o dbg/i386/kdb_help.o \ - dbg/i386/i386-dis.o dbg/i386/longjmp.o dbg/i386/setjmp.o -preall: all -else -OBJECTS_KDBG := -endif -ifeq ($(DBG_OR_KDBG), 1) -OBJECTS_KDBG := $(OBJECTS_KDBG) dbg/kdb_symbols.o -endif - TARGET_ASFLAGS = -I./include TARGET_CFLAGS = -I./include $(CFLAGS_KDBG) -Wall -Werror $(CFLAGS_OPT) @@ -74,6 +62,7 @@ OBJECTS_RTL = \ rtl/atom.o \ rtl/capture.o \ rtl/ctype.o \ + rtl/debug.o \ rtl/handle.o \ rtl/message.o \ rtl/misc.o \ @@ -240,6 +229,7 @@ OBJECTS_PS = \ # Executive Subsystem (Ex) OBJECTS_EX = \ ex/callback.o \ + ex/dbgctrl.o \ ex/error.o \ ex/event.o \ ex/evtpair.o \ @@ -301,14 +291,6 @@ OBJECTS_CM = \ cm/registry.o \ cm/regobj.o \ -# Debugger Support (Dbg) -OBJECTS_DBG = \ - dbg/dbgctrl.o \ - dbg/errinfo.o \ - dbg/print.o \ - dbg/user.o \ - $(OBJECTS_KDBG) - # Loader OBJECTS_LDR = \ ldr/init.o \ @@ -352,6 +334,29 @@ OBJECTS_KD = \ kd/kdebug.o \ kd/mda.o \ kd/service.o + +# User-Mode Debugging (Dbgk) +OBJECTS_DBGK = \ + dbgk/dbgkutil.o \ + dbgk/debug.o + +ifeq ($(KDBG), 1) +OBJECTS_KDBG := \ + kdbg/kdb.o \ + kdbg/kdb_cli.o \ + kdbg/kdb_expr.o \ + kdbg/kdb_keyboard.o \ + kdbg/kdb_serial.o \ + kdbg/kdb_string.o +preall: all +else +OBJECTS_KDBG := +endif +ifeq ($(DBG_OR_KDBG), 1) +OBJECTS_KDBG := \ + $(OBJECTS_KDBG) \ + kdbg/kdb_symbols.o +endif # Boot video (Inbv) OBJECTS_INBV = \ @@ -360,7 +365,7 @@ OBJECTS_INBV = \ DEP_OBJECTS := $(OBJECTS_MM) $(OBJECTS_ARCH) \ $(OBJECTS_IO) $(OBJECTS_KE) $(OBJECTS_OB) \ $(OBJECTS_PS) $(OBJECTS_EX) $(OBJECTS_CC) $(OBJECTS_FS) $(OBJECTS_SE) \ - $(OBJECTS_DBG) $(OBJECTS_CM) $(OBJECTS_LDR) $(OBJECTS_LPC) \ + $(OBJECTS_KDBG) $(OBJECTS_DBGK) $(OBJECTS_CM) $(OBJECTS_LDR) $(OBJECTS_LPC) \ $(OBJECTS_PO) $(OBJECTS_KD) $(OBJECTS_RTL) $(OBJECTS_INBV) TAG_OBJECTS := $(join $(dir $(DEP_OBJECTS)),$(patsubst %.o, .%.TAG, $(notdir $(DEP_OBJECTS)))) @@ -383,12 +388,12 @@ OBJECTS := \ $(OBJECTS_KE) \ $(OBJECTS_CC) \ $(OBJECTS_CM) \ - $(OBJECTS_DBG) \ $(OBJECTS_EX) \ $(OBJECTS_LPC) \ $(OBJECTS_FS) \ $(OBJECTS_IO) \ $(OBJECTS_KD) \ + $(OBJECTS_DBGK) \ $(OBJECTS_LDR) \ $(OBJECTS_MM) \ $(OBJECTS_OB) \ @@ -396,6 +401,7 @@ OBJECTS := \ $(OBJECTS_PS) \ $(OBJECTS_RTL) \ $(OBJECTS_SE) \ + $(OBJECTS_KDBG) \ $(OBJECTS_INBV) \ $(OBJECTS_RESOURCE) diff --git a/reactos/ntoskrnl/Makefile.i386 b/reactos/ntoskrnl/Makefile.i386 index c38d33738f4..5c1fcaefde6 100644 --- a/reactos/ntoskrnl/Makefile.i386 +++ b/reactos/ntoskrnl/Makefile.i386 @@ -52,10 +52,21 @@ OBJECTS_RTL_I386 := \ rtl/i386/exception.o \ rtl/i386/seh.o +ifeq ($(KDBG), 1) +OBJECTS_KDBG_I386 := \ + kdbg/i386/kdb_help.o \ + kdbg/i386/i386-dis.o \ + kdbg/i386/longjmp.o \ + kdbg/i386/setjmp.o +preall: all +else +OBJECTS_KDBG_I386 := +endif + OBJECTS_PS_I386 := \ ps/i386/continue.o RTL_EXCLUDE_FILTER := OBJECTS_ARCH = $(OBJECTS_BOOT) $(OBJECTS_EX_I386) $(OBJECTS_KE_I386) $(OBJECTS_MM_I386) \ - $(OBJECTS_RTL_I386) $(OBJECTS_PS_I386) + $(OBJECTS_RTL_I386) $(OBJECTS_KDBG_I386) $(OBJECTS_PS_I386) diff --git a/reactos/ntoskrnl/ex/init.c b/reactos/ntoskrnl/ex/init.c index 66e8938ed03..d80e56fe89a 100644 --- a/reactos/ntoskrnl/ex/init.c +++ b/reactos/ntoskrnl/ex/init.c @@ -11,7 +11,7 @@ #include #include -#include "../dbg/kdb.h" +#include #define NDEBUG #include diff --git a/reactos/ntoskrnl/include/internal/dbg.h b/reactos/ntoskrnl/include/internal/dbg.h index 7f06b681036..8e85681835f 100644 --- a/reactos/ntoskrnl/include/internal/dbg.h +++ b/reactos/ntoskrnl/include/internal/dbg.h @@ -10,11 +10,5 @@ NTSTATUS STDCALL LpcSendDebugMessagePort(PEPORT Port, PLPC_DBG_MESSAGE Message, PLPC_DBG_MESSAGE Reply); -VOID -DbgkCreateThread(PVOID StartAddress); -ULONG -DbgkForwardException(EXCEPTION_RECORD Er, ULONG FirstChance); -BOOLEAN -DbgShouldPrint(PCH Filename); #endif /* __INCLUDE_INTERNAL_DBG_H */ diff --git a/reactos/ntoskrnl/include/internal/debug.h b/reactos/ntoskrnl/include/internal/debug.h index 31324131183..5d2c184693e 100644 --- a/reactos/ntoskrnl/include/internal/debug.h +++ b/reactos/ntoskrnl/include/internal/debug.h @@ -93,19 +93,6 @@ #define CHECKPOINT1 do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0) -#if defined(KDBG) && defined(NDEBUG) && defined(__NTOSKRNL__) - -#define DPRINT(args...) do { \ - if (DbgShouldPrint(__FILE__)) { \ - DbgPrint("(%s:%d) ",__FILE__,__LINE__); \ - DbgPrint(args); \ - } \ -} while(0) - -#define CHECKPOINT - -#else /* KDBG && NDEBUG && __NTOSKRNL__ */ - #ifndef NDEBUG #ifdef __GNUC__ /* using GNU C/C99 macro ellipsis */ #define DPRINT(args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(args); } while(0) @@ -122,7 +109,6 @@ #define CHECKPOINT #endif /* NDEBUG */ -#endif /* KDBG && NDEBUG */ /* * FUNCTION: Assert a maximum value for the current irql diff --git a/reactos/ntoskrnl/include/ntoskrnl.h b/reactos/ntoskrnl/include/ntoskrnl.h index 76088c09a60..b9462f502a5 100755 --- a/reactos/ntoskrnl/include/ntoskrnl.h +++ b/reactos/ntoskrnl/include/ntoskrnl.h @@ -54,6 +54,7 @@ #include #include #include +#include #include #include #include diff --git a/reactos/ntoskrnl/io/iomgr.c b/reactos/ntoskrnl/io/iomgr.c index 8614e6076b9..02233f954e7 100644 --- a/reactos/ntoskrnl/io/iomgr.c +++ b/reactos/ntoskrnl/io/iomgr.c @@ -11,7 +11,7 @@ /* INCLUDES ****************************************************************/ #include -#include "../dbg/kdb.h" +#include #define NDEBUG #include @@ -642,7 +642,6 @@ IoInit3(VOID) Status = IoCreateSystemRootLink((PCHAR)KeLoaderBlock.CommandLine); if (!NT_SUCCESS(Status)) { DbgPrint("IoCreateSystemRootLink FAILED: (0x%x) - ", Status); - DbgPrintErrorMessage (Status); KEBUGCHECK(INACCESSIBLE_BOOT_DEVICE); } diff --git a/reactos/ntoskrnl/kd/kdebug.c b/reactos/ntoskrnl/kd/kdebug.c index 06c3856bcf7..374c0a29995 100644 --- a/reactos/ntoskrnl/kd/kdebug.c +++ b/reactos/ntoskrnl/kd/kdebug.c @@ -9,7 +9,7 @@ */ #include -#include "../dbg/kdb.h" +#include #include /* serial debug connection */ @@ -78,11 +78,6 @@ KdInitSystem(ULONG BootPhase, if (BootPhase > 0) { -#ifdef KDBG - /* Initialize runtime debugging if available */ - DbgRDebugInit(); -#endif - #ifdef KDBG /* Initialize the local kernel debugger. */ KdDebuggerEnabled = TRUE; diff --git a/reactos/ntoskrnl/kd/mda.c b/reactos/ntoskrnl/kd/mda.c index cd6887ac3c3..c03ea0ec863 100644 --- a/reactos/ntoskrnl/kd/mda.c +++ b/reactos/ntoskrnl/kd/mda.c @@ -11,7 +11,7 @@ /* INCLUDES ******************************************************************/ #include -#include "../dbg/kdb.h" +#include /* VARIABLES ***************************************************************/ diff --git a/reactos/ntoskrnl/dbg/dbgctrl.c b/reactos/ntoskrnl/kdbg/dbgctrl.c similarity index 100% rename from reactos/ntoskrnl/dbg/dbgctrl.c rename to reactos/ntoskrnl/kdbg/dbgctrl.c diff --git a/reactos/ntoskrnl/dbg/errinfo.c b/reactos/ntoskrnl/kdbg/errinfo.c similarity index 100% rename from reactos/ntoskrnl/dbg/errinfo.c rename to reactos/ntoskrnl/kdbg/errinfo.c diff --git a/reactos/ntoskrnl/dbg/i386/dis-asm.h b/reactos/ntoskrnl/kdbg/i386/dis-asm.h similarity index 100% rename from reactos/ntoskrnl/dbg/i386/dis-asm.h rename to reactos/ntoskrnl/kdbg/i386/dis-asm.h diff --git a/reactos/ntoskrnl/dbg/i386/i386-dis.c b/reactos/ntoskrnl/kdbg/i386/i386-dis.c similarity index 100% rename from reactos/ntoskrnl/dbg/i386/i386-dis.c rename to reactos/ntoskrnl/kdbg/i386/i386-dis.c diff --git a/reactos/ntoskrnl/dbg/i386/kdb_help.S b/reactos/ntoskrnl/kdbg/i386/kdb_help.S similarity index 100% rename from reactos/ntoskrnl/dbg/i386/kdb_help.S rename to reactos/ntoskrnl/kdbg/i386/kdb_help.S diff --git a/reactos/ntoskrnl/dbg/i386/longjmp.S b/reactos/ntoskrnl/kdbg/i386/longjmp.S similarity index 100% rename from reactos/ntoskrnl/dbg/i386/longjmp.S rename to reactos/ntoskrnl/kdbg/i386/longjmp.S diff --git a/reactos/ntoskrnl/dbg/i386/setjmp.S b/reactos/ntoskrnl/kdbg/i386/setjmp.S similarity index 100% rename from reactos/ntoskrnl/dbg/i386/setjmp.S rename to reactos/ntoskrnl/kdbg/i386/setjmp.S diff --git a/reactos/ntoskrnl/dbg/kdb.c b/reactos/ntoskrnl/kdbg/kdb.c similarity index 99% rename from reactos/ntoskrnl/dbg/kdb.c rename to reactos/ntoskrnl/kdbg/kdb.c index f6a08630398..0a8f205467b 100644 --- a/reactos/ntoskrnl/dbg/kdb.c +++ b/reactos/ntoskrnl/kdbg/kdb.c @@ -11,7 +11,7 @@ /* INCLUDES ******************************************************************/ #include -#include "kdb.h" +#include #define NDEBUG #include diff --git a/reactos/ntoskrnl/dbg/kdb.h b/reactos/ntoskrnl/kdbg/kdb.h similarity index 100% rename from reactos/ntoskrnl/dbg/kdb.h rename to reactos/ntoskrnl/kdbg/kdb.h diff --git a/reactos/ntoskrnl/dbg/kdb_cli.c b/reactos/ntoskrnl/kdbg/kdb_cli.c similarity index 99% rename from reactos/ntoskrnl/dbg/kdb_cli.c rename to reactos/ntoskrnl/kdbg/kdb_cli.c index f3b6020fd85..4df5a359910 100644 --- a/reactos/ntoskrnl/dbg/kdb_cli.c +++ b/reactos/ntoskrnl/kdbg/kdb_cli.c @@ -30,7 +30,7 @@ #include #include -#include "kdb.h" +#include #define NDEBUG #include diff --git a/reactos/ntoskrnl/dbg/kdb_expr.c b/reactos/ntoskrnl/kdbg/kdb_expr.c similarity index 96% rename from reactos/ntoskrnl/dbg/kdb_expr.c rename to reactos/ntoskrnl/kdbg/kdb_expr.c index fb36fedf77c..e1765c717e9 100644 --- a/reactos/ntoskrnl/dbg/kdb_expr.c +++ b/reactos/ntoskrnl/kdbg/kdb_expr.c @@ -35,7 +35,7 @@ /* INCLUDES ******************************************************************/ #include -#include "kdb.h" +#include #define NDEBUG #include diff --git a/reactos/ntoskrnl/dbg/kdb_keyboard.c b/reactos/ntoskrnl/kdbg/kdb_keyboard.c similarity index 100% rename from reactos/ntoskrnl/dbg/kdb_keyboard.c rename to reactos/ntoskrnl/kdbg/kdb_keyboard.c diff --git a/reactos/ntoskrnl/dbg/kdb_serial.c b/reactos/ntoskrnl/kdbg/kdb_serial.c similarity index 100% rename from reactos/ntoskrnl/dbg/kdb_serial.c rename to reactos/ntoskrnl/kdbg/kdb_serial.c diff --git a/reactos/ntoskrnl/dbg/kdb_string.c b/reactos/ntoskrnl/kdbg/kdb_string.c similarity index 100% rename from reactos/ntoskrnl/dbg/kdb_string.c rename to reactos/ntoskrnl/kdbg/kdb_string.c diff --git a/reactos/ntoskrnl/dbg/kdb_symbols.c b/reactos/ntoskrnl/kdbg/kdb_symbols.c similarity index 99% rename from reactos/ntoskrnl/dbg/kdb_symbols.c rename to reactos/ntoskrnl/kdbg/kdb_symbols.c index c95259ef4bc..d1ae9755b81 100644 --- a/reactos/ntoskrnl/dbg/kdb_symbols.c +++ b/reactos/ntoskrnl/kdbg/kdb_symbols.c @@ -28,7 +28,7 @@ #define NDEBUG #include -#include "kdb.h" +#include /* GLOBALS ******************************************************************/ diff --git a/reactos/ntoskrnl/dbg/print.c b/reactos/ntoskrnl/kdbg/print.c similarity index 100% rename from reactos/ntoskrnl/dbg/print.c rename to reactos/ntoskrnl/kdbg/print.c diff --git a/reactos/ntoskrnl/dbg/rdebug.c b/reactos/ntoskrnl/kdbg/rdebug.c similarity index 100% rename from reactos/ntoskrnl/dbg/rdebug.c rename to reactos/ntoskrnl/kdbg/rdebug.c diff --git a/reactos/ntoskrnl/dbg/user.c b/reactos/ntoskrnl/kdbg/user.c similarity index 100% rename from reactos/ntoskrnl/dbg/user.c rename to reactos/ntoskrnl/kdbg/user.c diff --git a/reactos/ntoskrnl/ke/i386/irq.c b/reactos/ntoskrnl/ke/i386/irq.c index 22d269b69ac..22fcf10221b 100644 --- a/reactos/ntoskrnl/ke/i386/irq.c +++ b/reactos/ntoskrnl/ke/i386/irq.c @@ -20,7 +20,7 @@ #include #if defined(KDBG) || defined(DBG) -#include <../dbg/kdb.h> +#include #endif /* KDBG */ #include <../hal/halx86/include/halirq.h> diff --git a/reactos/ntoskrnl/lpc/send.c b/reactos/ntoskrnl/lpc/send.c index 1f790c8609e..1179f1280d9 100644 --- a/reactos/ntoskrnl/lpc/send.c +++ b/reactos/ntoskrnl/lpc/send.c @@ -11,6 +11,7 @@ /* INCLUDES *****************************************************************/ #include + #define NDEBUG #include