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 38658E7718B for ; Fri, 20 Dec 2024 11:46:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C23946B0088; Fri, 20 Dec 2024 06:46:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BD3EA6B008A; Fri, 20 Dec 2024 06:46:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A9AEE6B008C; Fri, 20 Dec 2024 06:46:19 -0500 (EST) 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 8C8626B0088 for ; Fri, 20 Dec 2024 06:46:19 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 440B1C091E for ; Fri, 20 Dec 2024 11:46:19 +0000 (UTC) X-FDA: 82915158186.30.1BF4C54 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by imf01.hostedemail.com (Postfix) with ESMTP id 7355840010 for ; Fri, 20 Dec 2024 11:45:50 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=WS0KE+ym; spf=pass (imf01.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1734695138; 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=mBRlMffFmN+hz5HGm/qsvwuPzuwmJovQ60y3/xe1EoY=; b=ztR2eRUUKtt8yvdTNT452MgItls1zQG6qYmHm8AFJa9UUFxcwB4G7jeagnhgeharp1orf8 gewDuhkM8ecri5ZRCNulX8MojNHHyfeqUzVOdxK/3cAidKTfNAWSCjtusovxq/DjLyPOwa QKz+jWTN041uwTRwvp+I8msPisC+EaQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734695138; a=rsa-sha256; cv=none; b=NKDOW3VQecxCtEvtRXIVzzyZ8SqhQIiuV3QiIWbsWAGd3KJmqy4WzoFd/tviJX91Dc1Mk3 NpirHFBnS9DdFGSSHCT4KT9Z6PaIuAgTanvvwdrWZaY6lFeKn+bzhmlW5kZS7MXXab/WBS LnlCsCPDl2vAy4vwrY/Zzwfo5MWONzc= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=WS0KE+ym; spf=pass (imf01.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-218c8aca5f1so20101985ad.0 for ; Fri, 20 Dec 2024 03:46:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1734695175; x=1735299975; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=mBRlMffFmN+hz5HGm/qsvwuPzuwmJovQ60y3/xe1EoY=; b=WS0KE+ym0eLEsg2vdQg9WvDpJzKsuJjDsG7+e3P6i7MegKgSlhPlzR+M8c7a3Q/LvI 4QbljhPi4cklUgvKbVKtCM/vCHeNY5oY92GDQB9qKaCAqE4s3IK7QVU9RIamnbKcL93t bOkeS56PMBvvgbbWjuXpDr0X0V42WvEVAerW30mij7dVxAyJSfbaZkXZSX3cL81/sjfh h8BUSE5JsOXMtJ1Y2Qjg4vhXxTrosKs7k15pRG5CNfFjHXfJpUF5SqfFkOlw3jercPSK r2m/nmm6qqYIdfMAvY8qLQrtgxRcxWHh8t2owGYfVTU7y8rF1mg5aDLU9O6NHOX0u1/c +bfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734695175; x=1735299975; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=mBRlMffFmN+hz5HGm/qsvwuPzuwmJovQ60y3/xe1EoY=; b=tmQQ70lbm4DSKvqh3nfhcLv50IiGBlRBSmS7DfAkwjDdGs6J/4nui7j4CmVEcxS4rw Cm1NxlLGTO9mvAehDYFZAAP0TUw8PDzGIr7Izmr0zV5sBPznDkPNBHHueUgQgMw02e3D 94ZrOZX4FSKFi6olRYABYVABoocTKTYeNrueZswPoyD+qGOyPXvPHESQS0EYiyErmBof 16gzdAgUY1mvL0wUjDhzLq+9aPdqUP0hZ3WN9Psle+xTx1V7M3oeVgUxhR8WO0QOMtSV ll2/7cygedNN49mYc1GaJsMskNP/EBsoBVhaC8XgQ4EcDqdZB7UEotLealcNliNkpI+T PynQ== X-Forwarded-Encrypted: i=1; AJvYcCVJLeGvaMG5kzai8oNK0ffjcZEjfbB3JuN5JuhK14paPE1W96Sesp5i5UOMozIyNY2HCfdTCC1T2Q==@kvack.org X-Gm-Message-State: AOJu0YyCZ2nj5bpwgtx0gAwLcuARo/mlwCIP0rDW46VSp33BIC2XPISq mu2yefuozQDh7jwoHgiDBmPSYvj2LrjWJ1SYgP86mbfjOWkxrQ3DYMPGoA76bMc= X-Gm-Gg: ASbGnct3tyyfs/rmG6Yt8tOvyaFV96zVvJLlKdNiyzsX6zj8dZ4Q7TSd2nIUg7+P2dc OTU5M0q3FUtUa43OplsL+6N+HJdSKX2Kg8zjVcmYDE27UoAvJVpHuB8PAtBL+2hqGAV1o0xoCcr 2gzdoNqhSNxVB02CaQevdLiW0VEad8ofaIpjvyNlmB2hMLcKfELDS0M4dRSNEUlukqu8WXlE0VE Wf0zLJwyoG+REtQWLdDrU+la0D45nfFuLx9txLmD367Buo6dikvm9hadP4QqSv66oHNbn6xFAT3 0iwx/YAKuyfZaS5UNnZqEwC0whbaUlTAnOgiL38DydOSHmCm5QSf+Pg= X-Google-Smtp-Source: AGHT+IG40UPaAgLiyyOp9k8XqW2vPy2P2eyTWxZSuqMQTAARXLtkQgcz7lH63J8oRPI229SK+RLglg== X-Received: by 2002:a17:902:ce92:b0:216:4169:f9d7 with SMTP id d9443c01a7336-219e6e8bc7cmr41107195ad.2.1734695174995; Fri, 20 Dec 2024 03:46:14 -0800 (PST) Received: from ?IPV6:2409:8a28:f44:3764:680a:144b:d927:5a3b? ([2409:8a28:f44:3764:680a:144b:d927:5a3b]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f2db9939b5sm5267286a91.1.2024.12.20.03.46.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 20 Dec 2024 03:46:14 -0800 (PST) Message-ID: <0daabd32-cba4-4345-baa8-e8c66bc899ff@bytedance.com> Date: Fri, 20 Dec 2024 19:46:04 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 01/10] mm: Move common parts of pagetable_*_[cd]tor to helpers Content-Language: en-US To: Kevin Brodsky Cc: Peter Zijlstra , linux-mm@kvack.org, Andrew Morton , Catalin Marinas , Dave Hansen , Linus Walleij , Andy Lutomirski , "Mike Rapoport (IBM)" , Ryan Roberts , Thomas Gleixner , Will Deacon , Matthew Wilcox , linux-alpha@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, linux-kernel@vger.kernel.org, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-snps-arc@lists.infradead.org, linux-um@lists.infradead.org, loongarch@lists.linux.dev, x86@kernel.org, Alexander Gordeev References: <20241219164425.2277022-1-kevin.brodsky@arm.com> <20241219164425.2277022-2-kevin.brodsky@arm.com> <20241219171920.GB26279@noisy.programming.kicks-ass.net> <75cb4ff8-eb0c-4519-a30a-f8be717ba278@arm.com> From: Qi Zheng In-Reply-To: <75cb4ff8-eb0c-4519-a30a-f8be717ba278@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 7355840010 X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: zdjjyjzhkix8fcfzqcq9dxotz88teorq X-HE-Tag: 1734695150-343296 X-HE-Meta: U2FsdGVkX18lznw4ibN7W0HPAn3AkEo0kLyYYH285qfx4fsanr3JR/2a4SMLPE8Zok6qnPK7u9UkpjpRPcQl40ynXpXwLJ43jLObvpa8PoiYCm8gZF/qEkqM/8CpCiqnfK9QYxVkMGc2TjA8S2YJQZ5qPNQgXQXhjH5h5jsdzO/C4sKOLpd7KNOBIcqMo0uMnqx86+GMbBuYriN2xOrK0CdeoT1g0IQ4c7eCaIXzpP72Mawph0JSrJzz5ykCrOztUFec10bg+yYjtlSwor/Xq5Jxvt8usW3PeO8clfOSwmHVBnwZqzImmg/vic7pEawohItVl26QlMkcUsEIDrjlke4N+nEjhk7gWdU1pAzXua0PM2u/dKBmXMAuidqjz4ZDOUwW/utIPlJJbBoC4Jbi1qj5sjr3n6pH+WxrmcrK7K8phgaDTrnIM+4prNn6514WAtBza4jD2PYV4NZxfOIGPgJ35Yiwc7OUwaX7uFV2wZfm9IRWukRb9qcfwlz65RLy4d7p3wgqW+toR0rpD6hCe6VjVTOg0IIFLkFJfsd1nRH7lWQKh9Hwb6OcKGWvwnVyqWoYMP4yW6jcNdfGEIQCoyt40T1pXu949PuYpPeuietxWhPqTqyT+Ltkwu0Gf5XymtATKSLaQRo4NFw9wePrOjmovoR7GI8wY9dj+TnwasKvO3JQsPMFbAOeY63EX8ji9FqwGzYx/ziVq4mF6XuclDBslUWpI4OXUIe03DKIw1KlhPtMdhnvEgaYLUlx6n7pC5bLyg81JnMdFX+xZGEMbMuJb72n4jrLUx+iNArdyzhKVT5kh0UX8AdXt7EkU22bW/ZWAYRaMeuNc9tHM4p/nY4CTtEyOgy0B1pyRmz7cblJiGw34PNc48JzTiPwxLnruvEAolTEwERXHEJbGB8EnrKwMhxVTE1QpmPfAI0BjRRx3BN5S7o/v171zOwIE1zIrtXa2pvcMk4X7Oa96Ad FdJuh8mi HOIavO0Qk9XTZaJ7obQhytHdWmIh5iVgfuN+Y6sskuMb8gp1PptS/S+1KdYDTWZZ3R/5m2gCP3xBGHUw5VepfG8j05Ah77NVFABiQykR4slMiiBD5HM9ifoqoUPWWH2BWIoPUXx5gKDVFWFfyaKeFOP6zIDeCMPqC9JeT83tIun1Kz8yXUWOHm6Wq6uG9zYVElE2XQJ1l9gZhsH4rs5tf5T/UxYEIF72qYDBtdVFqHA/1xupYZu83z4Z27Ga4iy1+gPEkem2M815zltlUOCl3U26OTilGSlQqEOMHa9RljXiWBQd3PBbIg6Y3OQAu62AC0aVzTNy+YGTKDgLO5pNzxE0sb8shWxRUlPFBBj2LjctRZ81w+W6X3jZ7KJuJ66Allwe88CRV3O9nI6yVW5eLD7/bq7jNiTv/3JmEQWfi/FR/1M3waNDfnb/pAtuW7NLIULTOh3EaKisiSpByC/z2+YO6GQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000165, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi Kevin, On 2024/12/20 18:49, Kevin Brodsky wrote: > Hi Peter, Qi, > > On 19/12/2024 18:19, Peter Zijlstra wrote: >> On Thu, Dec 19, 2024 at 04:44:16PM +0000, Kevin Brodsky wrote: >>> Besides the ptlock management at PTE/PMD level, all the >>> pagetable_*_[cd]tor have the same implementation. Introduce common >>> helpers for all levels to reduce the duplication. >> Uff, I forgot to Cc you on the discussion here, sorry!: >> >> https://lkml.kernel.org/r/cover.1734526570.git.zhengqi.arch@bytedance.com >> >> we now have two series doing more or less overlapping things :/ >> >> You can in fact trivially merge the all the implementations -- the >> apparent non-common bit (ptlock_free) is a no-op for all those other >> levels because they'll be having ptdesc->lock == NULL. > > Ah that is good to know, thanks for letting me know about that and Qi's > series! Fortunately there isn't that much overlap between our series - I > think we can easily sort this out. > > Qi, shall we collaborate to make our series complementary? I believe my > series covers patch 2 and 4 of your series, but it goes further by > covering all levels and all architectures, and patches introducing > ctor/dtor are already split as Alexander suggested on your series. So my > suggestion would be: > > * Remove patch 1 in my series - I'd just introduce > pagetable_{p4d,pgd}_[cd]tor with the same implementation as > pagetable_pud_[cd]tor. > * Remove patch 2 and 4 from your series and rebase it on mine. I quickly went through your patch series. It looks like my patch 2 and your patch 6 are duplicated, so you want me to remove my patch 2. But I think you may not be able to simple let arm64, riscv and x86 to use generic p4d_{alloc_one,free}(). Because even if CONFIG_PGTABLE_LEVELS > 4, the pgtable_l5_enabled() may not be true. For example, in arm64: #if CONFIG_PGTABLE_LEVELS > 4 static __always_inline bool pgtable_l5_enabled(void) { if (!alternative_has_cap_likely(ARM64_ALWAYS_BOOT)) return vabits_actual == VA_BITS; return alternative_has_cap_unlikely(ARM64_HAS_VA52); } Did I miss something? My patch series is not only for cleanup, but also for fixes of UAF issue [1], so is it possible to rebase your patch series onto mine? I can post v3 ASAP. [1]. https://lore.kernel.org/all/67548279.050a0220.a30f1.015b.GAE@google.com/ Thanks! > > Let me know if that makes sense, if so I'll post a v2. > > Cheers, > - Kevin