mirror of
https://github.com/torvalds/linux.git
synced 2024-11-17 09:31:50 +00:00
xen: annotate functions which only call into __init at start of day
Both xen_hvm_init_shared_info and xen_build_mfn_list_list can be called at resume time as well as at start of day but only reference __init functions (extend_brk) at start of day. Hence annotate with __ref. WARNING: arch/x86/built-in.o(.text+0x4f1): Section mismatch in reference from the function xen_hvm_init_shared_info() to the function .init.text:extend_brk() The function xen_hvm_init_shared_info() references the function __init extend_brk(). This is often because xen_hvm_init_shared_info lacks a __init annotation or the annotation of extend_brk is wrong. xen_hvm_init_shared_info calls extend_brk() iff !shared_info_page and initialises shared_info_page with the result. This happens at start of day only. WARNING: arch/x86/built-in.o(.text+0x599b): Section mismatch in reference from the function xen_build_mfn_list_list() to the function .init.text:extend_brk() The function xen_build_mfn_list_list() references the function __init extend_brk(). This is often because xen_build_mfn_list_list lacks a __init annotation or the annotation of extend_brk is wrong. (this warning occurs multiple times) xen_build_mfn_list_list only calls extend_brk() at boot time, while building the initial mfn list list Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
parent
6b08cfebd3
commit
44b46c3ef8
@ -1292,7 +1292,7 @@ static int init_hvm_pv_info(int *major, int *minor)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void xen_hvm_init_shared_info(void)
|
||||
void __ref xen_hvm_init_shared_info(void)
|
||||
{
|
||||
int cpu;
|
||||
struct xen_add_to_physmap xatp;
|
||||
|
@ -136,7 +136,7 @@ static void p2m_init(unsigned long *p2m)
|
||||
* - After resume we're called from within stop_machine, but the mfn
|
||||
* tree should alreay be completely allocated.
|
||||
*/
|
||||
void xen_build_mfn_list_list(void)
|
||||
void __ref xen_build_mfn_list_list(void)
|
||||
{
|
||||
unsigned long pfn;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user