From patchwork Tue Oct 12 15:24:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Song X-Patchwork-Id: 12552897 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF321C433EF for ; Tue, 12 Oct 2021 15:24:56 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 157A460E0B for ; Tue, 12 Oct 2021 15:24:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 157A460E0B Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=aliyun.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 66B606B0071; Tue, 12 Oct 2021 11:24:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5CC776B0072; Tue, 12 Oct 2021 11:24:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 46D2A900002; Tue, 12 Oct 2021 11:24:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0072.hostedemail.com [216.40.44.72]) by kanga.kvack.org (Postfix) with ESMTP id 3223A6B0071 for ; Tue, 12 Oct 2021 11:24:55 -0400 (EDT) Received: from smtpin04.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id D674C8249980 for ; Tue, 12 Oct 2021 15:24:54 +0000 (UTC) X-FDA: 78688158108.04.5EAB707 Received: from out30-17.freemail.mail.aliyun.com (out30-17.freemail.mail.aliyun.com [115.124.30.17]) by imf11.hostedemail.com (Postfix) with ESMTP id E5CE0F0000AF for ; Tue, 12 Oct 2021 15:24:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aliyun.com; s=s1024; t=1634052291; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=UB8fNtjbxEl+NdBJ2ueCSrKbSxfV66ZqdlRdilDgG8s=; b=nwtAxx8uNih9CJvycf9PH+NDFKzohiQcHMCQsXOI20I9m7ZN9SavvTc0Ool3pPFfzOqSZ+si8YxfDc398F05ULSFKUQpkwuAOCooB2XHVlIPxBodRGzV4anlR7ZRHQhEgWOsHeZ4jaWD3VTwUlv9IJR+2omLLUrV4TH+1620jrI= X-Alimail-AntiSpam: AC=CONTINUE;BC=0.1803492|-1;CH=green;DM=|CONTINUE|false|;DS=CONTINUE|ham_system_inform|0.0350204-0.000135026-0.964845;FP=0|0|0|0|0|-1|-1|-1;HT=e01e04400;MF=fishland@aliyun.com;NM=1;PH=DS;RN=4;RT=4;SR=0;TI=SMTPD_---0Urb7mum_1634052285; Received: from localhost.localdomain(mailfrom:fishland@aliyun.com fp:SMTPD_---0Urb7mum_1634052285) by smtp.aliyun-inc.com(127.0.0.1); Tue, 12 Oct 2021 23:24:50 +0800 From: Liu Song To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, liu.song11@zte.com.cn Subject: [PATCH] mm/mprotect.c: avoid repeated assignment in do_mprotect_pkey() Date: Tue, 12 Oct 2021 23:24:44 +0800 Message-Id: <20211012152444.4127-1-fishland@aliyun.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: E5CE0F0000AF X-Stat-Signature: 7hhgqfmxxtgg7jaey59gm9nyda6aesyj Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=aliyun.com header.s=s1024 header.b=nwtAxx8u; dmarc=pass (policy=quarantine) header.from=aliyun.com; spf=pass (imf11.hostedemail.com: domain of fishland@aliyun.com designates 115.124.30.17 as permitted sender) smtp.mailfrom=fishland@aliyun.com X-HE-Tag: 1634052293-763520 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Liu Song After adjustment, the repeated assignment of "prev" is avoided, and the readability of the code is improved. Signed-off-by: Liu Song --- mm/mprotect.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mm/mprotect.c b/mm/mprotect.c index 883e2cc85cad..e552f5e0ccbd 100644 --- a/mm/mprotect.c +++ b/mm/mprotect.c @@ -563,7 +563,7 @@ static int do_mprotect_pkey(unsigned long start, size_t len, error = -ENOMEM; if (!vma) goto out; - prev = vma->vm_prev; + if (unlikely(grows & PROT_GROWSDOWN)) { if (vma->vm_start >= end) goto out; @@ -581,8 +581,11 @@ static int do_mprotect_pkey(unsigned long start, size_t len, goto out; } } + if (start > vma->vm_start) prev = vma; + else + prev = vma->vm_prev; for (nstart = start ; ; ) { unsigned long mask_off_old_flags;