*/
#include <xen/acpi.h>
+#include <xen/console.h>
+#include <xen/cpu.h>
+#include <xen/domain.h>
#include <xen/errno.h>
#include <xen/iocap.h>
+#include <xen/iommu.h>
#include <xen/param.h>
#include <xen/sched.h>
-#include <asm/acpi.h>
-#include <asm/irq.h>
#include <xen/spinlock.h>
-#include <xen/sched.h>
-#include <xen/domain.h>
-#include <xen/console.h>
-#include <xen/iommu.h>
#include <xen/watchdog.h>
-#include <xen/cpu.h>
-#include <public/platform.h>
-#include <asm/tboot.h>
+
+#include <asm/acpi.h>
#include <asm/apic.h>
#include <asm/io_apic.h>
+#include <asm/irq.h>
#include <asm/microcode.h>
#include <asm/prot-key.h>
#include <asm/spec_ctrl.h>
+#include <asm/tboot.h>
#include <asm/trampoline.h>
+#include <public/platform.h>
+
#include <acpi/cpufreq/cpufreq.h>
uint32_t system_reset_counter = 1;
-#include <xen/init.h>
-#include <xen/string.h>
#include <xen/delay.h>
+#include <xen/init.h>
#include <xen/param.h>
#include <xen/smp.h>
+#include <xen/string.h>
#include <asm/amd.h>
+#include <asm/apic.h>
#include <asm/cpu-policy.h>
#include <asm/current.h>
#include <asm/debugreg.h>
-#include <asm/processor.h>
-#include <asm/xstate.h>
-#include <asm/msr.h>
#include <asm/io.h>
#include <asm/mpspec.h>
-#include <asm/apic.h>
+#include <asm/msr.h>
+#include <asm/processor.h>
#include <asm/prot-key.h>
#include <asm/random.h>
#include <asm/setup.h>
#include <asm/shstk.h>
-#include <public/sysctl.h> /* for XEN_INVALID_{SOCKET,CORE}_ID */
+#include <asm/xstate.h>
+
+#include <public/sysctl.h>
#include "cpu.h"
#include "mcheck/x86_mca.h"
* - Magnus Damm <magnus@valinux.co.jp>
*/
-#include <asm/atomic.h>
-#include <asm/elf.h>
-#include <xen/types.h>
-#include <xen/irq.h>
-#include <asm/nmi.h>
-#include <xen/string.h>
+#include <xen/console.h>
+#include <xen/delay.h>
#include <xen/elf.h>
#include <xen/elfcore.h>
-#include <xen/smp.h>
-#include <xen/delay.h>
-#include <xen/perfc.h>
+#include <xen/iommu.h>
+#include <xen/irq.h>
#include <xen/kexec.h>
-#include <xen/sched.h>
#include <xen/keyhandler.h>
-#include <public/xen.h>
-#include <asm/shared.h>
+#include <xen/perfc.h>
+#include <xen/sched.h>
+#include <xen/smp.h>
+#include <xen/string.h>
+#include <xen/types.h>
+
#include <asm/apic.h>
-#include <asm/io_apic.h>
-#include <xen/iommu.h>
+#include <asm/atomic.h>
+#include <asm/elf.h>
#include <asm/hpet.h>
-#include <xen/console.h>
+#include <asm/io_apic.h>
+#include <asm/nmi.h>
+#include <asm/shared.h>
+
+#include <public/xen.h>
static cpumask_t waiting_to_crash;
static unsigned int crashing_cpu;
* Gareth Hughes <gareth@valinux.com>, May 2000
*/
-#include <xen/init.h>
-#include <xen/lib.h>
-#include <xen/errno.h>
-#include <xen/sched.h>
-#include <xen/domain.h>
-#include <xen/smp.h>
+#include <xen/acpi.h>
+#include <xen/compat.h>
+#include <xen/console.h>
+#include <xen/cpu.h>
#include <xen/delay.h>
-#include <xen/softirq.h>
+#include <xen/domain.h>
+#include <xen/errno.h>
+#include <xen/event.h>
#include <xen/grant_table.h>
+#include <xen/guest_access.h>
+#include <xen/hypercall.h>
+#include <xen/init.h>
#include <xen/iocap.h>
+#include <xen/irq.h>
#include <xen/kernel.h>
-#include <xen/hypercall.h>
+#include <xen/lib.h>
+#include <xen/livepatch.h>
#include <xen/multicall.h>
-#include <xen/irq.h>
-#include <xen/event.h>
-#include <xen/console.h>
-#include <xen/percpu.h>
-#include <xen/compat.h>
-#include <xen/acpi.h>
-#include <xen/pci.h>
#include <xen/paging.h>
-#include <xen/cpu.h>
+#include <xen/pci.h>
+#include <xen/percpu.h>
+#include <xen/sched.h>
+#include <xen/smp.h>
+#include <xen/softirq.h>
#include <xen/wait.h>
-#include <xen/guest_access.h>
-#include <xen/livepatch.h>
-#include <public/arch-x86/cpuid.h>
-#include <public/sysctl.h>
-#include <public/hvm/hvm_vcpu.h>
-#include <asm/regs.h>
-#include <asm/mc146818rtc.h>
-#include <asm/system.h>
-#include <asm/io.h>
-#include <asm/processor.h>
-#include <asm/desc.h>
-#include <asm/i387.h>
-#include <asm/xstate.h>
+
+#include <asm/amd.h>
+#include <asm/cpu-policy.h>
#include <asm/cpuidle.h>
-#include <asm/mpspec.h>
-#include <asm/ldt.h>
+#include <asm/debugreg.h>
+#include <asm/desc.h>
#include <asm/hvm/hvm.h>
#include <asm/hvm/nestedhvm.h>
#include <asm/hvm/svm/svm.h>
#include <asm/hvm/viridian.h>
-#include <asm/debugreg.h>
+#include <asm/i387.h>
+#include <asm/io.h>
+#include <asm/ldt.h>
+#include <asm/mc146818rtc.h>
+#include <asm/mce.h>
+#include <asm/mpspec.h>
#include <asm/msr.h>
+#include <asm/nmi.h>
+#include <asm/processor.h>
+#include <asm/psr.h>
+#include <asm/pv/domain.h>
+#include <asm/pv/mm.h>
+#include <asm/regs.h>
#include <asm/spec_ctrl.h>
+#include <asm/system.h>
#include <asm/traps.h>
-#include <asm/nmi.h>
-#include <asm/mce.h>
-#include <asm/amd.h>
-#include <xen/numa.h>
+#include <asm/xstate.h>
#include <xen/iommu.h>
+#include <xen/numa.h>
+
+#include <public/arch-x86/cpuid.h>
+#include <public/sysctl.h>
+#include <public/hvm/hvm_vcpu.h>
+
#ifdef CONFIG_COMPAT
#include <compat/vcpu.h>
#endif
-#include <asm/cpu-policy.h>
-#include <asm/psr.h>
-#include <asm/pv/domain.h>
-#include <asm/pv/mm.h>
-#include <asm/spec_ctrl.h>
DEFINE_PER_CPU(struct vcpu *, curr_vcpu);
* Copyright (c) 2004, Intel Corporation.
*/
-#include <xen/init.h>
-#include <xen/mm.h>
-#include <xen/lib.h>
-#include <xen/param.h>
-#include <xen/errno.h>
#include <xen/domain_page.h>
+#include <xen/errno.h>
#include <xen/event.h>
+#include <xen/init.h>
#include <xen/kernel.h>
#include <xen/keyhandler.h>
+#include <xen/lib.h>
+#include <xen/mm.h>
+#include <xen/param.h>
#include <xen/vm_event.h>
-#include <asm/current.h>
+
+#include <asm/apic.h>
#include <asm/cpufeature.h>
-#include <asm/processor.h>
-#include <asm/msr.h>
-#include <asm/xstate.h>
+#include <asm/current.h>
+#include <asm/flushtlb.h>
#include <asm/hvm/hvm.h>
#include <asm/hvm/io.h>
#include <asm/hvm/nestedhvm.h>
+#include <asm/hvm/vmx/vmcs.h>
#include <asm/hvm/vmx/vmx.h>
#include <asm/hvm/vmx/vvmx.h>
-#include <asm/hvm/vmx/vmcs.h>
-#include <asm/flushtlb.h>
#include <asm/monitor.h>
+#include <asm/msr.h>
+#include <asm/processor.h>
#include <asm/shadow.h>
#include <asm/spec_ctrl.h>
#include <asm/tboot.h>
-#include <asm/apic.h>
+#include <asm/xstate.h>
static bool __read_mostly opt_vpid_enabled = true;
boolean_param("vpid", opt_vpid_enabled);
* Version 2. See the file COPYING for more details.
*/
-#include <xen/types.h>
#include <xen/domain_page.h>
#include <xen/elfstructs.h>
#include <xen/kexec.h>
+#include <xen/types.h>
+
#include <asm/fixmap.h>
#include <asm/hpet.h>
-#include <asm/page.h>
#include <asm/machine_kexec.h>
+#include <asm/page.h>
/*
* Add a mapping for a page to the page tables used during kexec.
* doing the final put_page(), and remove it from the iommu if so.
*/
+#include <xen/domain.h>
+#include <xen/domain_page.h>
+#include <xen/efi.h>
+#include <xen/err.h>
+#include <xen/event.h>
+#include <xen/guest_access.h>
+#include <xen/hypercall.h>
#include <xen/init.h>
+#include <xen/iocap.h>
#include <xen/ioreq.h>
+#include <xen/irq.h>
#include <xen/kernel.h>
#include <xen/lib.h>
#include <xen/livepatch.h>
#include <xen/mm.h>
#include <xen/param.h>
-#include <xen/domain.h>
-#include <xen/sched.h>
-#include <xen/err.h>
#include <xen/perfc.h>
-#include <xen/irq.h>
-#include <xen/softirq.h>
-#include <xen/domain_page.h>
-#include <xen/event.h>
-#include <xen/iocap.h>
-#include <xen/guest_access.h>
#include <xen/pfn.h>
+#include <xen/sched.h>
+#include <xen/softirq.h>
+#include <xen/trace.h>
#include <xen/vmap.h>
#include <xen/xmalloc.h>
-#include <xen/efi.h>
-#include <xen/hypercall.h>
-#include <xen/mm.h>
-#include <asm/paging.h>
-#include <asm/shadow.h>
-#include <asm/page.h>
+
+#include <asm/e820.h>
+#include <asm/fixmap.h>
#include <asm/flushtlb.h>
+#include <asm/guest.h>
#include <asm/io.h>
+#include <asm/io_apic.h>
#include <asm/ldt.h>
-#include <asm/x86_emulate.h>
-#include <asm/e820.h>
-#include <asm/shared.h>
#include <asm/mem_sharing.h>
-#include <public/memory.h>
-#include <public/sched.h>
-#include <xsm/xsm.h>
-#include <xen/trace.h>
-#include <asm/setup.h>
-#include <asm/fixmap.h>
-#include <asm/io_apic.h>
+#include <asm/page.h>
+#include <asm/paging.h>
#include <asm/pci.h>
-#include <asm/guest.h>
#include <asm/pv/domain.h>
#include <asm/pv/mm.h>
+#include <asm/setup.h>
+#include <asm/shadow.h>
+#include <asm/shared.h>
#include <asm/trampoline.h>
+#include <asm/x86_emulate.h>
+
+#include <public/memory.h>
+#include <public/sched.h>
+
+#include <xsm/xsm.h>
#ifdef CONFIG_PV
#include "pv/mm.h"
-#include <xen/init.h>
-#include <xen/lib.h>
+#include <xen/acpi.h>
+#include <xen/bitops.h>
+#include <xen/console.h>
+#include <xen/cpu.h>
+#include <xen/cpuidle.h>
+#include <xen/dmi.h>
+#include <xen/domain.h>
+#include <xen/domain_page.h>
+#include <xen/efi.h>
#include <xen/err.h>
#include <xen/grant_table.h>
+#include <xen/hypercall.h>
+#include <xen/init.h>
+#include <xen/kexec.h>
+#include <xen/keyhandler.h>
+#include <xen/lib.h>
+#include <xen/multiboot.h>
+#include <xen/nodemask.h>
+#include <xen/numa.h>
#include <xen/param.h>
+#include <xen/pfn.h>
+#include <xen/rcupdate.h>
#include <xen/sched.h>
-#include <xen/domain.h>
#include <xen/sections.h>
#include <xen/serial.h>
#include <xen/softirq.h>
-#include <xen/acpi.h>
-#include <xen/efi.h>
-#include <xen/console.h>
-#include <xen/serial.h>
#include <xen/trace.h>
-#include <xen/multiboot.h>
-#include <xen/domain_page.h>
#include <xen/version.h>
-#include <xen/hypercall.h>
-#include <xen/keyhandler.h>
-#include <xen/numa.h>
-#include <xen/rcupdate.h>
#include <xen/vga.h>
-#include <xen/dmi.h>
-#include <xen/pfn.h>
-#include <xen/nodemask.h>
#include <xen/virtual_region.h>
#include <xen/watchdog.h>
-#include <public/version.h>
-#ifdef CONFIG_COMPAT
-#include <compat/platform.h>
-#include <compat/xen.h>
-#endif
-#include <xen/bitops.h>
-#include <asm/bootinfo.h>
-#include <asm/smp.h>
-#include <asm/processor.h>
-#include <asm/mpspec.h>
+
+#include <asm/alternative.h>
#include <asm/apic.h>
-#include <asm/msi.h>
+#include <asm/bootinfo.h>
+#include <asm/bzimage.h>
+#include <asm/cpu-policy.h>
#include <asm/desc.h>
-#include <asm/paging.h>
#include <asm/e820.h>
-#include <xen/kexec.h>
#include <asm/edd.h>
-#include <xsm/xsm.h>
-#include <asm/tboot.h>
-#include <asm/bzimage.h> /* for bzimage_headroom */
#include <asm/genapic.h>
+#include <asm/guest.h>
+#include <asm/invpcid.h>
#include <asm/io_apic.h>
-#include <asm/setup.h>
-#include <xen/cpu.h>
-#include <xen/cpuidle.h>
-#include <asm/nmi.h>
-#include <asm/alternative.h>
#include <asm/mc146818rtc.h>
-#include <asm/cpu-policy.h>
-#include <asm/invpcid.h>
-#include <asm/spec_ctrl.h>
-#include <asm/guest.h>
#include <asm/microcode.h>
+#include <asm/mpspec.h>
+#include <asm/msi.h>
+#include <asm/nmi.h>
+#include <asm/paging.h>
+#include <asm/processor.h>
#include <asm/prot-key.h>
#include <asm/pv/domain.h>
+#include <asm/setup.h>
+#include <asm/smp.h>
+#include <asm/spec_ctrl.h>
+#include <asm/tboot.h>
#include <asm/trampoline.h>
+#include <xsm/xsm.h>
+
+#include <public/version.h>
+#ifdef CONFIG_COMPAT
+#include <compat/platform.h>
+#include <compat/xen.h>
+#endif
+
/* opt_nosmp: If true, secondary processors are ignored. */
static bool __initdata opt_nosmp;
boolean_param("nosmp", opt_nosmp);
* (c) 1998, 1999, 2000 Ingo Molnar <mingo@redhat.com>
*/
+#include <xen/cpu.h>
+#include <xen/delay.h>
+#include <xen/domain.h>
+#include <xen/domain_page.h>
#include <xen/init.h>
+#include <xen/irq.h>
#include <xen/kernel.h>
#include <xen/mm.h>
-#include <xen/domain.h>
-#include <xen/domain_page.h>
+#include <xen/numa.h>
#include <xen/sched.h>
-#include <xen/irq.h>
-#include <xen/delay.h>
+#include <xen/serial.h>
#include <xen/softirq.h>
#include <xen/tasklet.h>
-#include <xen/serial.h>
-#include <xen/numa.h>
-#include <xen/cpu.h>
#include <asm/apic.h>
-#include <asm/io_apic.h>
#include <asm/cpuidle.h>
#include <asm/current.h>
-#include <asm/mc146818rtc.h>
#include <asm/desc.h>
#include <asm/div64.h>
#include <asm/flushtlb.h>
#include <asm/guest.h>
+#include <asm/io_apic.h>
+#include <asm/irq-vectors.h>
+#include <asm/mc146818rtc.h>
#include <asm/microcode.h>
#include <asm/msr.h>
#include <asm/mtrr.h>
#include <asm/prot-key.h>
#include <asm/setup.h>
#include <asm/spec_ctrl.h>
-#include <asm/time.h>
#include <asm/tboot.h>
+#include <asm/time.h>
#include <asm/trampoline.h>
-#include <asm/irq-vectors.h>
uint32_t __ro_after_init trampoline_phys;
enum ap_boot_method __read_mostly ap_boot_method = AP_BOOT_NORMAL;
* Gareth Hughes <gareth@valinux.com>, May 2000
*/
+#include <xen/bitops.h>
#include <xen/bug.h>
-#include <xen/init.h>
-#include <xen/sched.h>
-#include <xen/lib.h>
+#include <xen/console.h>
+#include <xen/delay.h>
+#include <xen/domain_page.h>
#include <xen/err.h>
#include <xen/errno.h>
+#include <xen/event.h>
+#include <xen/guest_access.h>
#include <xen/hypercall.h>
+#include <xen/init.h>
+#include <xen/iocap.h>
+#include <xen/irq.h>
+#include <xen/kexec.h>
+#include <xen/lib.h>
+#include <xen/livepatch.h>
#include <xen/mm.h>
+#include <xen/paging.h>
#include <xen/param.h>
-#include <xen/console.h>
-#include <xen/shutdown.h>
-#include <xen/guest_access.h>
-#include <asm/regs.h>
-#include <xen/delay.h>
-#include <xen/event.h>
-#include <xen/spinlock.h>
-#include <xen/irq.h>
#include <xen/perfc.h>
+#include <xen/sched.h>
+#include <xen/shutdown.h>
#include <xen/softirq.h>
-#include <xen/domain_page.h>
+#include <xen/spinlock.h>
#include <xen/symbols.h>
-#include <xen/iocap.h>
-#include <xen/kexec.h>
#include <xen/trace.h>
-#include <xen/paging.h>
#include <xen/virtual_region.h>
#include <xen/watchdog.h>
-#include <xen/livepatch.h>
-#include <asm/system.h>
-#include <asm/io.h>
+
+#include <xsm/xsm.h>
+
+#include <asm/apic.h>
#include <asm/atomic.h>
-#include <xen/bitops.h>
-#include <asm/desc.h>
+#include <asm/cpuid.h>
#include <asm/debugreg.h>
-#include <asm/gdbsx.h>
-#include <asm/smp.h>
+#include <asm/desc.h>
#include <asm/flushtlb.h>
-#include <asm/uaccess.h>
+#include <asm/gdbsx.h>
+#include <asm/hpet.h>
+#include <asm/hvm/vpt.h>
#include <asm/i387.h>
-#include <asm/xstate.h>
+#include <asm/io.h>
+#include <asm/irq-vectors.h>
+#include <asm/mc146818rtc.h>
+#include <asm/mce.h>
#include <asm/msr.h>
#include <asm/nmi.h>
-#include <asm/xenoprof.h>
+#include <asm/pv/mm.h>
+#include <asm/pv/trace.h>
+#include <asm/pv/traps.h>
+#include <asm/regs.h>
#include <asm/shared.h>
-#include <asm/x86_emulate.h>
+#include <asm/shstk.h>
+#include <asm/smp.h>
+#include <asm/system.h>
#include <asm/traps.h>
-#include <asm/hvm/vpt.h>
-#include <asm/mce.h>
-#include <asm/apic.h>
-#include <asm/mc146818rtc.h>
-#include <asm/hpet.h>
+#include <asm/uaccess.h>
#include <asm/vpmu.h>
-#include <asm/cpuid.h>
-#include <xsm/xsm.h>
-#include <asm/irq-vectors.h>
-#include <asm/pv/traps.h>
-#include <asm/pv/trace.h>
-#include <asm/pv/mm.h>
-#include <asm/shstk.h>
+#include <asm/x86_emulate.h>
+#include <asm/xenoprof.h>
+#include <asm/xstate.h>
/*
* opt_nmi: one of 'ignore', 'dom0', or 'fatal'.
-
-#include <xen/version.h>
+#include <xen/console.h>
+#include <xen/errno.h>
+#include <xen/guest_access.h>
+#include <xen/hypercall.h>
#include <xen/init.h>
-#include <xen/sched.h>
+#include <xen/irq.h>
#include <xen/lib.h>
-#include <xen/errno.h>
#include <xen/mm.h>
-#include <xen/irq.h>
-#include <xen/symbols.h>
-#include <xen/console.h>
#include <xen/sched.h>
#include <xen/shutdown.h>
-#include <xen/guest_access.h>
+#include <xen/symbols.h>
+#include <xen/version.h>
#include <xen/watchdog.h>
-#include <xen/hypercall.h>
+
#include <asm/current.h>
-#include <asm/flushtlb.h>
-#include <asm/traps.h>
#include <asm/endbr.h>
#include <asm/event.h>
-#include <asm/nmi.h>
+#include <asm/flushtlb.h>
+#include <asm/hvm/hvm.h>
#include <asm/msr.h>
+#include <asm/nmi.h>
#include <asm/page.h>
#include <asm/shared.h>
-#include <asm/hvm/hvm.h>
+#include <asm/traps.h>
static void print_xen_info(void)