Received: by 10.223.185.116 with SMTP id b49csp2316188wrg; Thu, 15 Feb 2018 09:43:36 -0800 (PST) X-Google-Smtp-Source: AH8x224+411vlfl7FLoQeQ/2jZKD5N6zcv6IoMPVFBU/eG4cxjJzDvpjQyrlw1ClvVaNwmK9op7m X-Received: by 10.98.102.155 with SMTP id s27mr2994127pfj.198.1518716616704; Thu, 15 Feb 2018 09:43:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518716616; cv=none; d=google.com; s=arc-20160816; b=gSo2pHzuatzzcFAQtC8zspdmbGHiiJ1th3D+TUBpsP1OP3U0/9M8Cd5/5GW9u7pFf4 w4B7HcMVlLu7IvBEnVgrVmmtttLAO++gmB5tkSSFCoyDKghYTEXVR5AJy17+o2hUT+vr 6juZclkFe9Gxj6O4o0BUK3ESxfMaPQA1DPUFRdAyIsokGIKb+WQHJRd0A3y7JOZpQ8bJ 4ZoT5cnqd/ESkKssEJ8SjTYwnKMVySqMTDIDKVlqTTnc3XpgBjrx5lG7XHgYzV/p0Md4 jFShS8gcviudSvQv9FOnuxXFKXDFpzc1Cq0RFetcrE8dNkV5tbpASAb0n63cHpdSk9WW jMNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=bpbWYwVbcKCpmRtvZmqT+5bpwAyzc97PMvRX1XPJ2zE=; b=s7li6kyPFlGwaDjA81YIhFoJqI0gF1gVZvcverBL/iImGemykb1JQsTWU8GktyaH6w mCjJUkLLm72V5OmVufpwrIWjFngZ/IHNC+RpaYl/uEuFN9tuvH24AYO+4LnedN1sQ3O9 Pc8fK6eRoXfHTOlqaUvdhCfLZg9J7DjMUj3QrIQe6xoMGaRYryq7dh1mzrULLXaXjXvJ nCWyiZg5ZD0v+ReA35TqGj10ZGyaQGvdWq9OBDRX4bz72kyo3FZ0wvE0zAUtcKlstzbz Eydczq4yAkXZyGuF7RdXwXbGYvXjl+OTSqpXaElUaBNOwztFGrzpOkoaPxBwavN/9nwx ra9g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s88si5116468pfa.235.2018.02.15.09.43.21; Thu, 15 Feb 2018 09:43:36 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1164626AbeBOPc3 (ORCPT + 99 others); Thu, 15 Feb 2018 10:32:29 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:56406 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1163857AbeBOPc0 (ORCPT ); Thu, 15 Feb 2018 10:32:26 -0500 Received: from localhost (LFbn-1-12258-90.w90-92.abo.wanadoo.fr [90.92.71.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 515D5ECC; Thu, 15 Feb 2018 15:32:25 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Will Deacon , Mark Rutland , Andre Przywara , Dave Martin , Suzuki K Poulose , Catalin Marinas , Ard Biesheuvel Subject: [PATCH 4.14 066/195] [Variant 2/Spectre-v2] arm64: Run enable method for errata work arounds on late CPUs Date: Thu, 15 Feb 2018 16:15:57 +0100 Message-Id: <20180215151709.006581977@linuxfoundation.org> X-Mailer: git-send-email 2.16.1 In-Reply-To: <20180215151705.738773577@linuxfoundation.org> References: <20180215151705.738773577@linuxfoundation.org> User-Agent: quilt/0.65 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Suzuki K Poulose Commit 55b35d070c25 upstream. When a CPU is brought up after we have finalised the system wide capabilities (i.e, features and errata), we make sure the new CPU doesn't need a new errata work around which has not been detected already. However we don't run enable() method on the new CPU for the errata work arounds already detected. This could cause the new CPU running without potential work arounds. It is upto the "enable()" method to decide if this CPU should do something about the errata. Fixes: commit 6a6efbb45b7d95c84 ("arm64: Verify CPU errata work arounds on hotplugged CPU") Cc: Will Deacon Cc: Mark Rutland Cc: Andre Przywara Cc: Dave Martin Signed-off-by: Suzuki K Poulose Signed-off-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Ard Biesheuvel Signed-off-by: Greg Kroah-Hartman --- arch/arm64/kernel/cpu_errata.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) --- a/arch/arm64/kernel/cpu_errata.c +++ b/arch/arm64/kernel/cpu_errata.c @@ -221,15 +221,18 @@ void verify_local_cpu_errata_workarounds { const struct arm64_cpu_capabilities *caps = arm64_errata; - for (; caps->matches; caps++) - if (!cpus_have_cap(caps->capability) && - caps->matches(caps, SCOPE_LOCAL_CPU)) { + for (; caps->matches; caps++) { + if (cpus_have_cap(caps->capability)) { + if (caps->enable) + caps->enable((void *)caps); + } else if (caps->matches(caps, SCOPE_LOCAL_CPU)) { pr_crit("CPU%d: Requires work around for %s, not detected" " at boot time\n", smp_processor_id(), caps->desc ? : "an erratum"); cpu_die_early(); } + } } void update_cpu_errata_workarounds(void)