Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4736903pxj; Wed, 12 May 2021 12:03:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw3YIcaEoiBlsqaHJ7A5nubWkFOeUIFMdi1f5mptc/9+i2OvG+iK7jQwOiYxAIPeVz/QTLB X-Received: by 2002:a17:906:7fd3:: with SMTP id r19mr38631208ejs.2.1620846222255; Wed, 12 May 2021 12:03:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620846222; cv=none; d=google.com; s=arc-20160816; b=YcEfJNQQgzqt/BRbHiFlzY95RCG4jHbE6WaWGD8BJP1N/NGVozsiX+zSCQMupVNlaF SaasyFP6bszElfNx1mvOI1GZnkk3qsVKP4fEmfl+F2ntiXXidZ98fBnwCvvgOfanYCOk Y7UMVJCFTr99t/wAK8gd7sUkfoqQzGpB6d/lpUtQdJIljjuc1w+lSvD2ds6IbieprUTt FTcS0Oc76jk0jCrt3uvCD8qdNTOtGRsJikKinrZ+fJBURhnGJGFElcJ3aErd2orE63gE 9vwirDDaERzgjK0oDEcqW3/wlaYNqsYnOElVQrABf1gfucZH0nX6eCfusXMRX7NRzCZR PdjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=jaRSCw6Zt3P9e9EOu5s+FNkphYuA48la30GBvCb6ilo=; b=NPda+TPO7x/BUMHd89GuUfwYaR0TBxhgu8EWP5cWtq1SxBw41GB16V/ByWw9hgeGJp 1OWDR19eYAdAhMp9WIQaxuTltHBE8t+0HkFClNe4F06KVmgCra38AceB3JfCeflQuDn0 fDiccLFsCIwE8LEdS9IRmDjxjowUGrYwABpRFxtgIWAvkyohSPQkseVkGhWDtgI4u9rX X38HP+eeqysctYkts53SXhUHMENDSg9h8pAolNa8qULCKgdzsSbZVG9X4FsskdVSc7Mj /n7tSOvPbqQk/r3ZrK/yzo9siqtqEtB42ZYAJDmJ0eb76QhvlDU+lu4DZpXSlU9WBL+X f9tQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="u/ed7DNC"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l1si508750edf.254.2021.05.12.12.03.11; Wed, 12 May 2021 12:03:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="u/ed7DNC"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1359816AbhELSyC (ORCPT + 99 others); Wed, 12 May 2021 14:54:02 -0400 Received: from mail.kernel.org ([198.145.29.99]:36542 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244007AbhELQmX (ORCPT ); Wed, 12 May 2021 12:42:23 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 89B3B61C61; Wed, 12 May 2021 16:09:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620835759; bh=PppjAvt2kgl8gqajCHltu/Xueb8WYqP8cCfLevIWR8Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=u/ed7DNCsFJoNPZrzu+DHQHNOLzLGC0diMSuONSP8CsMRGxdf5nv9r5+WyN9BM6pf irN25p35TCVghOTwy5W6Ujd7EEu7HOgl5QiRLSqeEDj5W+Xw3oTQhNE1XN0dyv8ZUZ U+bDWL27aI1eKUf1hP8SozDSKvAQ7vGCGocHkOy8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Christophe Leroy , Nicholas Piggin , Michael Ellerman , Sasha Levin Subject: [PATCH 5.12 473/677] powerpc/64s: Fix hash fault to use TRAP accessor Date: Wed, 12 May 2021 16:48:39 +0200 Message-Id: <20210512144853.071953456@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210512144837.204217980@linuxfoundation.org> References: <20210512144837.204217980@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nicholas Piggin [ Upstream commit 1479e3d3b7559133b0a107772b5841e9c2cad450 ] Hash faults use the trap vector to decide whether this is an instruction or data fault. This should use the TRAP accessor rather than open access regs->trap. This won't cause a problem at the moment because 64s only uses trap flags for system call interrupts (the norestart flag), but that could change if any other trap flags get used in future. Fixes: a4922f5442e7e ("powerpc/64s: move the hash fault handling logic to C") Suggested-by: Christophe Leroy Signed-off-by: Nicholas Piggin Signed-off-by: Michael Ellerman Link: https://lore.kernel.org/r/20210316105205.407767-1-npiggin@gmail.com Signed-off-by: Sasha Levin --- arch/powerpc/mm/book3s64/hash_utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/powerpc/mm/book3s64/hash_utils.c b/arch/powerpc/mm/book3s64/hash_utils.c index 581b20a2feaf..7719995323c3 100644 --- a/arch/powerpc/mm/book3s64/hash_utils.c +++ b/arch/powerpc/mm/book3s64/hash_utils.c @@ -1545,10 +1545,10 @@ DEFINE_INTERRUPT_HANDLER_RET(__do_hash_fault) if (user_mode(regs) || (region_id == USER_REGION_ID)) access &= ~_PAGE_PRIVILEGED; - if (regs->trap == 0x400) + if (TRAP(regs) == 0x400) access |= _PAGE_EXEC; - err = hash_page_mm(mm, ea, access, regs->trap, flags); + err = hash_page_mm(mm, ea, access, TRAP(regs), flags); if (unlikely(err < 0)) { // failed to instert a hash PTE due to an hypervisor error if (user_mode(regs)) { -- 2.30.2