diff options
Diffstat (limited to 'kernel/printk.c')
| -rw-r--r-- | kernel/printk.c | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/kernel/printk.c b/kernel/printk.c index 1498689548d1..290a07ce2c8a 100644 --- a/kernel/printk.c +++ b/kernel/printk.c | |||
| @@ -85,10 +85,6 @@ static int console_locked; | |||
| 85 | */ | 85 | */ |
| 86 | static DEFINE_SPINLOCK(logbuf_lock); | 86 | static DEFINE_SPINLOCK(logbuf_lock); |
| 87 | 87 | ||
| 88 | static char __log_buf[__LOG_BUF_LEN]; | ||
| 89 | static char *log_buf = __log_buf; | ||
| 90 | static int log_buf_len = __LOG_BUF_LEN; | ||
| 91 | |||
| 92 | #define LOG_BUF_MASK (log_buf_len-1) | 88 | #define LOG_BUF_MASK (log_buf_len-1) |
| 93 | #define LOG_BUF(idx) (log_buf[(idx) & LOG_BUF_MASK]) | 89 | #define LOG_BUF(idx) (log_buf[(idx) & LOG_BUF_MASK]) |
| 94 | 90 | ||
| @@ -99,7 +95,6 @@ static int log_buf_len = __LOG_BUF_LEN; | |||
| 99 | static unsigned long log_start; /* Index into log_buf: next char to be read by syslog() */ | 95 | static unsigned long log_start; /* Index into log_buf: next char to be read by syslog() */ |
| 100 | static unsigned long con_start; /* Index into log_buf: next char to be sent to consoles */ | 96 | static unsigned long con_start; /* Index into log_buf: next char to be sent to consoles */ |
| 101 | static unsigned long log_end; /* Index into log_buf: most-recently-written-char + 1 */ | 97 | static unsigned long log_end; /* Index into log_buf: most-recently-written-char + 1 */ |
| 102 | static unsigned long logged_chars; /* Number of chars produced since last read+clear operation */ | ||
| 103 | 98 | ||
| 104 | /* | 99 | /* |
| 105 | * Array of consoles built from command line options (console=) | 100 | * Array of consoles built from command line options (console=) |
| @@ -120,6 +115,13 @@ static int preferred_console = -1; | |||
| 120 | /* Flag: console code may call schedule() */ | 115 | /* Flag: console code may call schedule() */ |
| 121 | static int console_may_schedule; | 116 | static int console_may_schedule; |
| 122 | 117 | ||
| 118 | #ifdef CONFIG_PRINTK | ||
| 119 | |||
| 120 | static char __log_buf[__LOG_BUF_LEN]; | ||
| 121 | static char *log_buf = __log_buf; | ||
| 122 | static int log_buf_len = __LOG_BUF_LEN; | ||
| 123 | static unsigned long logged_chars; /* Number of chars produced since last read+clear operation */ | ||
| 124 | |||
| 123 | /* | 125 | /* |
| 124 | * Setup a list of consoles. Called from init/main.c | 126 | * Setup a list of consoles. Called from init/main.c |
| 125 | */ | 127 | */ |
| @@ -535,6 +537,7 @@ __setup("time", printk_time_setup); | |||
| 535 | * then changes console_loglevel may break. This is because console_loglevel | 537 | * then changes console_loglevel may break. This is because console_loglevel |
| 536 | * is inspected when the actual printing occurs. | 538 | * is inspected when the actual printing occurs. |
| 537 | */ | 539 | */ |
| 540 | |||
| 538 | asmlinkage int printk(const char *fmt, ...) | 541 | asmlinkage int printk(const char *fmt, ...) |
| 539 | { | 542 | { |
| 540 | va_list args; | 543 | va_list args; |
| @@ -655,6 +658,18 @@ out: | |||
| 655 | EXPORT_SYMBOL(printk); | 658 | EXPORT_SYMBOL(printk); |
| 656 | EXPORT_SYMBOL(vprintk); | 659 | EXPORT_SYMBOL(vprintk); |
| 657 | 660 | ||
| 661 | #else | ||
| 662 | |||
| 663 | asmlinkage long sys_syslog(int type, char __user * buf, int len) | ||
| 664 | { | ||
| 665 | return 0; | ||
| 666 | } | ||
| 667 | |||
| 668 | int do_syslog(int type, char __user * buf, int len) { return 0; } | ||
| 669 | static void call_console_drivers(unsigned long start, unsigned long end) {} | ||
| 670 | |||
| 671 | #endif | ||
| 672 | |||
| 658 | /** | 673 | /** |
| 659 | * acquire_console_sem - lock the console system for exclusive use. | 674 | * acquire_console_sem - lock the console system for exclusive use. |
| 660 | * | 675 | * |
| @@ -931,7 +946,7 @@ int unregister_console(struct console * console) | |||
| 931 | return res; | 946 | return res; |
| 932 | } | 947 | } |
| 933 | EXPORT_SYMBOL(unregister_console); | 948 | EXPORT_SYMBOL(unregister_console); |
| 934 | 949 | ||
| 935 | /** | 950 | /** |
| 936 | * tty_write_message - write a message to a certain tty, not just the console. | 951 | * tty_write_message - write a message to a certain tty, not just the console. |
| 937 | * | 952 | * |
