Merge commit '8700c95adb03' into timers/nohz
The full dynticks tree needs the latest RCU and sched upstream updates in order to fix some dependencies. Merge a common upstream merge point that has these updates. Conflicts: include/linux/perf_event.h kernel/rcutree.h kernel/rcutree_plugin.h Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
This commit is contained in:
46
init/main.c
46
init/main.c
@@ -9,6 +9,8 @@
|
||||
* Simplified starting of init: Michael A. Griffith <grif@acm.org>
|
||||
*/
|
||||
|
||||
#define DEBUG /* Enable initcall_debug */
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/proc_fs.h>
|
||||
@@ -174,8 +176,8 @@ static int __init obsolete_checksetup(char *line)
|
||||
if (line[n] == '\0' || line[n] == '=')
|
||||
had_early_param = 1;
|
||||
} else if (!p->setup_func) {
|
||||
printk(KERN_WARNING "Parameter %s is obsolete,"
|
||||
" ignored\n", p->str);
|
||||
pr_warn("Parameter %s is obsolete, ignored\n",
|
||||
p->str);
|
||||
return 1;
|
||||
} else if (p->setup_func(line + n))
|
||||
return 1;
|
||||
@@ -384,7 +386,7 @@ static noinline void __init_refok rest_init(void)
|
||||
init_idle_bootup_task(current);
|
||||
schedule_preempt_disabled();
|
||||
/* Call into cpu_idle with preempt disabled */
|
||||
cpu_idle();
|
||||
cpu_startup_entry(CPUHP_ONLINE);
|
||||
}
|
||||
|
||||
/* Check for early params. */
|
||||
@@ -398,8 +400,7 @@ static int __init do_early_param(char *param, char *val, const char *unused)
|
||||
strcmp(p->str, "earlycon") == 0)
|
||||
) {
|
||||
if (p->setup_func(val) != 0)
|
||||
printk(KERN_WARNING
|
||||
"Malformed early option '%s'\n", param);
|
||||
pr_warn("Malformed early option '%s'\n", param);
|
||||
}
|
||||
}
|
||||
/* We accept everything at this stage. */
|
||||
@@ -497,7 +498,7 @@ asmlinkage void __init start_kernel(void)
|
||||
tick_init();
|
||||
boot_cpu_init();
|
||||
page_address_init();
|
||||
printk(KERN_NOTICE "%s", linux_banner);
|
||||
pr_notice("%s", linux_banner);
|
||||
setup_arch(&command_line);
|
||||
mm_init_owner(&init_mm, &init_task);
|
||||
mm_init_cpumask(&init_mm);
|
||||
@@ -509,7 +510,7 @@ asmlinkage void __init start_kernel(void)
|
||||
build_all_zonelists(NULL, NULL);
|
||||
page_alloc_init();
|
||||
|
||||
printk(KERN_NOTICE "Kernel command line: %s\n", boot_command_line);
|
||||
pr_notice("Kernel command line: %s\n", boot_command_line);
|
||||
parse_early_param();
|
||||
parse_args("Booting kernel", static_command_line, __start___param,
|
||||
__stop___param - __start___param,
|
||||
@@ -539,11 +540,8 @@ asmlinkage void __init start_kernel(void)
|
||||
* fragile until we cpu_idle() for the first time.
|
||||
*/
|
||||
preempt_disable();
|
||||
if (!irqs_disabled()) {
|
||||
printk(KERN_WARNING "start_kernel(): bug: interrupts were "
|
||||
"enabled *very* early, fixing it\n");
|
||||
if (WARN(!irqs_disabled(), "Interrupts were enabled *very* early, fixing it\n"))
|
||||
local_irq_disable();
|
||||
}
|
||||
idr_init_cache();
|
||||
perf_event_init();
|
||||
rcu_init();
|
||||
@@ -559,9 +557,7 @@ asmlinkage void __init start_kernel(void)
|
||||
time_init();
|
||||
profile_init();
|
||||
call_function_init();
|
||||
if (!irqs_disabled())
|
||||
printk(KERN_CRIT "start_kernel(): bug: interrupts were "
|
||||
"enabled early\n");
|
||||
WARN(!irqs_disabled(), "Interrupts were enabled early\n");
|
||||
early_boot_irqs_disabled = false;
|
||||
local_irq_enable();
|
||||
|
||||
@@ -588,8 +584,7 @@ asmlinkage void __init start_kernel(void)
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
if (initrd_start && !initrd_below_start_ok &&
|
||||
page_to_pfn(virt_to_page((void *)initrd_start)) < min_low_pfn) {
|
||||
printk(KERN_CRIT "initrd overwritten (0x%08lx < 0x%08lx) - "
|
||||
"disabling it.\n",
|
||||
pr_crit("initrd overwritten (0x%08lx < 0x%08lx) - disabling it.\n",
|
||||
page_to_pfn(virt_to_page((void *)initrd_start)),
|
||||
min_low_pfn);
|
||||
initrd_start = 0;
|
||||
@@ -668,14 +663,14 @@ static int __init_or_module do_one_initcall_debug(initcall_t fn)
|
||||
unsigned long long duration;
|
||||
int ret;
|
||||
|
||||
printk(KERN_DEBUG "calling %pF @ %i\n", fn, task_pid_nr(current));
|
||||
pr_debug("calling %pF @ %i\n", fn, task_pid_nr(current));
|
||||
calltime = ktime_get();
|
||||
ret = fn();
|
||||
rettime = ktime_get();
|
||||
delta = ktime_sub(rettime, calltime);
|
||||
duration = (unsigned long long) ktime_to_ns(delta) >> 10;
|
||||
printk(KERN_DEBUG "initcall %pF returned %d after %lld usecs\n", fn,
|
||||
ret, duration);
|
||||
pr_debug("initcall %pF returned %d after %lld usecs\n",
|
||||
fn, ret, duration);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -703,9 +698,7 @@ int __init_or_module do_one_initcall(initcall_t fn)
|
||||
strlcat(msgbuf, "disabled interrupts ", sizeof(msgbuf));
|
||||
local_irq_enable();
|
||||
}
|
||||
if (msgbuf[0]) {
|
||||
printk("initcall %pF returned with %s\n", fn, msgbuf);
|
||||
}
|
||||
WARN(msgbuf[0], "initcall %pF returned with %s\n", fn, msgbuf);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -833,8 +826,7 @@ static int __ref kernel_init(void *unused)
|
||||
if (ramdisk_execute_command) {
|
||||
if (!run_init_process(ramdisk_execute_command))
|
||||
return 0;
|
||||
printk(KERN_WARNING "Failed to execute %s\n",
|
||||
ramdisk_execute_command);
|
||||
pr_err("Failed to execute %s\n", ramdisk_execute_command);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -846,8 +838,8 @@ static int __ref kernel_init(void *unused)
|
||||
if (execute_command) {
|
||||
if (!run_init_process(execute_command))
|
||||
return 0;
|
||||
printk(KERN_WARNING "Failed to execute %s. Attempting "
|
||||
"defaults...\n", execute_command);
|
||||
pr_err("Failed to execute %s. Attempting defaults...\n",
|
||||
execute_command);
|
||||
}
|
||||
if (!run_init_process("/sbin/init") ||
|
||||
!run_init_process("/etc/init") ||
|
||||
@@ -892,7 +884,7 @@ static noinline void __init kernel_init_freeable(void)
|
||||
|
||||
/* Open the /dev/console on the rootfs, this should never fail */
|
||||
if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
|
||||
printk(KERN_WARNING "Warning: unable to open an initial console.\n");
|
||||
pr_err("Warning: unable to open an initial console.\n");
|
||||
|
||||
(void) sys_dup(0);
|
||||
(void) sys_dup(0);
|
||||
|
Reference in New Issue
Block a user