Changeset 516ff92 in mainline for kernel/arch/ia32xen/src/drivers/xconsole.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/arch/ia32xen/src/drivers/xconsole.c
r96a2e45 r516ff92 56 56 } 57 57 58 void xen_putchar(chardev_t *d, const char ch )58 void xen_putchar(chardev_t *d, const char ch, bool silent) 59 59 { 60 if (start_info.console.domU.evtchn != 0) { 61 uint32_t cons = console_page.out_cons; 62 uint32_t prod = console_page.out_prod; 63 64 memory_barrier(); 65 66 if ((prod - cons) > sizeof(console_page.out)) 67 return; 68 69 if (ch == '\n') 70 console_page.out[MASK_INDEX(prod++, console_page.out)] = '\r'; 71 console_page.out[MASK_INDEX(prod++, console_page.out)] = ch; 72 73 write_barrier(); 74 75 console_page.out_prod = prod; 76 77 xen_notify_remote(start_info.console.domU.evtchn); 78 } else 79 xen_console_io(CONSOLE_IO_WRITE, 1, &ch); 60 if (!silent) { 61 if (start_info.console.domU.evtchn != 0) { 62 uint32_t cons = console_page.out_cons; 63 uint32_t prod = console_page.out_prod; 64 65 memory_barrier(); 66 67 if ((prod - cons) > sizeof(console_page.out)) 68 return; 69 70 if (ch == '\n') 71 console_page.out[MASK_INDEX(prod++, console_page.out)] = '\r'; 72 console_page.out[MASK_INDEX(prod++, console_page.out)] = ch; 73 74 write_barrier(); 75 76 console_page.out_prod = prod; 77 78 xen_notify_remote(start_info.console.domU.evtchn); 79 } else 80 xen_console_io(CONSOLE_IO_WRITE, 1, &ch); 81 } 80 82 } 81 83
Note:
See TracChangeset
for help on using the changeset viewer.