Changeset 7bdcc45 in mainline for kernel/generic/src/console
- Timestamp:
- 2010-12-16T16:38:49Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 7837101
- Parents:
- 8e58f94 (diff), eb221e5 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - Location:
- kernel/generic/src/console
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/console/cmd.c
r8e58f94 r7bdcc45 554 554 } 555 555 556 unsigned int _len = (unsigned int) len; 557 if ((_len != len) || (((int) _len) < 0)) { 558 printf("Command length overflow\n"); 559 return 1; 560 } 561 556 562 for (cur = cmd_head.next; cur != &cmd_head; cur = cur->next) { 557 563 cmd_info_t *hlp; … … 559 565 560 566 spinlock_lock(&hlp->lock); 561 printf("%-*s %s\n", len, hlp->name, hlp->description);567 printf("%-*s %s\n", _len, hlp->name, hlp->description); 562 568 spinlock_unlock(&hlp->lock); 563 569 } … … 595 601 596 602 /* This doesn't have to be very accurate */ 597 unative_t sec = uptime->seconds1;603 sysarg_t sec = uptime->seconds1; 598 604 599 605 printf("Up %" PRIun " days, %" PRIun " hours, %" PRIun " minutes, %" PRIun " seconds\n", … … 650 656 uintptr_t symaddr; 651 657 char *symbol; 652 unative_t (*fnc)(void);658 sysarg_t (*fnc)(void); 653 659 fncptr_t fptr; 654 660 int rc; … … 666 672 667 673 ipl = interrupts_disable(); 668 fnc = ( unative_t (*)(void)) arch_construct_function(&fptr,674 fnc = (sysarg_t (*)(void)) arch_construct_function(&fptr, 669 675 (void *) symaddr, (void *) cmd_call0); 670 printf("Calling %s() (%p)\n", symbol, symaddr);676 printf("Calling %s() (%p)\n", symbol, (void *) symaddr); 671 677 printf("Result: %#" PRIxn "\n", fnc()); 672 678 interrupts_restore(ipl); … … 685 691 */ 686 692 687 size_t i;693 unsigned int i; 688 694 for (i = 0; i < config.cpu_count; i++) { 689 695 if (!cpus[i].active) … … 697 703 irq_spinlock_unlock(&thread->lock, true); 698 704 699 printf("cpu% " PRIs ": ", i);705 printf("cpu%u: ", i); 700 706 701 707 thread_ready(thread); … … 703 709 thread_detach(thread); 704 710 } else 705 printf("Unable to create thread for cpu% " PRIs "\n", i);711 printf("Unable to create thread for cpu%u\n", i); 706 712 } 707 713 … … 714 720 uintptr_t symaddr; 715 721 char *symbol; 716 unative_t (*fnc)(unative_t, ...);717 unative_t arg1 = argv[1].intval;722 sysarg_t (*fnc)(sysarg_t, ...); 723 sysarg_t arg1 = argv[1].intval; 718 724 fncptr_t fptr; 719 725 int rc; … … 731 737 732 738 ipl = interrupts_disable(); 733 fnc = (unative_t (*)(unative_t, ...)) arch_construct_function(&fptr, (void *) symaddr, (void *) cmd_call1); 734 printf("Calling f(%#" PRIxn "): %p: %s\n", arg1, symaddr, symbol); 739 fnc = (sysarg_t (*)(sysarg_t, ...)) 740 arch_construct_function(&fptr, (void *) symaddr, 741 (void *) cmd_call1); 742 printf("Calling f(%#" PRIxn "): %p: %s\n", arg1, 743 (void *) symaddr, symbol); 735 744 printf("Result: %#" PRIxn "\n", fnc(arg1)); 736 745 interrupts_restore(ipl); … … 747 756 uintptr_t symaddr; 748 757 char *symbol; 749 unative_t (*fnc)(unative_t, unative_t, ...);750 unative_t arg1 = argv[1].intval;751 unative_t arg2 = argv[2].intval;758 sysarg_t (*fnc)(sysarg_t, sysarg_t, ...); 759 sysarg_t arg1 = argv[1].intval; 760 sysarg_t arg2 = argv[2].intval; 752 761 fncptr_t fptr; 753 762 int rc; … … 765 774 766 775 ipl = interrupts_disable(); 767 fnc = (unative_t (*)(unative_t, unative_t, ...)) arch_construct_function(&fptr, (void *) symaddr, (void *) cmd_call2); 776 fnc = (sysarg_t (*)(sysarg_t, sysarg_t, ...)) 777 arch_construct_function(&fptr, (void *) symaddr, 778 (void *) cmd_call2); 768 779 printf("Calling f(%#" PRIxn ", %#" PRIxn "): %p: %s\n", 769 arg1, arg2, symaddr, symbol);780 arg1, arg2, (void *) symaddr, symbol); 770 781 printf("Result: %#" PRIxn "\n", fnc(arg1, arg2)); 771 782 interrupts_restore(ipl); … … 781 792 uintptr_t symaddr; 782 793 char *symbol; 783 unative_t (*fnc)(unative_t, unative_t, unative_t, ...);784 unative_t arg1 = argv[1].intval;785 unative_t arg2 = argv[2].intval;786 unative_t arg3 = argv[3].intval;794 sysarg_t (*fnc)(sysarg_t, sysarg_t, sysarg_t, ...); 795 sysarg_t arg1 = argv[1].intval; 796 sysarg_t arg2 = argv[2].intval; 797 sysarg_t arg3 = argv[3].intval; 787 798 fncptr_t fptr; 788 799 int rc; … … 800 811 801 812 ipl = interrupts_disable(); 802 fnc = (unative_t (*)(unative_t, unative_t, unative_t, ...)) arch_construct_function(&fptr, (void *) symaddr, (void *) cmd_call3); 803 printf("Calling f(%#" PRIxn ",%#" PRIxn ", %#" PRIxn "): %p: %s\n", 804 arg1, arg2, arg3, symaddr, symbol); 813 fnc = (sysarg_t (*)(sysarg_t, sysarg_t, sysarg_t, ...)) 814 arch_construct_function(&fptr, (void *) symaddr, 815 (void *) cmd_call3); 816 printf("Calling f(%#" PRIxn ",%#" PRIxn ", %#" PRIxn "): %p: %s\n", 817 arg1, arg2, arg3, (void *) symaddr, symbol); 805 818 printf("Result: %#" PRIxn "\n", fnc(arg1, arg2, arg3)); 806 819 interrupts_restore(ipl); … … 875 888 876 889 if (rc == ENOENT) 877 printf("Symbol %s not found.\n", argv->buffer);890 printf("Symbol %s not found.\n", (char *) argv->buffer); 878 891 else if (rc == EINVAL) 879 892 printf("Invalid address.\n"); … … 884 897 if (pointer) 885 898 addr = *(uintptr_t *) addr; 886 printf("Writing %#" PRIx 64 " -> %p\n", arg1,addr);899 printf("Writing %#" PRIx32" -> %p\n", arg1, (void *) addr); 887 900 *(uint32_t *) addr = arg1; 888 901 } else … … 1172 1185 } 1173 1186 1187 unsigned int _len = (unsigned int) len; 1188 if ((_len != len) || (((int) _len) < 0)) { 1189 printf("Command length overflow\n"); 1190 return; 1191 } 1192 1174 1193 for (test = tests; test->name != NULL; test++) 1175 printf("%-*s %s%s\n", len, test->name, test->desc, (test->safe ? "" : " (unsafe)")); 1176 1177 printf("%-*s Run all safe tests\n", len, "*"); 1194 printf("%-*s %s%s\n", _len, test->name, test->desc, 1195 (test->safe ? "" : " (unsafe)")); 1196 1197 printf("%-*s Run all safe tests\n", _len, "*"); 1178 1198 } 1179 1199 -
kernel/generic/src/console/console.c
r8e58f94 r7bdcc45 162 162 ddi_parea_register(&klog_parea); 163 163 164 sysinfo_set_item_val("klog.faddr", NULL, ( unative_t) faddr);164 sysinfo_set_item_val("klog.faddr", NULL, (sysarg_t) faddr); 165 165 sysinfo_set_item_val("klog.pages", NULL, KLOG_PAGES); 166 166 … … 193 193 194 194 /** Tell kernel to get keyboard/console access again */ 195 unative_t sys_debug_enable_console(void)195 sysarg_t sys_debug_enable_console(void) 196 196 { 197 197 #ifdef CONFIG_KCONSOLE … … 204 204 205 205 /** Tell kernel to relinquish keyboard/console access */ 206 unative_t sys_debug_disable_console(void)206 sysarg_t sys_debug_disable_console(void) 207 207 { 208 208 release_console(); … … 333 333 * 334 334 */ 335 unative_t sys_klog(int fd, const void *buf, size_t size)335 sysarg_t sys_klog(int fd, const void *buf, size_t size) 336 336 { 337 337 char *data; … … 339 339 340 340 if (size > PAGE_SIZE) 341 return ( unative_t) ELIMIT;341 return (sysarg_t) ELIMIT; 342 342 343 343 if (size > 0) { 344 344 data = (char *) malloc(size + 1, 0); 345 345 if (!data) 346 return ( unative_t) ENOMEM;346 return (sysarg_t) ENOMEM; 347 347 348 348 rc = copy_from_uspace(data, buf, size); 349 349 if (rc) { 350 350 free(data); 351 return ( unative_t) rc;351 return (sysarg_t) rc; 352 352 } 353 353 data[size] = 0; -
kernel/generic/src/console/kconsole.c
r8e58f94 r7bdcc45 426 426 427 427 NO_TRACE static bool parse_int_arg(const char *text, size_t len, 428 unative_t *result)428 sysarg_t *result) 429 429 { 430 430 bool isaddr = false; … … 461 461 case EOK: 462 462 if (isaddr) 463 *result = ( unative_t) symaddr;463 *result = (sysarg_t) symaddr; 464 464 else if (isptr) 465 *result = **(( unative_t **) symaddr);465 *result = **((sysarg_t **) symaddr); 466 466 else 467 *result = *(( unative_t *) symaddr);467 *result = *((sysarg_t *) symaddr); 468 468 break; 469 469 default: … … 483 483 return false; 484 484 case EOK: 485 *result = ( unative_t) value;485 *result = (sysarg_t) value; 486 486 if (isptr) 487 *result = *(( unative_t *) *result);487 *result = *((sysarg_t *) *result); 488 488 break; 489 489 default: … … 629 629 cmdline + start + 1, 630 630 (end - start) - 1); 631 cmd->argv[i].intval = ( unative_t) buf;631 cmd->argv[i].intval = (sysarg_t) buf; 632 632 cmd->argv[i].vartype = ARG_TYPE_STRING; 633 633 } else {
Note:
See TracChangeset
for help on using the changeset viewer.
