diff options
Diffstat (limited to 'init/main.c')
| -rw-r--r-- | init/main.c | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/init/main.c b/init/main.c index 1687b0167c4a..624266b524d4 100644 --- a/init/main.c +++ b/init/main.c | |||
| @@ -58,6 +58,7 @@ | |||
| 58 | #include <linux/kthread.h> | 58 | #include <linux/kthread.h> |
| 59 | #include <linux/sched.h> | 59 | #include <linux/sched.h> |
| 60 | #include <linux/signal.h> | 60 | #include <linux/signal.h> |
| 61 | #include <linux/idr.h> | ||
| 61 | 62 | ||
| 62 | #include <asm/io.h> | 63 | #include <asm/io.h> |
| 63 | #include <asm/bugs.h> | 64 | #include <asm/bugs.h> |
| @@ -559,6 +560,7 @@ asmlinkage void __init start_kernel(void) | |||
| 559 | printk(KERN_NOTICE); | 560 | printk(KERN_NOTICE); |
| 560 | printk(linux_banner); | 561 | printk(linux_banner); |
| 561 | setup_arch(&command_line); | 562 | setup_arch(&command_line); |
| 563 | mm_init_owner(&init_mm, &init_task); | ||
| 562 | setup_command_line(command_line); | 564 | setup_command_line(command_line); |
| 563 | unwind_setup(); | 565 | unwind_setup(); |
| 564 | setup_per_cpu_areas(); | 566 | setup_per_cpu_areas(); |
| @@ -636,6 +638,7 @@ asmlinkage void __init start_kernel(void) | |||
| 636 | enable_debug_pagealloc(); | 638 | enable_debug_pagealloc(); |
| 637 | cpu_hotplug_init(); | 639 | cpu_hotplug_init(); |
| 638 | kmem_cache_init(); | 640 | kmem_cache_init(); |
| 641 | idr_init_cache(); | ||
| 639 | setup_per_cpu_pageset(); | 642 | setup_per_cpu_pageset(); |
| 640 | numa_policy_init(); | 643 | numa_policy_init(); |
| 641 | if (late_time_init) | 644 | if (late_time_init) |
| @@ -700,10 +703,8 @@ static void __init do_initcalls(void) | |||
| 700 | int result; | 703 | int result; |
| 701 | 704 | ||
| 702 | if (initcall_debug) { | 705 | if (initcall_debug) { |
| 703 | printk("Calling initcall 0x%p", *call); | 706 | print_fn_descriptor_symbol("calling %s()\n", |
| 704 | print_fn_descriptor_symbol(": %s()", | ||
| 705 | (unsigned long) *call); | 707 | (unsigned long) *call); |
| 706 | printk("\n"); | ||
| 707 | t0 = ktime_get(); | 708 | t0 = ktime_get(); |
| 708 | } | 709 | } |
| 709 | 710 | ||
| @@ -713,15 +714,10 @@ static void __init do_initcalls(void) | |||
| 713 | t1 = ktime_get(); | 714 | t1 = ktime_get(); |
| 714 | delta = ktime_sub(t1, t0); | 715 | delta = ktime_sub(t1, t0); |
| 715 | 716 | ||
| 716 | printk("initcall 0x%p", *call); | 717 | print_fn_descriptor_symbol("initcall %s()", |
| 717 | print_fn_descriptor_symbol(": %s()", | ||
| 718 | (unsigned long) *call); | 718 | (unsigned long) *call); |
| 719 | printk(" returned %d.\n", result); | 719 | printk(" returned %d after %Ld msecs\n", result, |
| 720 | 720 | (unsigned long long) delta.tv64 >> 20); | |
| 721 | printk("initcall 0x%p ran for %Ld msecs: ", | ||
| 722 | *call, (unsigned long long)delta.tv64 >> 20); | ||
| 723 | print_fn_descriptor_symbol("%s()\n", | ||
| 724 | (unsigned long) *call); | ||
| 725 | } | 721 | } |
| 726 | 722 | ||
| 727 | if (result && result != -ENODEV && initcall_debug) { | 723 | if (result && result != -ENODEV && initcall_debug) { |
| @@ -737,10 +733,9 @@ static void __init do_initcalls(void) | |||
| 737 | local_irq_enable(); | 733 | local_irq_enable(); |
| 738 | } | 734 | } |
| 739 | if (msg) { | 735 | if (msg) { |
| 740 | printk(KERN_WARNING "initcall at 0x%p", *call); | 736 | print_fn_descriptor_symbol(KERN_WARNING "initcall %s()", |
| 741 | print_fn_descriptor_symbol(": %s()", | ||
| 742 | (unsigned long) *call); | 737 | (unsigned long) *call); |
| 743 | printk(": returned with %s\n", msg); | 738 | printk(" returned with %s\n", msg); |
| 744 | } | 739 | } |
| 745 | } | 740 | } |
| 746 | 741 | ||
