Commit 59f7e537 authored by Jan Beulich's avatar Jan Beulich Committed by Juergen Gross
Browse files

x86/PVH: adjust function/data placement



Two of the variables can live in .init.data, allowing the open-coded
placing in .data to go away. Another "variable" is used to communicate a
size value only to very early assembly code, which hence can be both
const and live in .init.*. Additionally two functions were lacking
__init annotations.

Signed-off-by: default avatarJan Beulich <jbeulich@suse.com>
Reviewed-by: default avatarJuergen Gross <jgross@suse.com>

Link: https://lore.kernel.org/r/3b0bb22e-43f4-e459-c5cb-169f996b5669@suse.com


Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
parent 079c4baa
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -16,15 +16,15 @@
/*
 * PVH variables.
 *
 * pvh_bootparams and pvh_start_info need to live in the data segment since
 * pvh_bootparams and pvh_start_info need to live in a data segment since
 * they are used after startup_{32|64}, which clear .bss, are invoked.
 */
struct boot_params pvh_bootparams __section(".data");
struct hvm_start_info pvh_start_info __section(".data");
struct boot_params __initdata pvh_bootparams;
struct hvm_start_info __initdata pvh_start_info;

unsigned int pvh_start_info_sz = sizeof(pvh_start_info);
const unsigned int __initconst pvh_start_info_sz = sizeof(pvh_start_info);

static u64 pvh_get_root_pointer(void)
static u64 __init pvh_get_root_pointer(void)
{
	return pvh_start_info.rsdp_paddr;
}
@@ -107,7 +107,7 @@ void __init __weak xen_pvh_init(struct boot_params *boot_params)
	BUG();
}

static void hypervisor_specific_init(bool xen_guest)
static void __init hypervisor_specific_init(bool xen_guest)
{
	if (xen_guest)
		xen_pvh_init(&pvh_bootparams);