Почему pr_debug ядра Linux не дает никакого вывода?

У меня есть загружаемый модуль ядра и его инициализация, как указано ниже

static int __init id_init(void)
{
    struct identity *temp;

    /* some code which is not relevant to the question */

    temp = identity_find(3);
    pr_debug("id 3 = %s\n", temp->name);

    temp = identity_find(42);
    if (temp == NULL)
        pr_debug("id 42 not found\n");

    /* some code which is not relevant to the question */

    return 0;
}

Также я включил динамическую отладку в используемой версии ядра - т.е.CONFIG_DYNAMIC_DEBUG=y.

И в Makefile модуля я добавил строкуCFLAGS_[id].o := -DDEBUG гдеid.c это имя файла.

Теперь я проверил в/sys/kernel/debug/dynamic_debug/control после выполнения insmod этого модуля, в котором я нашел следующие строки

/home/pauldc/Programming/Kernel/id/id.c:69 [id]id_init =_ "id 42 not found\012"
/home/pauldc/Programming/Kernel/id/id.c:65 [id]id_init =_ "id 3 = %s\012"

Даже после всего этого, к моему разочарованию, я не смог найти два приведенных выше оператора pr_debug в выводе dmesg. Так что я пропускаю или делаю неправильно?

Ответы на вопрос(0)

Ваш ответ на вопрос