From 3b94ab04da219eddec348551b7eae1c3f87caf5f Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 30 Jun 2022 12:00:00 +0200 Subject: [PATCH] 4.9-stable patches added patches: xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch --- queue-4.9/series | 1 + ...otated-xen_xlate_map_ballooned_pages.patch | 47 +++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 queue-4.9/xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch diff --git a/queue-4.9/series b/queue-4.9/series index 53ffcae51b7..580c1f8dbd4 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -23,3 +23,4 @@ arm-cns3xxx-fix-refcount-leak-in-cns3xxx_init.patch modpost-fix-section-mismatch-check-for-exported-init-exit-sections.patch powerpc-pseries-wire-up-rng-during-setup_arch.patch drm-remove-drm_fb_helper_modinit.patch +xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch diff --git a/queue-4.9/xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch b/queue-4.9/xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch new file mode 100644 index 00000000000..e89ce612bd6 --- /dev/null +++ b/queue-4.9/xen-unexport-__init-annotated-xen_xlate_map_ballooned_pages.patch @@ -0,0 +1,47 @@ +From dbac14a5a05ff8e1ce7c0da0e1f520ce39ec62ea Mon Sep 17 00:00:00 2001 +From: Masahiro Yamada +Date: Mon, 6 Jun 2022 13:59:20 +0900 +Subject: xen: unexport __init-annotated xen_xlate_map_ballooned_pages() + +From: Masahiro Yamada + +commit dbac14a5a05ff8e1ce7c0da0e1f520ce39ec62ea upstream. + +EXPORT_SYMBOL and __init is a bad combination because the .init.text +section is freed up after the initialization. Hence, modules cannot +use symbols annotated __init. The access to a freed symbol may end up +with kernel panic. + +modpost used to detect it, but it has been broken for a decade. + +Recently, I fixed modpost so it started to warn it again, then this +showed up in linux-next builds. + +There are two ways to fix it: + + - Remove __init + - Remove EXPORT_SYMBOL + +I chose the latter for this case because none of the in-tree call-sites +(arch/arm/xen/enlighten.c, arch/x86/xen/grant-table.c) is compiled as +modular. + +Fixes: 243848fc018c ("xen/grant-table: Move xlated_setup_gnttab_pages to common place") +Reported-by: Stephen Rothwell +Signed-off-by: Masahiro Yamada +Reviewed-by: Oleksandr Tyshchenko +Acked-by: Stefano Stabellini +Link: https://lore.kernel.org/r/20220606045920.4161881-1-masahiroy@kernel.org +Signed-off-by: Juergen Gross +Signed-off-by: Greg Kroah-Hartman +--- + drivers/xen/xlate_mmu.c | 1 - + 1 file changed, 1 deletion(-) + +--- a/drivers/xen/xlate_mmu.c ++++ b/drivers/xen/xlate_mmu.c +@@ -262,4 +262,3 @@ int __init xen_xlate_map_ballooned_pages + + return 0; + } +-EXPORT_SYMBOL_GPL(xen_xlate_map_ballooned_pages); -- 2.47.3