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 704EEC001DC for ; Mon, 31 Jul 2023 11:20:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 029DB28002D; Mon, 31 Jul 2023 07:20:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EF466280023; Mon, 31 Jul 2023 07:20:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D958128002D; Mon, 31 Jul 2023 07:20:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id C2E13280023 for ; Mon, 31 Jul 2023 07:20:11 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 93F11B202F for ; Mon, 31 Jul 2023 11:20:11 +0000 (UTC) X-FDA: 81071663022.07.A5346D1 Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by imf26.hostedemail.com (Postfix) with ESMTP id 2831314000F for ; Mon, 31 Jul 2023 11:20:08 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf26.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.189 as permitted sender) smtp.mailfrom=wangkefeng.wang@huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690802409; 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; bh=9RwPhPMnjUGaYcIGrRy33VykmFjoh9lT6u94ZUPWoJk=; b=tqXCfKbIpIdCWNGhFMDTsGT2DVFh60peoH1uK6423EUaU/8AVWdFDZBivScNHj2LVH8hVs 0kA+5cx6CU4oQNhpX2Luf2lLQuMkbscSLyiDY9EgRoqVBhboIJWjXgJ/A+V/kovXoVzNp5 Hr0vqB1wxcpZwD7dUtoNX46tdsuhW5Y= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf26.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.189 as permitted sender) smtp.mailfrom=wangkefeng.wang@huawei.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690802409; a=rsa-sha256; cv=none; b=ANJN3iEkgC1ml6RponMX/O3XKSW+sPm1qGPDVzM2B96HMM66GQFJGu9lxbAs8ZokXSMU/9 dYMr8zs4HYsayX4uId27wqgV7vHKE5mtB05uss8PL82hYS62Z3j9rG+IJ3rtaMSg7wx8+l 0dztFK/DWOH9mCaDsMow4XCiH5MK2f8= Received: from dggpemm100001.china.huawei.com (unknown [172.30.72.57]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4RDwgl6lBszLnjT; Mon, 31 Jul 2023 19:17:23 +0800 (CST) Received: from [10.174.177.243] (10.174.177.243) by dggpemm100001.china.huawei.com (7.185.36.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 31 Jul 2023 19:20:03 +0800 Message-ID: <91863dc8-1f70-ba29-b36d-9261dd594574@huawei.com> Date: Mon, 31 Jul 2023 19:20:03 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: [PATCH 2/4] mm: mremap: use flush_pmd_tlb_range() in move_normal_pmd() Content-Language: en-US To: Catalin Marinas CC: Andrew Morton , Will Deacon , Mike Kravetz , Muchun Song , Mina Almasry , , , , , , , References: <20230731074829.79309-1-wangkefeng.wang@huawei.com> <20230731074829.79309-3-wangkefeng.wang@huawei.com> From: Kefeng Wang In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.174.177.243] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm100001.china.huawei.com (7.185.36.93) X-CFilter-Loop: Reflected X-Rspamd-Queue-Id: 2831314000F X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: 5p5eh5pyxcg7qpggqkm39mkgrbs8cag7 X-HE-Tag: 1690802408-442361 X-HE-Meta: U2FsdGVkX1+9h5S1g6zoOA8roKLq5onPOZYIjwgO2KeTrcvT8qU4wdPgijnlQ5VarhDhAGyZ0oouP195P7x5J171NLW/8hlr6JRYSkruVPB3eb5Vs/QSxAD8VKW3Il4KpZQjn5avj+72rgmTTKwQy17jnX+VDiGyF9k3ja7Dbv7B/GnZ0N568bngeiJrTYbjXPRzvbcRObJdL9WHRnXshB1W4H62EOIFF4oZqDc0fZEKlUd25rhL6A/99Fh0MOYvQVAB8IpDcSHrQbZBWRfkQiK5ssCJozVhS3rkgkpNcyqbSDsF6vvehJ6UCbUW86DOlsPsX33S5j51c8mk5AzPAxEMOXXLmpRPuPw+87xDZzAYm982rVehnBjAQCwLLnAquUYQUn2WMeXPHDjRq83fNeLANsSI1zPyxNHrt8d5YVEwrt0aWSYEc3t9J2a8dnz6IfCTZCxmAwZmCLlfMZUuEIlGSunc9T/Zi5/lcn7xAWfG4IEHXc1sPblv1G/hYVABE7BiuhUvfySm9A83CiYYbgS5KFBn4St/gIAKkvROkwjH4yjWPMcj/ePXkqQsA05SxNuVmGtf8YMb5tqAAhATaKM3XOASdUjdK4M4ig/dZU8rUyJ7RP+BbQMYmxeYbEbeyZjDmkLEM8yGhbpjU6j7oIqMv5pgPxdxEGvxIU4/dzj0QL2NL06sKifntKYd5AlgyF1yD9K+RaOo1OEYSksc+1CiUEH0/CzhVii1Ua3VsHf8768ELgT42xyDtLgiZPOE+ToWHlopeobshYFIGbpEgB63YLKb7umD2CpzNol6xDO0DCSgAF+lpaYPIStSB5BNlZnpHW3Jl3yNfclNw+sr7YAWbrqfRdBjQRCpXlZoktqqnmOQ3y5omAT8+iqTiEWpDp9ElgAczZ7WSwOLUuJvq1aFPAmjbEQLoL3upyiANNrAggqpBKuOG1yhd5nARM9RFgdJPTlVjK1XB6iFINU au9W6rNT XEwP/yZyw8yQu5sqOz5A+3cmdP5o3zDPDQ3tB6FATo3LKQD/dhcyW7vhF8mcXUxJrstAJc91HdtwWLCLfA3VG1+U2Tioa9OSDGxzfH5E1g0x0bb9uvweHA1VMlc905nGNvYxF6RlFcoZR1PDabd2kwJ5gaqrWqSFSI7ICpn5r5d5g5Q4lGis4qCkac4TAP3a1Sn8jDMV1f/0CK6s= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 2023/7/31 19:05, Catalin Marinas wrote: > On Mon, Jul 31, 2023 at 03:48:27PM +0800, Kefeng Wang wrote: >> Archs may need to do special things when flushing thp tlb, >> so use the more applicable flush_pud_tlb_range() instead of >> flush_tlb_range(). >> >> Fixes: 2c91bd4a4e2e ("mm: speed up mremap by 20x on large regions") >> Signed-off-by: Kefeng Wang >> --- >> mm/mremap.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/mm/mremap.c b/mm/mremap.c >> index 11e06e4ab33b..1883205fa22b 100644 >> --- a/mm/mremap.c >> +++ b/mm/mremap.c >> @@ -284,7 +284,7 @@ static bool move_normal_pmd(struct vm_area_struct *vma, unsigned long old_addr, >> VM_BUG_ON(!pmd_none(*new_pmd)); >> >> pmd_populate(mm, new_pmd, pmd_pgtable(pmd)); >> - flush_tlb_range(vma, old_addr, old_addr + PMD_SIZE); >> + flush_pmd_tlb_range(vma, old_addr, old_addr + PMD_SIZE); > > I don't think that's correct for arm64. The assumption in the > flush_p*d_tlb_range() was that they are called only for block mappings > at that p*d level (and we use FEAT_TTL on arm64 indicating that the leaf > level is level 2 for pmd, 1 for pud). IIUC move_normal_pmd() is only > called for table pmds which would have a leaf level of 3 (the pte). oops, yes, this is for NORMAL_PMD case, not HPAGE_PMD, please ignore patch 2/3. > > Same for the next patch doing the equivalent for the pud. >