From mboxrd@z Thu Jan 1 00:00:00 1970 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5E52BC4345F for ; Mon, 29 Apr 2024 11:31:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C60156B0087; Mon, 29 Apr 2024 07:31:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BE9496B008A; Mon, 29 Apr 2024 07:31:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A89EC6B0092; Mon, 29 Apr 2024 07:31:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 8B0546B0087 for ; Mon, 29 Apr 2024 07:31:21 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 1C253A13B5 for ; Mon, 29 Apr 2024 11:31:21 +0000 (UTC) X-FDA: 82062353562.09.78B6911 Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) by imf29.hostedemail.com (Postfix) with ESMTP id 38F67120027 for ; Mon, 29 Apr 2024 11:28:50 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="h9r+/2U6"; spf=pass (imf29.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.53 as permitted sender) smtp.mailfrom=ioworker0@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1714390134; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=5KI8jwSeT1iJj/UBYCVNCpYpjMdWJYZrUv0ljjTWL48=; b=v4yffLX9bGhwNtb2n6exjH+mYsJybehhX7PgmEk5xiDFN4uxgZpELKKJQ12uMnQmJKiqsc wI6FwA03NRnxrqSWoZtr101rM+CJFro4DNNtxNmRaUIRWQkTKcajiciDB2llqTQNjMIv+s b3s0pnvE90g11vRbNbRJzakEbpMLNjE= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="h9r+/2U6"; spf=pass (imf29.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.53 as permitted sender) smtp.mailfrom=ioworker0@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1714390134; a=rsa-sha256; cv=none; b=jwp5qhCxryYuR+hBDkwmHKsWtHlUlE/gENp5FsGxDOuNk8vO1COVhF2+S1M1DM0r2x6a3D A5pxSjCwKWj5BSExLjJHIVPjn2HYSdHrejm9uhRspUprC8nuzePOB5HsLoXbqfehfj6Fk+ xv4lVTlZTZULUT8RtpUeh77Y4rrYnkw= Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-572229f196cso4384713a12.2 for ; Mon, 29 Apr 2024 04:28:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714389824; x=1714994624; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=5KI8jwSeT1iJj/UBYCVNCpYpjMdWJYZrUv0ljjTWL48=; b=h9r+/2U6tR3XiG+r/NjTVElaubXcB0XTYw1gThc+Sa9zsV2i76ZxrBMcSjawsL6Xxt 1K/4/ZyjNOfEeyEV76SvzYuXpQ2iif+4PXd3AcSoglIKeD7yP5r7q1wSKQSsLyEmk2G7 mIIhHj9nEA0pHFpgCJwDzwbHjThXf6vSA7yptqvuC6dczevsWtqfrNEDtntYUBk0aukj wUQp6KmYbpqnbwBo07nlPhgNELdin0mucvbHKXa2PSO6gxnJU4ATktNsVNTvQ4U+Fhwx BJHObrFaRAxS3BX8Fj/Jo/ltcsOuwbain3Dax8FcSGDxhsz79JBEaYhGi1kdknbnBAIZ 9Edw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714389824; x=1714994624; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5KI8jwSeT1iJj/UBYCVNCpYpjMdWJYZrUv0ljjTWL48=; b=cnoOBWcSlwLheEbHE3hUUrmMJ33sYC/drKRYNaQbicReag6AR6FGUK47jqxNKyMkL6 GdMNp52YdBlfjdy8ZdejyXWS2gQaFauRudTbIGqqDcw3pqCkh1mDk/qlUW/UMqI/ushC qrF+h+g+G+7MX9X3+v1BnyqzzHvLADtHSKpyqrsQybYxG0toiSY0iWoNyhssy+6W9Ejg FtXgBJXwm7YYZN8SWtHgL182aS28C7pek35i0ddlGn6PHFiR9PduLvNfwfEi5zfe1yTq mrZiptFGo5iPd0auZkqcXAVDKwSmFE8wf1OhXkTs7I+4B7Ka+wo/yTawtmzzLl1LL2gK oVNQ== X-Forwarded-Encrypted: i=1; AJvYcCX+mMETcsnXmSRO2bvrYqpAUixuccObqAl01KxdhQ72xELywmNpkd2j3K2l+ortCBzl8RIeXYgluKbJtsSUB74fswE= X-Gm-Message-State: AOJu0YzY7vswu68ItkDkxc4sWu1b61yTIL/0PovponjLNk4f+9CIa0ne GaIkV+jSOKyR3jM0U9OZQDfqr0EaammYSNYlsTA7fFUX62QoaK4UCApAjR+euvbU7AmvHWcXfYI O2iu3mPRsX0xVJpK3TOTcG/Y8V9A= X-Google-Smtp-Source: AGHT+IG2L6VHSgjPSI/ILsTX8RnUhW7ZCUeTXF2zruE9lvX81lsZxzWjLYduBB8ybTFePpHpcWjpPPLOGxbnBtFwaHY= X-Received: by 2002:a50:8a89:0:b0:568:a30c:2db5 with SMTP id j9-20020a508a89000000b00568a30c2db5mr5612851edj.40.1714389824240; Mon, 29 Apr 2024 04:23:44 -0700 (PDT) MIME-Version: 1.0 References: <20240429103346.59115-1-libang.li@antgroup.com> <20240429103346.59115-6-libang.li@antgroup.com> In-Reply-To: <20240429103346.59115-6-libang.li@antgroup.com> From: Lance Yang Date: Mon, 29 Apr 2024 19:23:32 +0800 Message-ID: Subject: Re: [PATCH v1 5/5] mm: Add update_mmu_tlb_range() To: Bang Li Cc: akpm@linux-foundation.org, chenhuacai@kernel.org, tsbogend@alpha.franken.de, paul.walmsley@sifive.com, palmer@dabbelt.com, chris@zankel.net, jcmvbkbc@gmail.com, david@redhat.com, ryan.roberts@arm.com, libang.linux@gmail.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, loongarch@lists.linux.dev, linux-mips@vger.kernel.org, linux-riscv@lists.infradead.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: 38F67120027 X-Rspamd-Server: rspam06 X-Stat-Signature: gm1qyropehao876mdkjof9cdtzyinu7d X-HE-Tag: 1714390130-498820 X-HE-Meta: U2FsdGVkX19W7aPYQ0WbkHWfqccAsEugMwxqbXt++glTlUWA+HQfedk3yCcXfnLzatQ1bXczjrmoxNzCGEyM4XoOH3tvbT6yHmCON3jiHzkcYLt+UQUQi/6E70XUNTxNo8lPhaGN4I+xxKYsv2VUzp/0KtnlhqEZVsJcKqlfRyFosVdkFVVhQ/+mVO+CTGh7pcCtC2UcRF9WSwvVTIOqPe4rlKd5iRm94naXZo81T2mdk13VMSTpR91Yx3ML6ksyoXMVxpqTT3OsELF9v5PPtOJINaJaLOYn2N2EA0Rw58OBw5XvzLqlmp4GNvc3Bq1IJxIHJPpc33rjoiUXmzV3q91ANz2cDuxh2JwuhtMdvq7rrg/zEMTCqdR+idD7g1ofJrbmkja/whqYTMPeAgtAs/XJ/aqaA2Qcw3S51GWyqjzWb46ySBE3M6cBWiQ0/N5sFvpG77IgTtyDv+rforPMfpU7CwgOqyYKGRCHwR3bF4MXqmFLx+Td7ViodysRQlkFIAgl+34hwhEMUF1zkRIksNqibRz1U3uVOj/5fHFTqMbZ9iP6Ds2MTK3++tVg+0/lqrkVG103U7aIrC3sRHRqtX7U7ai5KpgfqV8Py3Zju1OPpUDbI3RRlumuS601oJvNT7DPdt4eU1CXu+U51bZNSQyXRw8yRnb9l88tALxQA9gMw0JicODo8MjiYnUDdQRogZWx7jdWFpkfoeiHglHJQtwmHuPrWvZ/y5yu3Cs34b8BQS94FjbPQiOMj4oIoCru8I34Vw5VvqV5ezij9IreaozTCpKQAfl6gBqNqqkTiDZMFW2OWHwHrnz3Nv9Axr0nCr7pYAMNv0rNyIw23M2eaKEPhgjESX62humvqWj6bp4iCHMQEpSR4yDPe28hg75Wjmrj33LDAbN7RJPFSCjvh3P386ll53hbjqRU617+YH2LFkbsiCBmDWkwJ4Mq3+XazdbWEQxMFSEEoy0a3tT Pi0VLoR6 pINeZs2+78Upd3kzeeju+yPrd3yLwkXVz/fZwZ8DK+ehnS6tryUFfkxPprjjgtXcFSTBpgjRrItU4snhk+mwc8Ta9PyjQxtjLaKb1JmI/uH7rfLFSK4SS5laxCa5Pz8mKTOPogvrUQb/W+2mBANJg5g1NPluJsX0YjoJSSRE3SdMWS2x18SuKOv9cGLh1FGVcNkW+9JMOC7Iz0n+8ZzFPntaW/ox4vOqlbQndSIUlpY4umx4Ppfcvoyv9pbaPh0W7f/F/Ah/8Dpaf+VJs+msP+hTAUlBV1l6DQNC1vAFhY4o0mnUXb0ryob59wx9n72I18O8EdmNxHoA9MgKtgmDyYtxxQLJUCAUlg/LzhiE7wWXJjNtrKfxh85ANg1TEFL5c7u5O1r2X+4DGN0+YlcbDw9FTPeqdG6/CFpqgmuNgUPxbqA4yQGfJgriLcfy9IPY3C1VOucc5Djn8ZlmVVfqROLyQbPANAHYElxDTZMPu6q+H/9jHGGF+NfKpZT84mTcgcfZHh6/4pLtCsnfJKaihhAKnSg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.001310, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hey Bang, On Mon, Apr 29, 2024 at 6:36=E2=80=AFPM Bang Li wr= ote: > > After the commit 19eaf44954df ("mm: thp: support allocation of anonymous > multi-size THP"), it may need to batch update tlb of an address range > through the update_mmu_tlb function. We can simplify this operation by > adding the update_mmu_tlb_range function, which may also reduce the > execution of some unnecessary code in some architectures. > > Signed-off-by: Bang Li > --- > include/linux/pgtable.h | 5 +++++ > mm/memory.c | 4 +--- > 2 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index 18019f037bae..73411dfebf7a 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -734,6 +734,11 @@ static inline void update_mmu_tlb(struct vm_area_str= uct *vma, > unsigned long address, pte_t *ptep) > { > } > + > +static inline void update_mmu_tlb_range(struct vm_area_struct *vma, > + unsigned long address, pte_t *ptep, unsig= ned int nr) > +{ > +} > #define __HAVE_ARCH_UPDATE_MMU_TLB > #endif IMO, it might be better to use a separate definition to determine whether update_mmu_tlb_range() is overridden by a specific architecture. Thanks, Lance > > diff --git a/mm/memory.c b/mm/memory.c > index 6647685fd3c4..1f0ca362b82a 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -4396,7 +4396,6 @@ static vm_fault_t do_anonymous_page(struct vm_fault= *vmf) > vm_fault_t ret =3D 0; > int nr_pages =3D 1; > pte_t entry; > - int i; > > /* File mapping without ->vm_ops ? */ > if (vma->vm_flags & VM_SHARED) > @@ -4465,8 +4464,7 @@ static vm_fault_t do_anonymous_page(struct vm_fault= *vmf) > update_mmu_tlb(vma, addr, vmf->pte); > goto release; > } else if (nr_pages > 1 && !pte_range_none(vmf->pte, nr_pages)) { > - for (i =3D 0; i < nr_pages; i++) > - update_mmu_tlb(vma, addr + PAGE_SIZE * i, vmf->pt= e + i); > + update_mmu_tlb_range(vma, addr, vmf->pte, nr_pages); > goto release; > } > > -- > 2.19.1.6.gb485710b >