Received: by 10.223.185.116 with SMTP id b49csp513192wrg; Fri, 16 Feb 2018 02:46:35 -0800 (PST) X-Google-Smtp-Source: AH8x227xMl3HeAfXSnZkH3jRl1nTiN2g0flCV1kSMtxZ/X1WKsQWYtcv79WlTHtKUuTAeylrLLsE X-Received: by 2002:a17:902:1746:: with SMTP id i64-v6mr5441566pli.53.1518777995473; Fri, 16 Feb 2018 02:46:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518777995; cv=none; d=google.com; s=arc-20160816; b=irCV0yec0UUoU4IqiXgGmIP8gvQIoJ/2IMScYx/h35K+5NXoJPHY8KPotRkmfoYZbf Get8cBm1bRK7Oia7+OO6XhLJmqqIJLfzYZIIkb3pwhYW5hNpxSQqLXEhWfXor6yk+onl lRmGJ0q7cKjMm9SaGbz2bOUxyhf11IJNll2c/vY4dgznYEQ8wVGeecMrJgRf1NvpMekK NdwJuD06evoOJjVyfPHfOlS8mLMOg3OP7sigHRlup7G1eHrp6TuyIzOx3GOfcGX0o+oT lqIkqIiMKh/sDzFv90GS2Wplsd53Vekeufi0dhpjFw9hP5ozjVyEyWSK6vlJEbOfKlnV 6Rcg== 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=LVgUfovXsXmxcpfRpioJfHhgGFLt6Z0L1RS2ftlifyA=; b=ZugSXQjnmL2wTQaZotMcicVapTW5H/laQIL6+WZ4eiFdOKowX9TDr2lArBxSdtdpt5 uxQASz0K1J1mkHHlDm3w+2W7rGTVzaBRnM6br6ApeylvOyncTLZDlZMlMGhIvRo3P6wm 5dcOhWv5pcZXYsK4QlNGzi21EXOEUNXOg90DaTIUKoEWgnPuxvHkFBdf5GulIY+NVxXb FZmwV1uhhf2AhDI6FIR6kcBA4yTWbAqRb3OhuvZCNZovr0nFD+RykIdUThq0islK7HZv +xtMyu0/MTw595Hw4/PJUDl+0TKbAYrPz7Ql60Zq15UY6JsCfX2GymPIeajuINkkizqJ yzIg== 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 w3si5162320pgb.419.2018.02.16.02.46.20; Fri, 16 Feb 2018 02:46:35 -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 S1165627AbeBORbF (ORCPT + 99 others); Thu, 15 Feb 2018 12:31:05 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:56804 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1164919AbeBOPdk (ORCPT ); Thu, 15 Feb 2018 10:33:40 -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 50F5D10D2; Thu, 15 Feb 2018 15:33:39 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Mark Rutland , Will Deacon , Catalin Marinas , Ard Biesheuvel Subject: [PATCH 4.14 056/195] [Variant 1/Spectre-v1] arm64: barrier: Add CSDB macros to control data-value prediction Date: Thu, 15 Feb 2018 16:15:47 +0100 Message-Id: <20180215151708.535992836@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: Will Deacon Commit 669474e772b9 upstream. For CPUs capable of data value prediction, CSDB waits for any outstanding predictions to architecturally resolve before allowing speculative execution to continue. Provide macros to expose it to the arch code. Reviewed-by: Mark Rutland Signed-off-by: Will Deacon Signed-off-by: Catalin Marinas Signed-off-by: Ard Biesheuvel Signed-off-by: Greg Kroah-Hartman --- arch/arm64/include/asm/assembler.h | 7 +++++++ arch/arm64/include/asm/barrier.h | 2 ++ 2 files changed, 9 insertions(+) --- a/arch/arm64/include/asm/assembler.h +++ b/arch/arm64/include/asm/assembler.h @@ -96,6 +96,13 @@ .endm /* + * Value prediction barrier + */ + .macro csdb + hint #20 + .endm + +/* * NOP sequence */ .macro nops, num --- a/arch/arm64/include/asm/barrier.h +++ b/arch/arm64/include/asm/barrier.h @@ -31,6 +31,8 @@ #define dmb(opt) asm volatile("dmb " #opt : : : "memory") #define dsb(opt) asm volatile("dsb " #opt : : : "memory") +#define csdb() asm volatile("hint #20" : : : "memory") + #define mb() dsb(sy) #define rmb() dsb(ld) #define wmb() dsb(st)