]> Zhao Yanbai Git Server - minix.git/commitdiff
MKSYSDEBUG: conditionally compile more debug code
authorArun Thomas <arun@minix3.org>
Fri, 16 Sep 2011 12:57:49 +0000 (14:57 +0200)
committerArun Thomas <arun@minix3.org>
Fri, 16 Sep 2011 13:25:26 +0000 (15:25 +0200)
kernel/arch/i386/exception.c
kernel/arch/i386/pre_init.c
kernel/arch/i386/protect.c
lib/libsys/Makefile
lib/libsys/stacktrace.c

index d5224932b56d9bf57570de756cb72063da58da2f..b5e99caaf7e5158d88ed35e97d27444babe72f8a 100644 (file)
@@ -136,6 +136,7 @@ PRIVATE void inkernel_disaster(struct proc *saved_proc,
        struct exception_frame * frame, struct ex_s *ep,
        int is_nested)
 {
+#if USE_SYSDEBUG
   if(ep) {
        if (ep->msg == NULL || machine.processor < ep->minprocessor)
                printf("\nIntel-reserved exception %d\n", frame->vector);
@@ -177,6 +178,7 @@ PRIVATE void inkernel_disaster(struct proc *saved_proc,
 
   /* in an early stage of boot process we don't have processes yet */
   panic("exception in kernel while booting, no saved_proc yet");
+#endif /* USE_SYSDEBUG */
 }
 
 /*===========================================================================*
@@ -261,6 +263,7 @@ PUBLIC void exception_handler(int is_nested, struct exception_frame * frame)
   panic("return from inkernel_disaster");
 }
 
+#if USE_SYSDEBUG
 /*===========================================================================*
  *                             proc_stacktrace_execute                      *
  *===========================================================================*/
@@ -303,13 +306,16 @@ PRIVATE void proc_stacktrace_execute(struct proc *whichproc, reg_t v_bp, reg_t p
        }
        printf("\n");
 }
+#endif /* USE_SYSDEBUG */
 
 /*===========================================================================*
  *                             proc_stacktrace                      *
  *===========================================================================*/
 PUBLIC void proc_stacktrace(struct proc *whichproc)
 {
+#if USE_SYSDEBUG
        proc_stacktrace_execute(whichproc, whichproc->p_reg.fp, whichproc->p_reg.pc);
+#endif /* USE_SYSDEBUG */
 }
 
 PUBLIC void enable_fpu_exception(void)
index f84ce23e90c599fb3802aefce1c52a6323caf502..2f89ce0a6cfa60b205ee742e72f00cd45cd61256 100644 (file)
@@ -19,7 +19,9 @@
 #include "libexec.h"
 #include <machine/multiboot.h>
 
+#if USE_SYSDEBUG
 #define MULTIBOOT_VERBOSE 1
+#endif
 
 /* FIXME: Share this define with kernel linker script */
 #define MULTIBOOT_KERNEL_ADDR 0x00200000UL
@@ -142,6 +144,7 @@ PRIVATE void mb_scroll_up(int lines)
 
 PRIVATE void mb_print(char *str) 
 {
+#if MULTIBOOT_VERBOSE
        while (*str) {
                if (*str == '\n') {
                        str++;
@@ -157,6 +160,7 @@ PRIVATE void mb_print(char *str)
                while (print_line >= MULTIBOOT_CONSOLE_LINES)
                        mb_scroll_up(1);
        }
+#endif /* MULTIBOOT_VERBOSE */
 }
 
 PRIVATE void mb_print_hex(u32_t value) 
index f28175ca438f0f8c7c723dec04bcff9f9078c6bf..4189278dc8eb714fc100a79ae14b9d43c837babe 100644 (file)
@@ -366,6 +366,7 @@ for (rp = BEG_PROC_ADDR; rp < END_PROC_ADDR; ++rp) {
 PUBLIC void printseg(char *banner, const int iscs, struct proc *pr,
   const u32_t selector)
 {
+#if USE_SYSDEBUG
        u32_t base, limit, index, dpl;
        struct segdesc_s *desc;
 
@@ -446,6 +447,7 @@ PUBLIC void printseg(char *banner, const int iscs, struct proc *pr,
        printf("DPL %d\n", dpl);
 
        return;
+#endif /* USE_SYSDEBUG */
 }
 
 /*===========================================================================*
index a67c57a9185c1eb2e725edc370efaf40d12c6e56..bbb0bc325890cf93ba47420481026d5d0cfc8a89 100644 (file)
@@ -136,6 +136,10 @@ CPPFLAGS+= -DUSE_COVERAGE
 CPPFLAGS+= -DUSE_LIVEUPDATE
 .endif
 
+.if ${USE_SYSDEBUG} != "no"
+CPPFLAGS+= -DUSE_SYSDEBUG
+.endif
+
 CPPFLAGS.sched_start.c+=       -I${MINIXSRCDIR}
 
 .if (${CC} == "gcc") || (${CC} == "clang")
index 6ddb4442e43964799d20d45f75dcbab3fc08244b..6d382f7e05451f551d12550cedf1b2e682e8183a 100644 (file)
@@ -34,6 +34,7 @@ typedef unsigned int reg_t;
 
 void util_nstrcat(char *str, unsigned long number)
 {
+#if USE_SYSDEBUG
        int n = 10, lead = 1;
        char nbuf[12], *p;
        p = nbuf;
@@ -51,16 +52,21 @@ void util_nstrcat(char *str, unsigned long number)
        *p++ = ' ';
        *p++ = '\0';
        strcat(str, nbuf);
+#endif /* USE_SYSDEBUG */
 }
 
 void util_stacktrace(void)
 {
+#if USE_SYSDEBUG
        FUNC_STACKTRACE(printf("0x%lx ", (unsigned long) pc));
        printf("\n");
+#endif /* USE_SYSDEBUG */
 }
 
 void util_stacktrace_strcat(char *str)
 {
+#if USE_SYSDEBUG
        FUNC_STACKTRACE(util_nstrcat(str, pc));
+#endif /* USE_SYSDEBUG */
 }