mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
xen/riscv: register Xen's load address as a boot module
Avoid using BOOTMOD_XEN region for other purposes or boot modules which could result in memory corruption or undefined behaviour. Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com> Acked-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
59ef5d2a95
commit
2b49ef4503
1 file changed
+6
@@ -1,6 +1,7 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <xen/bug.h>
|
||||
#include <xen/bootfdt.h>
|
||||
#include <xen/compile.h>
|
||||
#include <xen/device_tree.h>
|
||||
#include <xen/init.h>
|
||||
@@ -44,6 +45,11 @@ void __init noreturn start_xen(unsigned long bootcpu_id,
|
||||
"Please check your bootloader.\n",
|
||||
dtb_addr, BOOT_FDT_VIRT_SIZE);
|
||||
|
||||
/* Register Xen's load address as a boot module. */
|
||||
if ( !add_boot_module(BOOTMOD_XEN, virt_to_maddr(_start),
|
||||
_end - _start, false) )
|
||||
panic("Failed to add BOOTMOD_XEN\n");
|
||||
|
||||
printk("All set up\n");
|
||||
|
||||
machine_halt();
|
||||
|
||||