Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp10596595pxu; Wed, 30 Dec 2020 06:42:37 -0800 (PST) X-Google-Smtp-Source: ABdhPJzt4cvfFbE2hQF7LME4bUVlFNcKZaamx9kQJFKokIhb7k7tztnUfXD/pBuf/mJnPF/JQAlj X-Received: by 2002:a05:6402:1c90:: with SMTP id cy16mr51453177edb.73.1609339357113; Wed, 30 Dec 2020 06:42:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1609339357; cv=none; d=google.com; s=arc-20160816; b=mq4aBZs2U4032DEOd+hi2T81vgymfwEfLyHC87WUrK8Wnbq0uQnPa6S6uJy0P1sBMM 32y8CLBdqS7gZ1B7Oftujw3JaDMCM9LDOGZPYs1BGB+cmbNOiHThBs4h8rMFKYPPKi4j yVSYSq/qhGVlIzzFYGWqKWCcnf/qdRYwoN2gJkncSVZqref+Zjv+NDtDFpj2kuiiQAA2 Z5UFSVH/6k6yNY/Uf26q+OhNhrzI7q51XEEkB7eI1JIf2ER4wh2Ud1qciRi7Bc23Qj26 Jq5xBUAXXSRGzYGmf+iIXf6QC/qWk38ZBhp3odsJnLxONiVxBZ+AL0X6qK+kxCi9/KJC 6BgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from :dkim-signature; bh=82MaCelC6b/RMYS9UDSEP7Fr8xYODQV11H1lFE8xiyg=; b=JhpVcn5U8/xKwz152aZB098IfPR9JtoRyJf9w9z5Qt5/jOj55TozdlRcnYnONYvmD8 SUfNwAy4p74q1r6DE4g5g4BZCyqUvx58GFIfXiu0+7tz+pDIED6FxPOtUbEJnWon3Eeg aGlYinuRtwjKRKJ/sfZ6HAIJhNCVu6zvK0InGusv4jjvylIwXwhBALHIKCejiekLEGaN Rkj9svJWjTlUN4D0vCr70dXRL0VUJ1AODiUWpx/WhFiDqU5Y309sX1v5MC14TUEEX3qJ kzZ4+FPq4fDZREIseMN70X+6JWs8ADAoULVPBH2CLiYmQ0S/Z7qivvo3zSkDIVTTbgre mbaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=MjzBvm0a; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l8si19865227edt.265.2020.12.30.06.42.14; Wed, 30 Dec 2020 06:42:37 -0800 (PST) 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=@kernel.org header.s=k20201202 header.b=MjzBvm0a; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726579AbgL3Ok5 (ORCPT + 99 others); Wed, 30 Dec 2020 09:40:57 -0500 Received: from mail.kernel.org ([198.145.29.99]:38338 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726333AbgL3Ok5 (ORCPT ); Wed, 30 Dec 2020 09:40:57 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id D7C3B2220B; Wed, 30 Dec 2020 14:40:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1609339216; bh=e0+df3C86TgDkLKPUHT/YZ/mJxTl5DbhpY6cE04RF04=; h=From:To:Cc:Subject:Date:From; b=MjzBvm0aDu1O3mQ7/rE4v7q9zm6Cdcten+cJx8w8Me0821ofQItlRD1X8N7UTla+j 2lbLJg5h2Pc2ff9ssg6PmQkUzGRbqzlSfLxT/rpCrtaiJ3ivDFDTIrmd76fjxXAWjA s4UdM116Lmdl2nPnOWpoy2vYbw5nHj8vvqVrfGmuSwafGojy0rpA+5O8ZqPfSx8WXf uk3+boqvlabVdDgb4YprdsJ8ylq/CYUpSF+cHMSt8WAq1qXH2bdC2/SNfiRwJoW6q2 GXg6RKlzSD3tZ0Q8E3i464fNwQBHxXdLomGQz1EYiGmfJCjLp77s9e+PTzENC6UC6r xLN78Svzb15kg== From: guoren@kernel.org To: palmerdabbelt@google.com, paul.walmsley@sifive.com, anup@brainfault.org, atish.patra@wdc.com Cc: linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, linux-csky@vger.kernel.org, guoren@kernel.org, Guo Ren , Mark Rutland , Pekka Enberg , Palmer Dabbelt Subject: [PATCH] riscv: mm: abort uaccess retries upon fatal signal Date: Wed, 30 Dec 2020 14:39:16 +0000 Message-Id: <1609339156-61806-1-git-send-email-guoren@kernel.org> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Guo Ren Pick up the patch from the 'Link' made by Mark Rutland. Keep the same with x86, arm, arm64, arc, sh, power. Link: https://lore.kernel.org/linux-arm-kernel/1499782763-31418-1-git-send-email-mark.rutland@arm.com/ Signed-off-by: Guo Ren Cc: Mark Rutland Cc: Pekka Enberg Cc: Palmer Dabbelt --- arch/riscv/mm/fault.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/riscv/mm/fault.c b/arch/riscv/mm/fault.c index 3c8b9e4..7f5f45b 100644 --- a/arch/riscv/mm/fault.c +++ b/arch/riscv/mm/fault.c @@ -280,8 +280,11 @@ asmlinkage void do_page_fault(struct pt_regs *regs) * signal first. We do not need to release the mmap_lock because it * would already be released in __lock_page_or_retry in mm/filemap.c. */ - if (fault_signal_pending(fault, regs)) + if (fault_signal_pending(fault, regs)) { + if (!user_mode(regs)) + no_context(regs, addr); return; + } if (unlikely((fault & VM_FAULT_RETRY) && (flags & FAULT_FLAG_ALLOW_RETRY))) { flags |= FAULT_FLAG_TRIED; -- 2.7.4