mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen/riscv: initialize RCU, scheduler, and system domains in start_xen()
Wire up the missing early-boot initialization steps in start_xen(). The scheduler must be initialized prior to do_initcalls() because cpupool_create_pool() is called during initcalls; without it, BUG_ON(IS_ERR(pool)) is triggered inside cpupool_create_pool(). Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> Acked-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
9270ddf05a
commit
f78cdb107c
1 file changed
+12
@@ -6,9 +6,12 @@
|
||||
#include <xen/compile.h>
|
||||
#include <xen/console.h>
|
||||
#include <xen/device_tree.h>
|
||||
#include <xen/domain.h>
|
||||
#include <xen/init.h>
|
||||
#include <xen/irq.h>
|
||||
#include <xen/mm.h>
|
||||
#include <xen/rcupdate.h>
|
||||
#include <xen/sched.h>
|
||||
#include <xen/serial.h>
|
||||
#include <xen/shutdown.h>
|
||||
#include <xen/smp.h>
|
||||
@@ -160,12 +163,21 @@ void __init noreturn start_xen(unsigned long bootcpu_id,
|
||||
|
||||
timer_init();
|
||||
|
||||
rcu_init();
|
||||
|
||||
setup_system_domains();
|
||||
|
||||
local_irq_enable();
|
||||
|
||||
console_init_postirq();
|
||||
|
||||
guest_mm_init();
|
||||
|
||||
scheduler_init();
|
||||
set_current(idle_vcpu[0]);
|
||||
|
||||
do_initcalls();
|
||||
|
||||
printk("All set up\n");
|
||||
|
||||
machine_halt();
|
||||
|
||||