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 | ||