Re: about printk and console_loglevel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I think, that console and dmesg are not the same. console_loglevel mean sumething like text terminal. parport and so on, but dmesg is independent from this log level. You can write simple module like this:

#include <linux/module.h>
#include <linux/kernel.h>

int init_module(void) {
        printk(KERN_EMERG "EMERG: Hello World.\n"); printk(KERN_ALERT "ALERT: Hello World.\n"); printk(KERN_CRIT "CRIT: Hello World.\n"); printk(KERN_WARNING "WARNING: Hello World.\n"); printk(KERN_NOTICE "NOTICE: Hello World.\n"); printk(KERN_INFO "INFO: Hello World.\n"); printk(KERN_DEBUG "DEBUG: Hello World.\n"); return 0;
}

void cleanup_module(void) {
        printk("Bye :)");
}

and you see, that dmesg print everything (but /var/log/messages contained only WARNING, NOTICE and INFO levels messages, for console_loglevel = 3)

2011/3/5 Siddu <siddu.sjce@xxxxxxxxx>
Hi all,
Hi all,

I am little stuck understanding this piece of code below and the way its been working

Question: since KERN_INFO = 6 # which is msg_log_level
and as per code
msg_log_level < console_loglevel

 this line of printk is not supposed to show up in the dmesg log ? but it is showing up . Why 

cat /proc/sys/kernel/printk
4    4   1   7

console_loglevel = 4

printk(KERN_INFO "Brought up %ld CPUs\n", (long)num_online_cpus());


static void _call_console_drivers(unsigned start,
       unsigned end, int msg_log_level)
{
 if ((msg_log_level < console_loglevel || ignore_loglevel) &&
     console_drivers && start != end) {
   if ((start & LOG_BUF_MASK) > (end & LOG_BUF_MASK)) {
     /* wrapped write */
     __call_console_drivers(start & LOG_BUF_MASK,
           log_buf_len);
     __call_console_drivers(0, end & LOG_BUF_MASK);
   } else {
     __call_console_drivers(start, end);
   }
 }
}

Thanks for any inputs !
--
Regards,
~Sid~


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux