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 43CFBEB64D7 for ; Fri, 23 Jun 2023 03:39:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7ECDC8D0002; Thu, 22 Jun 2023 23:39:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 79CA88D0001; Thu, 22 Jun 2023 23:39:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 666248D0002; Thu, 22 Jun 2023 23:39:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 570EA8D0001 for ; Thu, 22 Jun 2023 23:39:06 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id AD95E160C19 for ; Fri, 23 Jun 2023 03:39:05 +0000 (UTC) X-FDA: 80932606650.30.4A9165B Received: from mail-qv1-f43.google.com (mail-qv1-f43.google.com [209.85.219.43]) by imf16.hostedemail.com (Postfix) with ESMTP id DDB1318000A for ; Fri, 23 Jun 2023 03:39:03 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=obkzvxCG; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf16.hostedemail.com: domain of shy828301@gmail.com designates 209.85.219.43 as permitted sender) smtp.mailfrom=shy828301@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687491543; 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=nQCkd4lI+x6yZWQGbIGjk8nvglDFNi+aN+K8MOcwH6c=; b=gS/vHZFvEP1xPML08oNaGki+3dhZ4VGxXLpTuuAQnUtTG8Wl4xoXUcSjHkXNfGYU7MiGyI sCLDX0UZ/Y76PGDOb3SfoyWi4iugufzv7+vlR565qul75atS5rYIm75fj6vzXRsT5GDaNk ArlQXe4bUIcTIqSzjz+RpbGkqf++7X8= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=obkzvxCG; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf16.hostedemail.com: domain of shy828301@gmail.com designates 209.85.219.43 as permitted sender) smtp.mailfrom=shy828301@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687491543; a=rsa-sha256; cv=none; b=xGZGGigNLC4yAQsUrPcjF+RJqje/g02nRhrwqRfV7WUI7IPT+sZyuy+rYz3KMZxDn3UZLy 9fDqkWG4QeRl7pKYePHK2QSU52GBBJmqdl4fLLz4lc8f64lpeE3YOvItyBf1lkN6Fx9e6z OfJ9SEru2EMr9ASmgWxIC9+OxmsSDQQ= Received: by mail-qv1-f43.google.com with SMTP id 6a1803df08f44-62de3360ce8so2247406d6.3 for ; Thu, 22 Jun 2023 20:39:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687491543; x=1690083543; 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=nQCkd4lI+x6yZWQGbIGjk8nvglDFNi+aN+K8MOcwH6c=; b=obkzvxCGresnf5FRfVrvj4b/znqPUmGMMwKvIvfk8JFNu1deF5iG2IClXFSs/hqBes 0DchAnN9jcxuJK+1+ZKd23RORLAtCB1aaCRRAW/OhJcfqCqUQNLBzTBpbxJmpuWbKfjS GHJW8WsTLXwJYS5PMKJOMqwGF/WhlRObHMiD0r0si8DOzKdhQ3DRjzuP54tE28VCyLvh LV9mOcap4BQfgiSa4vCLx3tJr5yWQgnZ2UsTStLz9NxYkxX8IS7oFayaE3MrbO0dEpB/ K0gDAaORiA1jbA+zNdWb4SjSRPyF9Y1hEdIFkFam1bjGmw9MYsZEQu4LxQURWeFd5nOn uaSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687491543; x=1690083543; 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=nQCkd4lI+x6yZWQGbIGjk8nvglDFNi+aN+K8MOcwH6c=; b=S79FEkEbt7u0dWGmUvsf68fhhrpfy+6lG/8hjQeWzGkYCcNcNCn1kVP+bRcu67jWS9 kUvQDJtHff/1uullGDqyljY2ZoyUKkWd79E7JLIYsOnjnmw/ypyTtGfM8b4x3Swq60K+ JctP8R2jO88dihJjYu4khjadP2YTN+ZQyJDW1/K0flfaM0FBVjGJdJEAbznSiCNKGAOk v2O4Jsxk5BTzhBooXr+eQwIGQWnsVmf8JOgJu/6AQRCUvaehi644x//v3Nnmh+k9y1Tr GZeZ1uUm+2BGxpFGcTGMGwkL1RkZDi9f7XMuFQOGOmQw1hV2WPwYzpsZ2lM0ZzGM28G6 0wYg== X-Gm-Message-State: AC+VfDwtpbQFR1NQrU2CfT0dgHr4Hcn7e9I5O7Nd8bRJKz2MJRuZoKCe fjEKQhHvJ7dw6+4F5AQP+I95lJFnCJTlWeKEucQ= X-Google-Smtp-Source: ACHHUZ4TEnCYuyVXkOaJkrxqOvUh5TaEibt2frAQVMu4v4pRBqRYzpLpvZ5Z+pdQLYqT/hxYRfdn3rRiaTS4M+MnTIo= X-Received: by 2002:a05:6214:29c8:b0:62d:f35c:a477 with SMTP id gh8-20020a05621429c800b0062df35ca477mr28990227qvb.1.1687491542761; Thu, 22 Jun 2023 20:39:02 -0700 (PDT) MIME-Version: 1.0 References: <20230620144618.125703-1-ypodemsk@redhat.com> <20230620144618.125703-3-ypodemsk@redhat.com> <10050BB1-15A4-4E84-B900-B21500B2079B@gmail.com> In-Reply-To: <10050BB1-15A4-4E84-B900-B21500B2079B@gmail.com> From: Yang Shi Date: Thu, 22 Jun 2023 20:38:51 -0700 Message-ID: Subject: Re: [PATCH v2 2/2] mm/mmu_gather: send tlb_remove_table_smp_sync IPI only to MM CPUs To: Nadav Amit , Jann Horn Cc: Yair Podemsky , mtosatti@redhat.com, ppandit@redhat.com, David Hildenbrand , "Russell King (Oracle)" , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Heiko Carstens , gor@linux.ibm.com, agordeev@linux.ibm.com, Christian Borntraeger , svens@linux.ibm.com, "David S. Miller" , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Kees Cook , "Paul E. McKenney" , frederic@kernel.org, Will Deacon , Peter Zijlstra , ardb@kernel.org, samitolvanen@google.com, juerg.haefliger@canonical.com, Arnd Bergmann , rmk+kernel@armlinux.org.uk, geert+renesas@glider.be, linus.walleij@linaro.org, Andrew Morton , sebastian.reichel@collabora.com, Mike Rapoport , aneesh.kumar@linux.ibm.com, "the arch/x86 maintainers" , linux-arm-kernel@lists.infradead.org, linuxppc-dev , linux-s390 , sparclinux@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: DDB1318000A X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: t3n8x6afn3bt7p7uz99tfznq6pmhnh4r X-HE-Tag: 1687491543-10720 X-HE-Meta: U2FsdGVkX18B//2xUVjCa5/lzTt5dre0h4CyvwQh3x/qWz8CP+7X6FIGfOPNaIgSScYqitUlin0Hb5kQ3mfOqi5lrPzBtH3/rNF76ZsDaDLnr3z3tj1jOADOi958bjDXtfDu0ZEXD/9cjAXai+CQb7IC2o2MDLiizfNe8R6hnBayrFbSW8I2unCdI/vV6ynGhpQ7w2rZ8Ucm9AMQMZ9P6kl4R9JK6+k52Xbi+tHii83li75jD7ySGoya6TjEtPvPjK09J6Yd/+dUV0d/sVw6jOyUJ0FtlO8MJAgltTmb49jXqwo2b6RscaEcIuojyjKqjIXSK/TV5Lr5KVvX3Ctr7ybXRMImGcj1XvOYjjpxGxvr4rkImgnibnCoTdpM06W0HMg9GFPPFs0o6ODdOk3kRk1JsHudqzPlA5BHbY89MIVARHTWobA/LkV65kC+3wjEZ6v6V0hzkpAypDQG02vG4ldh3TkJsY1lqM9/onOhIyBCGgIXQ0wCJTOqvRq5hYIX0WGWo0Vdl24LCbsfJef61mlEgELV1YNWi75XD4IpnMHO4Ix0S+sI6ZEFvVfPfsgRAw7BfXoZOgeUL/RYWShdPBZeVqcooLiblFW1eGvnftPoLLq6qkWx0mG4NgDoO7dcl+SIbsP/UniUMilzNg3CM9z5XA46kuk8QY0GuRYJ07WM+P3sbPxnJm+2ht5vcob3zfO+uJ2GOpWDBVneovetBOvBlskg0b8w2p5iQGtQo3lgpbCdm1auv0HE5dLA1YiA5OvQ75Js3E6Ht0RXYttIG4MJ/hE1YmaUdrkwCvw0bn51jQEy5JKFsmRADNnzfeuzOW3RHAIcO4p8twVXhnLOcdPXsQGbDqdRjSdTIk3HcBGHjkDx6n79RBJmEp/YiLQkz+PL/ZW3cVbjIGLdHbji7pMT4rWYYkDByoY7ZOvtCfECTV7Y1Eswh+NVDqXHWMVIlqZ9YbXLp0OrOhRE75W gwycv8WC jmSojIkZ4eZwESVwMMhSiqtNyWuENAOfF1rF6fRb6MR3OCyJWwtXsefinTuFnDCyAUVwXMxz1f/Lm2J960+VX8CiAEOJ/VSMeVP30mFrPteQbB5N2XeBlvYr52oXpA+nOuOHG35o4QNo7uSiAqnXTNeDLE44mhuPHaWp1FXdhjaeImQ2odyTxmSGnRCWbwmOiGM3eW3HkF2IilS7lT4AvN/cqdNoCiNpKLUPzVzSE7DmfxxYTXMSApTtKDBJ3gN8Fu8OUWMZ0bypFoVJco+4mAyLeHdlQfY2yrWHg4lkgxxtE/BHj3n9qy31joknPMYBHnl3NzA3/KtJpJU0wGNaQZG47B5AhkrXIg68/wZzLAfBtlgquVaM+uBTLNzkCde/bTtpi3Ei+wdWKwwJv4S6aK/iZia+X84ziOT9xirz1mFQTIaLS0OIcsmvC2Ks+Qy0kwz98vqGP4znn2JWfDqTQ6BRlv/M1d4rPhQdpTHLJKzkUsvHNONoJOw+BrTps3+WUBkEEYU/XVa+lVeSLpb2CHfUH/g== 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 Wed, Jun 21, 2023 at 11:02=E2=80=AFAM Nadav Amit = wrote: > > > > > On Jun 20, 2023, at 7:46 AM, Yair Podemsky wrote: > > > > @@ -1525,7 +1525,7 @@ static void collapse_and_free_pmd(struct mm_struc= t *mm, struct vm_area_struct *v > > addr + HPAGE_PMD_SIZE); > > mmu_notifier_invalidate_range_start(&range); > > pmd =3D pmdp_collapse_flush(vma, addr, pmdp); > > - tlb_remove_table_sync_one(); > > + tlb_remove_table_sync_one(mm); > > Can=E2=80=99t pmdp_collapse_flush() have one additional argument =E2=80= =9Cfreed_tables=E2=80=9D > that it would propagate, for instance on x86 to flush_tlb_mm_range() ? > Then you would not need tlb_remove_table_sync_one() to issue an additiona= l > IPI, no? > > It just seems that you might still have 2 IPIs in many cases instead of > one, and unless I am missing something, I don=E2=80=99t see why. The tlb_remove_table_sync_one() is used to serialize against fast GUP for the architectures which don't broadcast TLB flush by IPI, for example, arm64, etc. It may incur one extra IPI for x86 and some others, but x86 virtualization needs this since the guest may not flush TLB by sending IPI IIUC. So if the one extra IPI is really a problem, we may be able to define an arch-specific function to deal with it, for example, a pv ops off the top of my head. But I'm not a virtualization expert, I'm not entirely sure whether it is the best way or not. But the complexity seems overkilling TBH since khugepaged is usually not called that often. > >