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 24EACC001DF for ; Tue, 1 Aug 2023 13:36:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 330EF94001B; Tue, 1 Aug 2023 09:36:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2E264940010; Tue, 1 Aug 2023 09:36:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1D00A94001B; Tue, 1 Aug 2023 09:36:57 -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 0A6D3940010 for ; Tue, 1 Aug 2023 09:36:57 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7329480C9E for ; Tue, 1 Aug 2023 13:36:56 +0000 (UTC) X-FDA: 81075636432.03.970A05B Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by imf27.hostedemail.com (Postfix) with ESMTP id 3313540008 for ; Tue, 1 Aug 2023 13:36:52 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf27.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.187 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=1690897014; 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=vJl6nMWxkNJP69VZD7SdTLS1R0DcOKbpXJ4IG0enCDg=; b=2ehfFlOgPLY2qGUFB6V2AnFQQR72hqKUNwBvg1z8zEVZ1Y/zjtCm9z541FdqNOIXAdkzJi Td9Hd3wzxJPD2QzFbhE8P53vHY0sF2rMNyv6NrB0inW6wHwD6pP9QvdpIu8zPsWXrzeYTF L080y1IAgnRii0ABdFNYueorCijUY68= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf27.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=wangkefeng.wang@huawei.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690897014; a=rsa-sha256; cv=none; b=mawZIYo/0rtflq5IazIUmNsJDk+EjN6HJPcKkTcyuPE0xmDXTfkqhRHQ4d8xN1xMxFGdHu BkBSq+7/asj1WdMcP2hb9SI7RFZyRL7ckFaC81hhOL6MJ6upI8FfFh3Mdn5y7Ob/zrfuWr 8aL5T2e5tsQxJFmk3dSaLwq453d5+ME= Received: from dggpemm100001.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4RFbhw2SLjzrS3m; Tue, 1 Aug 2023 21:35:44 +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; Tue, 1 Aug 2023 21:36:45 +0800 Message-ID: <7208b261-d764-2332-1c0b-ff0cda5469dc@huawei.com> Date: Tue, 1 Aug 2023 21:36:44 +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 v2 2/2] arm64: hugetlb: enable __HAVE_ARCH_FLUSH_HUGETLB_TLB_RANGE Content-Language: en-US From: Kefeng Wang To: Catalin Marinas CC: Andrew Morton , Will Deacon , Mike Kravetz , Muchun Song , Mina Almasry , , , , , , , , <21cnbao@gmail.com> References: <20230801023145.17026-1-wangkefeng.wang@huawei.com> <20230801023145.17026-3-wangkefeng.wang@huawei.com> <4b5a3cfb-e13d-4df4-c08a-fb176cc2cbf6@huawei.com> In-Reply-To: <4b5a3cfb-e13d-4df4-c08a-fb176cc2cbf6@huawei.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.174.177.243] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To dggpemm100001.china.huawei.com (7.185.36.93) X-CFilter-Loop: Reflected X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 3313540008 X-Stat-Signature: hp4tfzn1qj536953e6xfkcp3hygccnmj X-Rspam-User: X-HE-Tag: 1690897012-455499 X-HE-Meta: U2FsdGVkX19stcVnAzW4H2R2pj/5b6o6rIn4ybGcY/ZyLtKgIOiRz4G3xcLUnhXK/R/0gC7c94XqYO+mQck91Aghsk+72NYyycYZ3JJKcgEURXvsN25PDWyFhmax3NLSYu+0BTZmtJ/p7K57WT697WUgWJGvewGxu8F7uy9cuEOI76f1VM0uPzg9kfoYEV31/jih7/X2LLRsgYszniFL9x1bH0BeRSQCCKvwGiaYDz8cdaatJgbmZyzCimbw/pUrIymQYAW6TwnaUXlMudVLQul+fsDNxDW/a5ujh0+iUHiWVeRWJICJXHo/m9V6vstXI+B0uyecgnQmZThFtOuUwIRWYVZb8eWn5wxdAPfQ63UYS8ndQAs5MLEO4h1NawdI3ebFR8uxlTn9yiJzwgzXGOavFOG7Kk4xhMrwiFngr6pIz9hZi+kyUGgGCKIOTZilekCCmWiakI27xgAqI2Q3XoKrkAI1Z52A3IuBzI0Zm0XZ1WN4q15zyTUzNgSoxo3LdGFCkBlNL+h07c+QsnkTX/n3W465CLg1bgiC8Q6qPiOvM916BnOptX6e8mXLZX2rIMwkeCCTMmJ694Y4A7IS4Ip/7uZT5C6bk++7ei/bPHP/kcqFti4je0GJG6GRogBWzjzNsK7L7BuSbZIU4E8dzW0Wm6CEm4wAQbDFW4RiEmGMl+dELIO1K7PygczbFM9eSuci9+4L6KDPVXr+NKHX7lEvp7dZ+GLUYI31hwk/WCqdCy/7Dh3OnoGPKf8eLhGxkqiWJxuF2R8KwjcsmOTDpiuqH510SW9BSFt2Sia4CN7UboqxZIRsA88Ixb5rAaxeffKG2QJzrkbvTbX4xgiezGTU8oUGD0W1TGi7DcL9jcKSbCUjxVmBse2wSvpvpD47yq3syqfhxiiqqXgxdxejwaCG187a2rQ5oxwK4UyK7A/R4ygJhZ6oIpY4C0xCJUgk/ieQxhaSdMub32MNqUM cCeSOXVC Aau7CK6TGQ0xa71HODo1aJWlkYIczHwc53OAR4SSOiEmH31ake5KIC7GNniwJxvxsMAgUx13vYkNAykx3SzarhjA9INqfDES/OSsY4LxUMNFIWGSlSu4p2VDrScN/SIshlAK0d0xC9GOPnHEdogKO/5ecaCuq8sj/m5L6QEKg5SfB2j8LXPXSKHaunQ== 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/8/1 19:22, Kefeng Wang wrote: > > > On 2023/8/1 19:09, Catalin Marinas wrote: >> On Tue, Aug 01, 2023 at 10:31:45AM +0800, Kefeng Wang wrote: >>> +#define __HAVE_ARCH_FLUSH_HUGETLB_TLB_RANGE >>> +static inline void flush_hugetlb_tlb_range(struct vm_area_struct *vma, >>> +                       unsigned long start, >>> +                       unsigned long end) >>> +{ >>> +    unsigned long stride = huge_page_size(hstate_vma(vma)); >>> + >>> +    if (stride != PMD_SIZE && stride != PUD_SIZE) >>> +        stride = PAGE_SIZE; >>> +    __flush_tlb_range(vma, start, end, stride, false, 0); >> >> We could use some hints here for the tlb_level (2 for pmd, 1 for pud). >> Regarding the last_level argument to __flush_tlb_range(), I think it >> needs to stay false since this function is also called on the >> hugetlb_unshare_pmds() path where the pud is cleared and needs >> invalidating. >>  > That said, maybe you can rewrite it as a switch statement and call >> flush_pmd_tlb_range() or flush_pud_tlb_range() (just make sure these are >> defined when CONFIG_HUGETLBFS is enabled). I try the way your mentioned, it won't change much, will send v3, thanks.