linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pu Wen <puwen@hygon.cn>
To: bp@alien8.de, tglx@linutronix.de, mingo@redhat.com,
	hpa@zytor.com, x86@kernel.org, thomas.lendacky@amd.com
Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
	Pu Wen <puwen@hygon.cn>
Subject: [PATCH v8 09/16] x86/bugs: Add mitigation to spectre and no meltdown for Hygon Dhyana
Date: Sun, 23 Sep 2018 17:35:50 +0800	[thread overview]
Message-ID: <0861d39c8a103fc0deca15bafbc85d403666d9ef.1537533369.git.puwen@hygon.cn> (raw)
In-Reply-To: <cover.1537533368.git.puwen@hygon.cn>

The Hygon Dhyana CPU has the same speculative execution as AMD family
17h, so share AMD spectre mitigation code for Hygon Dhyana.

Also Hygon Dhyana is not affected by meltdown vulnerability, so add
exception for it.

Signed-off-by: Pu Wen <puwen@hygon.cn>
---
 arch/x86/kernel/cpu/bugs.c   | 4 +++-
 arch/x86/kernel/cpu/common.c | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c
index 40bdaea..b810cc2 100644
--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -312,6 +312,7 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void)
 	}
 
 	if (cmd == SPECTRE_V2_CMD_RETPOLINE_AMD &&
+	    boot_cpu_data.x86_vendor != X86_VENDOR_HYGON &&
 	    boot_cpu_data.x86_vendor != X86_VENDOR_AMD) {
 		pr_err("retpoline,amd selected but CPU is not AMD. Switching to AUTO select\n");
 		return SPECTRE_V2_CMD_AUTO;
@@ -371,7 +372,8 @@ static void __init spectre_v2_select_mitigation(void)
 	return;
 
 retpoline_auto:
-	if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD) {
+	if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD ||
+	    boot_cpu_data.x86_vendor == X86_VENDOR_HYGON) {
 	retpoline_amd:
 		if (!boot_cpu_has(X86_FEATURE_LFENCE_RDTSC)) {
 			pr_err("Spectre mitigation: LFENCE not serializing, switching to generic retpoline\n");
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 44c4ef3..851cbe7 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -963,6 +963,7 @@ static const __initconst struct x86_cpu_id cpu_no_speculation[] = {
 
 static const __initconst struct x86_cpu_id cpu_no_meltdown[] = {
 	{ X86_VENDOR_AMD },
+	{ X86_VENDOR_HYGON },
 	{}
 };
 
-- 
2.7.4


  parent reply	other threads:[~2018-09-23  9:36 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-23  9:30 [PATCH v8 00/16] Add support for Hygon Dhyana Family 18h processor Pu Wen
2018-09-23  9:33 ` [PATCH v8 01/16] x86/cpu: Create Hygon Dhyana architecture support file Pu Wen
2018-09-27 17:00   ` [tip:x86/cpu] " tip-bot for Pu Wen
2018-09-23  9:33 ` [PATCH v8 02/16] x86/cpu: Get cache info and setup cache cpumap for Hygon Dhyana Pu Wen
2018-09-27 17:01   ` [tip:x86/cpu] " tip-bot for Pu Wen
2018-09-23  9:34 ` [PATCH v8 03/16] x86/cpu/mtrr: Support TOP_MEM2 and get MTRR number Pu Wen
2018-09-27 17:02   ` [tip:x86/cpu] " tip-bot for Pu Wen
2018-09-23  9:34 ` [PATCH v8 04/16] x86/smpboot: SMP init no delay and not flush caches before sleep Pu Wen
2018-09-27 17:02   ` [tip:x86/cpu] x86/smpboot: Do not use BSP INIT delay and MWAIT to idle on Dhyana tip-bot for Pu Wen
2018-09-23  9:34 ` [PATCH v8 05/16] perf/x86: Add Hygon Dhyana support to PMU infrastructure Pu Wen
2018-09-27 17:03   ` [tip:x86/cpu] x86/events: " tip-bot for Pu Wen
2018-09-23  9:35 ` [PATCH v8 06/16] x86/alternative: Init ideal_nops for Hygon Dhyana Pu Wen
2018-09-27 17:03   ` [tip:x86/cpu] " tip-bot for Pu Wen
2018-09-23  9:35 ` [PATCH v8 07/16] x86/pci: Add Hygon Dhyana support to PCI and north bridge Pu Wen
2018-09-23 11:10   ` Borislav Petkov
2018-09-23 12:54     ` Pu Wen
2018-09-24 15:24   ` Borislav Petkov
2018-09-25 12:27     ` Pu Wen
2018-09-25 12:30       ` Borislav Petkov
2018-09-25 12:57         ` Pu Wen
2018-09-25 14:45     ` [PATCH 1/2] x86/amd_nb: Add vendor checking for strict function access Pu Wen
2018-09-27 17:04       ` [tip:x86/cpu] x86/amd_nb: Check vendor in AMD-only functions tip-bot for Pu Wen
2018-09-25 14:46     ` [PATCH 2/2] x86/pci: Add Hygon Dhyana support to PCI and north bridge Pu Wen
2018-09-27 17:04       ` [tip:x86/cpu] x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge tip-bot for Pu Wen
2018-09-23  9:35 ` [PATCH v8 08/16] x86/apic: Add Hygon Dhyana support to APIC Pu Wen
2018-09-27 17:05   ` [tip:x86/cpu] x86/apic: Add Hygon Dhyana support tip-bot for Pu Wen
2018-09-23  9:35 ` Pu Wen [this message]
2018-09-27 17:06   ` [tip:x86/cpu] x86/bugs: Add Hygon Dhyana to the respective mitigation machinery tip-bot for Pu Wen
2018-09-23  9:36 ` [PATCH v8 10/16] x86/mce: Add Hygon Dhyana support to MCE infrastructure Pu Wen
2018-09-27 17:06   ` [tip:x86/cpu] x86/mce: Add Hygon Dhyana support to the MCA infrastructure tip-bot for Pu Wen
2018-09-23  9:36 ` [PATCH v8 11/16] x86/kvm: Add Hygon Dhyana support to KVM infrastructure Pu Wen
2018-09-27 17:07   ` [tip:x86/cpu] x86/kvm: Add Hygon Dhyana support to KVM tip-bot for Pu Wen
2018-09-23  9:36 ` [PATCH v8 12/16] x86/xen: Add Hygon Dhyana support to Xen Pu Wen
2018-09-27 17:07   ` [tip:x86/cpu] " tip-bot for Pu Wen
2018-09-23  9:37 ` [PATCH v8 13/16] ACPI, x86: Add Hygon Dhyana support Pu Wen
2018-09-27 17:08   ` [tip:x86/cpu] ACPI: " tip-bot for Pu Wen
2018-09-23  9:37 ` [PATCH v8 14/16] cpufreq, x86: " Pu Wen
2018-09-27 17:08   ` [tip:x86/cpu] cpufreq: " tip-bot for Pu Wen
2018-09-23  9:37 ` [PATCH v8 15/16] EDAC, amd64: " Pu Wen
2018-09-23  9:38 ` [PATCH v8 16/16] cpupower, x86: " Pu Wen
  -- strict thread matches above, loose matches on Subject: below --
2018-09-10 13:15 [PATCH v6 00/16] Add support for Hygon Dhyana Family 18h processor Pu Wen
2018-09-10 13:15 ` [PATCH v6 01/16] x86/cpu: Create Hygon Dhyana architecture support file Pu Wen
2018-09-10 16:38   ` Borislav Petkov
2018-09-11  6:33     ` Pu Wen
2018-09-10 13:15 ` [PATCH v6 02/16] x86/cpu: Get cache info and setup cache cpumap for Hygon Dhyana Pu Wen
2018-09-10 13:16 ` [PATCH v6 03/16] x86/cpu/mtrr: Support TOP_MEM2 and get MTRR number Pu Wen
2018-09-10 18:06   ` Borislav Petkov
2018-09-11  6:39     ` Pu Wen
2018-09-10 13:16 ` [PATCH v6 04/16] x86/smpboot: SMP init nodelay and not flush caches before sleep Pu Wen
2018-09-10 13:16 ` [PATCH v6 05/16] perf/x86: Add Hygon Dhyana support to PMU infrastructure Pu Wen
2018-09-10 18:17   ` Borislav Petkov
2018-09-11  7:00     ` Pu Wen
2018-09-10 13:16 ` [PATCH v6 06/16] x86/alternative: Init ideal_nops for Hygon Dhyana Pu Wen
2018-09-10 13:17 ` [PATCH v6 07/16] x86/pci: Add Hygon Dhyana support to PCI and north bridge Pu Wen
2018-09-11 10:07   ` Borislav Petkov
2018-09-19 17:20   ` Lendacky, Thomas
2018-09-20  7:25     ` Thomas Gleixner
2018-09-20  8:05     ` Pu Wen
2018-09-10 13:17 ` [PATCH v6 08/16] x86/apic: Add Hygon Dhyana support to APIC Pu Wen
2018-09-11 10:14   ` Borislav Petkov
2018-09-11 13:03     ` Pu Wen
2018-09-10 13:17 ` [PATCH v6 09/16] x86/bugs: Add mitigation to spectre and no meltdown for Hygon Dhyana Pu Wen
2018-09-11 10:38   ` Borislav Petkov
2018-09-11 13:17     ` Pu Wen
2018-09-10 13:17 ` [PATCH v6 10/16] x86/mce: Add Hygon Dhyana support to MCE infrastructure Pu Wen
2018-09-11 10:43   ` Borislav Petkov
2018-09-10 13:18 ` [PATCH v6 11/16] x86/kvm: Add Hygon Dhyana support to KVM infrastructure Pu Wen
2018-09-10 13:19 ` [PATCH v6 12/16] x86/xen: Add Hygon Dhyana support to Xen Pu Wen
2018-09-10 13:19 ` [PATCH v6 13/16] ACPI, x86: Add Hygon Dhyana support Pu Wen
2018-09-10 13:20 ` [PATCH v6 14/16] cpufreq, " Pu Wen
2018-09-10 13:20 ` [PATCH v6 15/16] EDAC, amd64: " Pu Wen
2018-09-11 10:51   ` Borislav Petkov
2018-09-10 13:20 ` [PATCH v6 16/16] cpupower, x86: " Pu Wen
2018-10-01 19:38   ` Shuah Khan
2018-10-04  1:21     ` [RESEND PATCH v8 16/16] cpupower: " Pu Wen
2018-10-04  8:03       ` [tip:x86/cpu] tools/cpupower: " tip-bot for Pu Wen

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=0861d39c8a103fc0deca15bafbc85d403666d9ef.1537533369.git.puwen@hygon.cn \
    --to=puwen@hygon.cn \
    --cc=bp@alien8.de \
    --cc=hpa@zytor.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=thomas.lendacky@amd.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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).