linuxカーネルデバッグログスイッチ-pr_debug出力

1452 ワード

1、pr_をデバグ出力
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -59,7 +59,7 @@
/* We show everything that is MOREimportant than this.. */
#define MINIMUM_CONSOLE_LOGLEVEL 1/*Minimum loglevel we let people use */
-#define DEFAULT_CONSOLE_LOGLEVEL 7/*anything MORE serious than KERN_DEBUG */
+#define DEFAULT_CONSOLE_LOGLEVEL 8/*anything MORE serious than KERN_DEBUG */
int console_printk[4] = {
DEFAULT_CONSOLE_LOGLEVEL,/* console_loglevel */
2、モジュール内のコードを出力できるようにする
--- a/drivers/of/Makefile
+++ b/drivers/of/Makefile
EXTRA_CFLAGS += -DDEBUG
3、ファイルごとに出力させる
--- a/drivers/of/Makefile
+++ b/drivers/of/Makefile
ファイルincludeの前にdefine DEBUGを追加
またはMakefileに追加
pr_debug()

    Some files call pr_debug(), which is ordinarily an empty macro that discards
    its arguments at compile time.  To enable debugging output, build the
    appropriate file with -DDEBUG by adding

      CFLAGS_[filename].o := -DDEBUG

    to the makefile.

    For example, to see all attempts to spawn a usermode helper (such as
    /sbin/hotplug), add to lib/Makefile the line:

        CFLAGS_kobject_uevent.o := -DDEBUG

    Then boot the new kernel, do something that spawns a usermode helper, and
    use the "dmesg" command to view the pr_debug() output.

4、カーネル印刷制御

原文住所:http://blog.csdn.net/piaomiaoju/article/details/35566269