From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x226JcQO6kAn6jWufRoBQwjz0lYfhVyGZTJm5npcsS6bOlaj4w4za3nnDaDKTD7NW3H4mpiYh ARC-Seal: i=1; a=rsa-sha256; t=1516726411; cv=none; d=google.com; s=arc-20160816; b=YgVn/JHIY5aULxtpcQK4n4CVTMYYXRUx3NIfK8ynxU2ExziAbVyWCo3k+fMeWzRiVZ QgXUQ9OkRRs1lAi4RNG21n/JKdBmR8VCM37tu8xMkLMv/xtDD95JcKXTbsTWBlEXY6I/ iBqfLNDZMe7bamNWeLhGSHnRj6jClG+qIbUIgMZYEG2phsBiWzxPkq41FrpsdxF73MXN YgPUhJvE7HnC9NUO/W2cKl/UW3aV5pWVoUHXkJvVKpQCH+47raMrVIifs6ycvSwUmQMY 4zfA067hVeYevcYRyDZv4iL0f0BNz8Pdl7w80Ug8yADqcjrYCIqXzzhjeud86aG4iI2N 4gQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:to:from :dkim-signature:arc-authentication-results; bh=/VrIL8hddAXEJ1ytvufxBiST/upNkmMou8RA/wNQ2kc=; b=WgSAjDpBZGcfNzicX9pBlpa5S1JAekkQoH5BcszsLDGS5dsTGIDmv0Jne7FGqIIuG2 MybhzKyL/8bfilEmnQfstqNEIfGTbU0Mt1V5Ozjy/ptGnPcS1cyKwYj6thGk/uPNftj3 bp/5LNZbcURngv9O5OE2bwrbLxliSDL7SgMJgEG1BUCQJkf2FMr+pzaYKxc2ADO80Wrz PL523POq1CVpptvZuFYupOkP6pSLmF8zZL7gqjyELuu/zx9fSg2AabiEJWJ0Y+V87xOs NS3Rmxq/3mjxbFlTaOsaHDwSokuFJ2kBp3m+zRxoWGgnhCgw9bxLsORhhZFIFy94mctr sG5Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amazon.co.uk header.s=amazon201209 header.b=M/Fq7xbK; spf=pass (google.com: domain of prvs=5540fad8f=dwmw@amazon.com designates 207.171.184.29 as permitted sender) smtp.mailfrom=prvs=5540fad8f=dwmw@amazon.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.co.uk Authentication-Results: mx.google.com; dkim=pass header.i=@amazon.co.uk header.s=amazon201209 header.b=M/Fq7xbK; spf=pass (google.com: domain of prvs=5540fad8f=dwmw@amazon.com designates 207.171.184.29 as permitted sender) smtp.mailfrom=prvs=5540fad8f=dwmw@amazon.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.co.uk X-IronPort-AV: E=Sophos;i="5.46,402,1511827200"; d="scan'208";a="589159705" From: David Woodhouse To: arjan@linux.intel.com, tglx@linutronix.de, karahmed@amazon.de, x86@kernel.org, linux-kernel@vger.kernel.org, tim.c.chen@linux.intel.com, bp@alien8.de, peterz@infradead.org, pbonzini@redhat.com, ak@linux.intel.com, torvalds@linux-foundation.org, gregkh@linux-foundation.org, thomas.lendacky@amd.com Subject: [PATCH v2 5/5] x86/pti: Do not enable PTI on fixed Intel processors Date: Tue, 23 Jan 2018 16:52:55 +0000 Message-Id: <1516726375-25168-6-git-send-email-dwmw@amazon.co.uk> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516726375-25168-1-git-send-email-dwmw@amazon.co.uk> References: <1516726375-25168-1-git-send-email-dwmw@amazon.co.uk> X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1590402913825670017?= X-GMAIL-MSGID: =?utf-8?q?1590402913825670017?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: When they advertise the IA32_ARCH_CAPABILITIES MSR and it has the RDCL_NO bit set, they don't need KPTI either. Signed-off-by: David Woodhouse --- arch/x86/kernel/cpu/common.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index e5d66e9..c05d0fe 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c @@ -900,8 +900,14 @@ static void __init early_identify_cpu(struct cpuinfo_x86 *c) setup_force_cpu_cap(X86_FEATURE_ALWAYS); - if (c->x86_vendor != X86_VENDOR_AMD) - setup_force_cpu_bug(X86_BUG_CPU_MELTDOWN); + if (c->x86_vendor != X86_VENDOR_AMD) { + u64 ia32_cap = 0; + + if (cpu_has(c, X86_FEATURE_ARCH_CAPABILITIES)) + rdmsrl(MSR_IA32_ARCH_CAPABILITIES, ia32_cap); + if (!(ia32_cap & ARCH_CAP_RDCL_NO)) + setup_force_cpu_bug(X86_BUG_CPU_MELTDOWN); + } setup_force_cpu_bug(X86_BUG_SPECTRE_V1); setup_force_cpu_bug(X86_BUG_SPECTRE_V2); -- 2.7.4