From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754025AbdHXQbC (ORCPT ); Thu, 24 Aug 2017 12:31:02 -0400 Received: from mga06.intel.com ([134.134.136.31]:48618 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753469AbdHXQ10 (ORCPT ); Thu, 24 Aug 2017 12:27:26 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,422,1498546800"; d="scan'208";a="1007291705" From: "Luck, Tony" To: Thomas Gleixner Cc: Tony Luck , Vikas Shivappa , x86@kernel.org, linux-kernel@vger.kernel.org, "H. Peter Anvin" , "Peter Zijlstra" , "Shankar, Ravi V" , "Yu, Fenghua" , "Andi Kleen" , "Stephane Eranian" , "David Carrillo-Cisneros" Subject: [PATCH 3/3] x86/intel_rdt: Turn off most RDT features on Skylake Date: Thu, 24 Aug 2017 09:26:52 -0700 Message-Id: <3aea0a3bae219062c812668bd9b7b8f1a25003ba.1503512900.git.tony.luck@intel.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Tony Luck Errata list is included in this document: https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/6th-gen-x-series-spec-update.pdf with more details in: https://www.intel.com/content/www/us/en/processors/xeon/scalable/xeon-scalable-spec-update.html But the tl;dr summary (using tags from first of the documents) is: SKZ4 MBM does not accurately track write bandwidth SKZ17 CMT counters may not count accurately SKZ18 CAT may not restrict cacheline allocation under certain conditions SKZ19 MBM counters may undercount Disable all these features on Skylake models. Users who understand the errata may re-enable using boot command line options. Signed-off-by: Tony Luck --- arch/x86/kernel/cpu/intel_rdt.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/x86/kernel/cpu/intel_rdt.c b/arch/x86/kernel/cpu/intel_rdt.c index 65222d8fd5ec..a55b74ca0973 100644 --- a/arch/x86/kernel/cpu/intel_rdt.c +++ b/arch/x86/kernel/cpu/intel_rdt.c @@ -767,6 +767,9 @@ static __init void rdt_quirks(void) if (!rdt_options[RDT_FLAG_L3_CAT].force_off) cache_alloc_hsw_probe(); break; + case INTEL_FAM6_SKYLAKE_X: + if (boot_cpu_data.x86_mask <= 4) + set_rdt_options("!cmt,!mbmtotal,!mbmlocal,!l3cat"); } } -- 2.11.0