Received: by 10.223.176.46 with SMTP id f43csp2670140wra; Mon, 22 Jan 2018 01:16:04 -0800 (PST) X-Google-Smtp-Source: AH8x224p1JyiE9m6uUE3bStMi/lUbzB7lmQ3y3GZvVSqV9mYIyHi38KAR/LeZ0k3BGzZnNnHdQwQ X-Received: by 10.101.96.78 with SMTP id b14mr6896122pgv.339.1516612564726; Mon, 22 Jan 2018 01:16:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516612564; cv=none; d=google.com; s=arc-20160816; b=Qne8/H20VUvkQsT3osQAvtFQ1wHRPwt3eEE2VG3eFf30EwDU9/wymsaqreNonmU2hI LkKVGqLhd6z4PkIs9tmjDaSIdsU3ELbTbIJBu/vNJOrATLwrJPieXaJLXVlFqQ6w1V1y f6QU1mNPMm1g/Yd9uRTpMGxiz43hhHXvHbtDjOHGocrygcFLB0leCq1Kb1zCwH2Sjscs I1o945+OQcpZUaawC9wYMtRmW3JhQsyEndzgOANIUkDKitBZJIvkTgY6gML4CnqGP72Y XHlOYaJAfh3i/qSjp1jWo8c3mVqMo9mgwl8en8A+IRDHnKDZ9SvBt0ceI/A+681a/xTD AAIw== 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=909fbrDfbCj4Crrhd/8avsj73G81W630GdGPnNZj/zA=; b=ybR//zr+y6EcB9WhqW58yq1f+tSQzUX8CxTlbnyzzUOuHz6kdLYqJ+EIRwaWDgOxPU VaAtU0bFQzCVBT84oijzYfr3btxS8RZU6ybpQG9BIw7vcDv8BX0dROcA3W3Jw602ltb5 QsuzVXxTTtxNkwsYQlhleWcbCG8aYfyMf/iV2BbjJTBsKA5I3Ts5ziG48pIF1uLSEwld yxiOe/Y6x2PAL0grc2ylSdbsgmd90XuklV9kyqMnxaE+vJSRHnGLf9ZMR6JUttj6FNiW K3n8A3ioI4aE2ZI853FxdKAcdAQxilKJk9DmNi1SrXczKAxrbhT6wxmn4R8EIHAFLOtU xKAQ== 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 u6-v6si3195580plm.826.2018.01.22.01.15.50; Mon, 22 Jan 2018 01:16:04 -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 S1752276AbeAVJPU (ORCPT + 99 others); Mon, 22 Jan 2018 04:15:20 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:33176 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752391AbeAVIvG (ORCPT ); Mon, 22 Jan 2018 03:51:06 -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 74133E5F; Mon, 22 Jan 2018 08:51:05 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Nicholas Piggin , Michael Ellerman Subject: [PATCH 4.14 07/89] powerpc/64: Add macros for annotating the destination of rfid/hrfid Date: Mon, 22 Jan 2018 09:44:47 +0100 Message-Id: <20180122083955.434722988@linuxfoundation.org> X-Mailer: git-send-email 2.16.0 In-Reply-To: <20180122083954.683903493@linuxfoundation.org> References: <20180122083954.683903493@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: Nicholas Piggin commit 50e51c13b3822d14ff6df4279423e4b7b2269bc3 upstream. The rfid/hrfid ((Hypervisor) Return From Interrupt) instruction is used for switching from the kernel to userspace, and from the hypervisor to the guest kernel. However it can and is also used for other transitions, eg. from real mode kernel code to virtual mode kernel code, and it's not always clear from the code what the destination context is. To make it clearer when reading the code, add macros which encode the expected destination context. Signed-off-by: Nicholas Piggin Signed-off-by: Michael Ellerman Signed-off-by: Greg Kroah-Hartman --- arch/powerpc/include/asm/exception-64e.h | 6 ++++++ arch/powerpc/include/asm/exception-64s.h | 29 +++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) --- a/arch/powerpc/include/asm/exception-64e.h +++ b/arch/powerpc/include/asm/exception-64e.h @@ -209,5 +209,11 @@ exc_##label##_book3e: ori r3,r3,vector_offset@l; \ mtspr SPRN_IVOR##vector_number,r3; +#define RFI_TO_KERNEL \ + rfi + +#define RFI_TO_USER \ + rfi + #endif /* _ASM_POWERPC_EXCEPTION_64E_H */ --- a/arch/powerpc/include/asm/exception-64s.h +++ b/arch/powerpc/include/asm/exception-64s.h @@ -69,6 +69,35 @@ */ #define EX_R3 EX_DAR +/* Macros for annotating the expected destination of (h)rfid */ + +#define RFI_TO_KERNEL \ + rfid + +#define RFI_TO_USER \ + rfid + +#define RFI_TO_USER_OR_KERNEL \ + rfid + +#define RFI_TO_GUEST \ + rfid + +#define HRFI_TO_KERNEL \ + hrfid + +#define HRFI_TO_USER \ + hrfid + +#define HRFI_TO_USER_OR_KERNEL \ + hrfid + +#define HRFI_TO_GUEST \ + hrfid + +#define HRFI_TO_UNKNOWN \ + hrfid + #ifdef CONFIG_RELOCATABLE #define __EXCEPTION_RELON_PROLOG_PSERIES_1(label, h) \ mfspr r11,SPRN_##h##SRR0; /* save SRR0 */ \