Changeset 516ff92 in mainline for kernel/generic/src/console/console.c
- Timestamp:
- 2009-01-31T21:27:18Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 4863e50b
- Parents:
- 96a2e45
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/console/console.c
r96a2e45 r516ff92 66 66 static size_t klog_uspace = 0; 67 67 68 /**< Silent output */ 69 static bool silent = false; 70 68 71 /**< Kernel log spinlock */ 69 72 SPINLOCK_INITIALIZE(klog_lock); … … 71 74 /** Physical memory area used for klog buffer */ 72 75 static parea_t klog_parea; 73 76 74 77 /* 75 78 * For now, we use 0 as INR. … … 143 146 klog_inited = true; 144 147 spinlock_unlock(&klog_lock); 148 } 149 150 void grab_console(void) 151 { 152 silent = false; 153 arch_grab_console(); 154 } 155 156 void release_console(void) 157 { 158 silent = true; 159 arch_release_console(); 145 160 } 146 161 … … 200 215 index_t index = 0; 201 216 char ch; 202 217 203 218 while (index < buflen) { 204 219 ch = _getc(chardev); … … 214 229 } 215 230 putchar(ch); 216 231 217 232 if (ch == '\n') { /* end of string => write 0, return */ 218 233 buf[index] = '\0'; … … 254 269 index_t i; 255 270 for (i = klog_len - klog_stored; i < klog_len; i++) 256 stdout->op->write(stdout, klog[(klog_start + i) % KLOG_SIZE] );271 stdout->op->write(stdout, klog[(klog_start + i) % KLOG_SIZE], silent); 257 272 klog_stored = 0; 258 273 } … … 266 281 267 282 if (stdout->op->write) 268 stdout->op->write(stdout, c );283 stdout->op->write(stdout, c, silent); 269 284 else { 270 285 /* The character is just in the kernel log */
Note:
See TracChangeset
for help on using the changeset viewer.