Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp4775314yba; Tue, 30 Apr 2019 04:17:41 -0700 (PDT) X-Google-Smtp-Source: APXvYqzEQ8T3HO+3gSAxd0n6RjDzaTN4Ob/IoyD59kPMhNw9GFufc8KUV8vbCIFc+1Mx+dvm9hWh X-Received: by 2002:a63:fd0c:: with SMTP id d12mr42630708pgh.172.1556623061060; Tue, 30 Apr 2019 04:17:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556623061; cv=none; d=google.com; s=arc-20160816; b=pZOIOnHY1oAfTnHa6v62jRvQNF592FDrb/4ClH/Igd/rTOfU4Ng5Dd+3GGcrjutFzY 2Hv5ixPVPpf2ccj1Y2FsAoSi1YMuUanzm2Bq3LTGNw5HD10skE6XTigkQ961LL4LgXyH moTR3eKTVfB4mKk6rSNFKl4zZM/lQkQW4j96sajvXZH+yIR/JB/R964kTemhx/mD9wfY 3/h30Ldaw6oTqrOjR0BkZ7A9qYVVq9XEPQ/oAA44BN/vyj1Ijde//klgcDXWu7PvlS7g cLwAKYCT3gqXp22fo7uDCxHWLLGw9XQbbImPkBQf1PL7pISzdquggTWUJNyDvQVsKRJ/ 2voA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-disposition :content-transfer-encoding:mime-version:robot-unsubscribe:robot-id :git-commit-id:subject:to:references:in-reply-to:reply-to:cc :message-id:from:date:dkim-signature:dkim-filter; bh=uxzQMi0Dx0Blq16DFl0L8XGG5v6oUGdkcJLD6bZuKWM=; b=XYUkzAThnrHniYZYtRG65/+9e65HLK/6mmXqUCvV4MhwX+OLZCFY9WznAsPZ7hpjsJ s7GXefkEdscGC1HwyzKujX/3sxzIVaceuURQzzpbk+QmuwqzmYooFZ7oyoz40rHiVVZn Y4JdZSAJQeISng5vSv9a9ZE7o9s4TcGQQ8d12dAq17u88EjvX9ekkbXPWKCPWrYOMGB/ EAN0VxKto4QxG0bBLivctieoNkge7KzZNHQ7al2jocMp5q54M2ztKa+dgNHf+SIg9XxL 8Ro3wxsSXRy0Q/pII7mewX984xhUOuL+V/HV8bCM8p9O5GCahWq/3GeEgsnCPzPs4SO1 OQpQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@zytor.com header.s=2019041745 header.b=GhhGn8yy; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zytor.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1si38933885plu.320.2019.04.30.04.17.25; Tue, 30 Apr 2019 04:17:41 -0700 (PDT) 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; dkim=pass header.i=@zytor.com header.s=2019041745 header.b=GhhGn8yy; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zytor.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727430AbfD3LQI (ORCPT + 99 others); Tue, 30 Apr 2019 07:16:08 -0400 Received: from terminus.zytor.com ([198.137.202.136]:44739 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726900AbfD3LQH (ORCPT ); Tue, 30 Apr 2019 07:16:07 -0400 Received: from terminus.zytor.com (localhost [127.0.0.1]) by terminus.zytor.com (8.15.2/8.15.2) with ESMTPS id x3UBEWJS1346292 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Tue, 30 Apr 2019 04:14:33 -0700 DKIM-Filter: OpenDKIM Filter v2.11.0 terminus.zytor.com x3UBEWJS1346292 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com; s=2019041745; t=1556622874; bh=uxzQMi0Dx0Blq16DFl0L8XGG5v6oUGdkcJLD6bZuKWM=; h=Date:From:Cc:Reply-To:In-Reply-To:References:To:Subject:From; b=GhhGn8yync+2L4iYJzMthwN6liGoEtRrDBgPDsoIwNPTYspcCcWypv0+U+e+RDPnO BwDku7rDgSxdiE2To26QcqvSw2X32gSe0IqdHu4Vwr91wuu7Qzx8HCpjAgTPiqqLeq g47cjF5/XW59c+QljLbNkx/0+DHGlLhjRCWsYLSq/4zbYbx+no3hpxpwf2G6AoSi5q DEemCkCuat/KNgrYpnqXmZlmvqH4T16+gsqt0Ok4fx7LeeSrEfZPOMwEKY4jfX5GRf 9qHT7jdwDJDdcxiP1/721ATH6yEjRsiu569ZFV/mZVF36oHryx5bzLeHn4aGLxmdmc 67oX1m8lQ8T8w== Received: (from tipbot@localhost) by terminus.zytor.com (8.15.2/8.15.2/Submit) id x3UBEWCh1346289; Tue, 30 Apr 2019 04:14:32 -0700 Date: Tue, 30 Apr 2019 04:14:32 -0700 X-Authentication-Warning: terminus.zytor.com: tipbot set sender to tipbot@zytor.com using -f From: tip-bot for Nadav Amit Message-ID: Cc: namit@vmware.com, torvalds@linux-foundation.org, akpm@linux-foundation.org, hpa@zytor.com, peterz@infradead.org, ard.biesheuvel@linaro.org, dave.hansen@linux.intel.com, kristen@linux.intel.com, linux_dti@icloud.com, kernel-hardening@lists.openwall.com, bp@alien8.de, riel@surriel.com, rick.p.edgecombe@intel.com, mingo@kernel.org, will.deacon@arm.com, tglx@linutronix.de, luto@kernel.org, linux-kernel@vger.kernel.org, deneen.t.dock@intel.com Reply-To: will.deacon@arm.com, tglx@linutronix.de, rick.p.edgecombe@intel.com, mingo@kernel.org, riel@surriel.com, luto@kernel.org, linux-kernel@vger.kernel.org, deneen.t.dock@intel.com, kristen@linux.intel.com, linux_dti@icloud.com, dave.hansen@linux.intel.com, ard.biesheuvel@linaro.org, kernel-hardening@lists.openwall.com, bp@alien8.de, peterz@infradead.org, akpm@linux-foundation.org, hpa@zytor.com, namit@vmware.com, torvalds@linux-foundation.org In-Reply-To: <20190426001143.4983-23-namit@vmware.com> References: <20190426001143.4983-23-namit@vmware.com> To: linux-tip-commits@vger.kernel.org Subject: [tip:x86/mm] mm/tlb: Provide default nmi_uaccess_okay() Git-Commit-ID: 5932c9fd19e6e5ac84756c5c32fe5155d9a6b458 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, FREEMAIL_FORGED_REPLYTO,T_DATE_IN_FUTURE_96_Q autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on terminus.zytor.com Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: 5932c9fd19e6e5ac84756c5c32fe5155d9a6b458 Gitweb: https://git.kernel.org/tip/5932c9fd19e6e5ac84756c5c32fe5155d9a6b458 Author: Nadav Amit AuthorDate: Thu, 25 Apr 2019 17:11:42 -0700 Committer: Ingo Molnar CommitDate: Tue, 30 Apr 2019 12:37:48 +0200 mm/tlb: Provide default nmi_uaccess_okay() x86 has an nmi_uaccess_okay(), but other architectures do not. Arch-independent code might need to know whether access to user addresses is ok in an NMI context or in other code whose execution context is unknown. Specifically, this function is needed for bpf_probe_write_user(). Add a default implementation of nmi_uaccess_okay() for architectures that do not have such a function. Signed-off-by: Nadav Amit Signed-off-by: Rick Edgecombe Signed-off-by: Peter Zijlstra (Intel) Cc: Cc: Cc: Cc: Cc: Cc: Cc: Cc: Andy Lutomirski Cc: Borislav Petkov Cc: Dave Hansen Cc: H. Peter Anvin Cc: Linus Torvalds Cc: Rik van Riel Cc: Thomas Gleixner Link: https://lkml.kernel.org/r/20190426001143.4983-23-namit@vmware.com Signed-off-by: Ingo Molnar --- arch/x86/include/asm/tlbflush.h | 2 ++ include/asm-generic/tlb.h | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h index f4204bf377fc..e9eae3d6ef02 100644 --- a/arch/x86/include/asm/tlbflush.h +++ b/arch/x86/include/asm/tlbflush.h @@ -274,6 +274,8 @@ static inline bool nmi_uaccess_okay(void) return true; } +#define nmi_uaccess_okay nmi_uaccess_okay + /* Initialize cr4 shadow for this CPU. */ static inline void cr4_init_shadow(void) { diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h index 6be86c1c5c58..075b353cae86 100644 --- a/include/asm-generic/tlb.h +++ b/include/asm-generic/tlb.h @@ -20,6 +20,15 @@ #include #include +/* + * Blindly accessing user memory from NMI context can be dangerous + * if we're in the middle of switching the current user task or switching + * the loaded mm. + */ +#ifndef nmi_uaccess_okay +# define nmi_uaccess_okay() true +#endif + #ifdef CONFIG_MMU #ifdef CONFIG_HAVE_RCU_TABLE_FREE