- 论坛徽章:
- 0
|
[root@antty linux-2.6.24]# man printk
Formatting page, please wait...
PRINTK(9) Kernel utility functions PRINTK(9)
NAME
printk - print a kernel message
SYNOPSIS
int printk (const char * fmt, ...);
ARGUMENTS
fmt format string
variable arguments
DESCRIPTION
This is printk. It can be called from any context. We want it to work. Be aware of the fact that if
oops_in_progress is not set, we might try to wake klogd up which could deadlock on runqueue lock if printk
is called from scheduler code.
We try to grab the console_sem. If we succeed, it’s easy - we log the output and call the console drivers.
If we fail to get the semaphore we place the output into the log buffer and return. The current holder of
the console_sem will notice the new output in release_console_sem and will send it to the consoles before
releasing the semaphore.
One effect of this deferred printing is that code which calls printk and then changes console_loglevel may
break. This is because console_loglevel is inspected when the actual printing occurs.
SEE ALSO
printf(3)
Kernel Hackers Manual 2.6.24 June 2008 PRINTK(9)
(END) |
|