From: Dan Williams <dan.j.williams@intel.com> To: bp@alien8.de Cc: Borislav Petkov <bp@suse.de>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>, Tony Luck <tony.luck@intel.com>, linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org Subject: [PATCH] x86/mce: Gate copy_mc_fragile() export by CONFIG_COPY_MC_TEST=y Date: Wed, 07 Oct 2020 11:24:32 -0700 [thread overview] Message-ID: <160209507277.2768223.9933672492157583642.stgit@dwillia2-desk3.amr.corp.intel.com> (raw) In-Reply-To: <20201007111447.GA23257@zn.tnic> It appears that modpost is not happy about exporting assembly symbols that are not consumed in the same build. As Boris reports: WARNING: modpost: EXPORT symbol "copy_mc_fragile" [vmlinux] version generation failed, symbol will not be versioned. The export is only consumed in the CONFIG_COPY_MC_TEST=y case, and even then not in a way that modpost could see. CONFIG_COPY_MC_TEST uses a module built in tools/testing/nvdimm/ to exercise the copy_mc_fragile() corner cases. Given the test already requires manually editing the config entry for CONFIG_COPY_MC_TEST to make it "def_bool y" the additional dependency to require is CONFIG_MODVERSIONS=n is not too onerous. Alternatively, COPY_MC_TEST and its related infrastructure could just be ripped out because it has served its purpose. For now, just stop exporting the symbol by default, and add the MODVERSIONS dependency to the test. Fixes: ec6347bb4339 ("x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}()") Reported-by: Borislav Petkov <bp@suse.de> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: Borislav Petkov <bp@alien8.de> Cc: x86@kernel.org Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Tony Luck <tony.luck@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- arch/x86/Kconfig.debug | 1 + arch/x86/lib/copy_mc_64.S | 2 ++ 2 files changed, 3 insertions(+) diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug index 27b5e2bc6a01..6f0f5d8ac62e 100644 --- a/arch/x86/Kconfig.debug +++ b/arch/x86/Kconfig.debug @@ -63,6 +63,7 @@ config EARLY_PRINTK_USB_XDBC crashes or need a very simple printk logging facility. config COPY_MC_TEST + depends on !MODVERSIONS def_bool n config EFI_PGT_DUMP diff --git a/arch/x86/lib/copy_mc_64.S b/arch/x86/lib/copy_mc_64.S index 892d8915f609..50fb05256751 100644 --- a/arch/x86/lib/copy_mc_64.S +++ b/arch/x86/lib/copy_mc_64.S @@ -88,7 +88,9 @@ SYM_FUNC_START(copy_mc_fragile) .L_done: ret SYM_FUNC_END(copy_mc_fragile) +#ifdef CONFIG_COPY_MC_TEST EXPORT_SYMBOL_GPL(copy_mc_fragile) +#endif .section .fixup, "ax" /* _______________________________________________ Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org To unsubscribe send an email to linux-nvdimm-leave@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: Dan Williams <dan.j.williams@intel.com> To: bp@alien8.de Cc: Borislav Petkov <bp@suse.de>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>, Tony Luck <tony.luck@intel.com>, linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org Subject: [PATCH] x86/mce: Gate copy_mc_fragile() export by CONFIG_COPY_MC_TEST=y Date: Wed, 07 Oct 2020 11:24:32 -0700 [thread overview] Message-ID: <160209507277.2768223.9933672492157583642.stgit@dwillia2-desk3.amr.corp.intel.com> (raw) In-Reply-To: <20201007111447.GA23257@zn.tnic> It appears that modpost is not happy about exporting assembly symbols that are not consumed in the same build. As Boris reports: WARNING: modpost: EXPORT symbol "copy_mc_fragile" [vmlinux] version generation failed, symbol will not be versioned. The export is only consumed in the CONFIG_COPY_MC_TEST=y case, and even then not in a way that modpost could see. CONFIG_COPY_MC_TEST uses a module built in tools/testing/nvdimm/ to exercise the copy_mc_fragile() corner cases. Given the test already requires manually editing the config entry for CONFIG_COPY_MC_TEST to make it "def_bool y" the additional dependency to require is CONFIG_MODVERSIONS=n is not too onerous. Alternatively, COPY_MC_TEST and its related infrastructure could just be ripped out because it has served its purpose. For now, just stop exporting the symbol by default, and add the MODVERSIONS dependency to the test. Fixes: ec6347bb4339 ("x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}()") Reported-by: Borislav Petkov <bp@suse.de> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: Borislav Petkov <bp@alien8.de> Cc: x86@kernel.org Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Tony Luck <tony.luck@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- arch/x86/Kconfig.debug | 1 + arch/x86/lib/copy_mc_64.S | 2 ++ 2 files changed, 3 insertions(+) diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug index 27b5e2bc6a01..6f0f5d8ac62e 100644 --- a/arch/x86/Kconfig.debug +++ b/arch/x86/Kconfig.debug @@ -63,6 +63,7 @@ config EARLY_PRINTK_USB_XDBC crashes or need a very simple printk logging facility. config COPY_MC_TEST + depends on !MODVERSIONS def_bool n config EFI_PGT_DUMP diff --git a/arch/x86/lib/copy_mc_64.S b/arch/x86/lib/copy_mc_64.S index 892d8915f609..50fb05256751 100644 --- a/arch/x86/lib/copy_mc_64.S +++ b/arch/x86/lib/copy_mc_64.S @@ -88,7 +88,9 @@ SYM_FUNC_START(copy_mc_fragile) .L_done: ret SYM_FUNC_END(copy_mc_fragile) +#ifdef CONFIG_COPY_MC_TEST EXPORT_SYMBOL_GPL(copy_mc_fragile) +#endif .section .fixup, "ax" /*
next prev parent reply other threads:[~2020-10-07 20:00 UTC|newest] Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-18 20:30 [PATCH] x86/memcpy: Introduce memcpy_mcsafe_fast Andy Lutomirski 2020-04-18 20:30 ` Andy Lutomirski 2020-04-18 20:52 ` Linus Torvalds 2020-04-18 20:52 ` Linus Torvalds 2020-04-20 5:08 ` Dan Williams 2020-04-20 5:08 ` Dan Williams 2020-04-20 17:28 ` Linus Torvalds 2020-04-20 17:28 ` Linus Torvalds 2020-04-20 18:20 ` Dan Williams 2020-04-20 18:20 ` Dan Williams 2020-04-20 19:05 ` Linus Torvalds 2020-04-20 19:05 ` Linus Torvalds 2020-04-20 19:29 ` Dan Williams 2020-04-20 19:29 ` Dan Williams 2020-04-20 20:07 ` Linus Torvalds 2020-04-20 20:07 ` Linus Torvalds 2020-04-20 20:23 ` Luck, Tony 2020-04-20 20:23 ` Luck, Tony 2020-04-20 20:27 ` Linus Torvalds 2020-04-20 20:27 ` Linus Torvalds 2020-04-20 20:45 ` Luck, Tony 2020-04-20 20:45 ` Luck, Tony 2020-04-20 20:56 ` Linus Torvalds 2020-04-20 20:56 ` Linus Torvalds 2020-04-20 20:24 ` Dan Williams 2020-04-20 20:24 ` Dan Williams 2020-04-20 20:46 ` Linus Torvalds 2020-04-20 20:46 ` Linus Torvalds 2020-04-20 20:57 ` Luck, Tony 2020-04-20 20:57 ` Luck, Tony 2020-04-20 21:16 ` Linus Torvalds 2020-04-20 21:16 ` Linus Torvalds 2020-10-06 9:57 ` [tip: ras/core] x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() tip-bot2 for Dan Williams 2020-10-07 11:14 ` Borislav Petkov 2020-10-07 16:45 ` Borislav Petkov 2020-10-07 17:03 ` Borislav Petkov 2020-10-07 18:53 ` Dan Williams 2020-10-07 19:25 ` Borislav Petkov 2020-10-08 16:59 ` Dan Williams 2020-10-08 17:08 ` Borislav Petkov 2020-10-07 17:51 ` Dan Williams 2020-10-07 18:24 ` Dan Williams [this message] 2020-10-07 18:24 ` [PATCH] x86/mce: Gate copy_mc_fragile() export by CONFIG_COPY_MC_TEST=y Dan Williams 2020-10-08 9:01 ` [tip: ras/core] x86/mce: Allow for copy_mc_fragile symbol checksum to be generated tip-bot2 for Borislav Petkov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=160209507277.2768223.9933672492157583642.stgit@dwillia2-desk3.amr.corp.intel.com \ --to=dan.j.williams@intel.com \ --cc=bp@alien8.de \ --cc=bp@suse.de \ --cc=hpa@zytor.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvdimm@lists.01.org \ --cc=mingo@redhat.com \ --cc=tglx@linutronix.de \ --cc=tony.luck@intel.com \ --cc=x86@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.