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 100B8E77188 for ; Fri, 20 Dec 2024 14:16:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 64E826B008C; Fri, 20 Dec 2024 09:16:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5FC896B0092; Fri, 20 Dec 2024 09:16:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 49CAF6B0093; Fri, 20 Dec 2024 09:16:39 -0500 (EST) 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 2A0836B008C for ; Fri, 20 Dec 2024 09:16:39 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id B262CA0B2C for ; Fri, 20 Dec 2024 14:16:38 +0000 (UTC) X-FDA: 82915537320.05.62653BF Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by imf30.hostedemail.com (Postfix) with ESMTP id 9FF3980021 for ; Fri, 20 Dec 2024 14:15:29 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=EN9ITfOt; spf=pass (imf30.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.181 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=1734704181; 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=g7iBLKI/TaFFZvOKdERySTto1DEdoOqdcbn/lUOJJc0=; b=lPqABnlLknBaGb8cQKf85BtZMiLvLL4tUyK769M28Q5DZN89NSdL8W4iFWAqOHY/eWZlrD 4tszGpEKTtGbwKy/8oxML4A8M/737s7ZCIvDlyFOTIQYU3qghcundGhyNZ5KH5VJCPvBRg P78ImO3tf49fZ+MKVLQnGSQqyqMKwMo= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=EN9ITfOt; spf=pass (imf30.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com; dmarc=pass (policy=quarantine) header.from=bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734704181; a=rsa-sha256; cv=none; b=l4tlii/6LcAAPYGQP03RZHAtZWfEKAenelTvi99yNZrJV3ESqHbiOqfxvIsLEIkpd05hdw 5TdDX0Szxq+3xCd7vEfXwh4MBkGl9jRSDBJBvfBm98d6+uiDS00z81AuYQVEGhjq6sy6LL ZoUVDILozbh2H3hA0z8wIDT7t2HNJIg= Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2166360285dso18781555ad.1 for ; Fri, 20 Dec 2024 06:16:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1734704194; x=1735308994; 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=g7iBLKI/TaFFZvOKdERySTto1DEdoOqdcbn/lUOJJc0=; b=EN9ITfOtMQtMxqtw5LECpA5eyi1O/bf/UXn31Wdx1uVKsWinXBk8lia518UmKF+VwL YiHkCncTIHzsD/CUdP9OvNqhHqDr493fzWvPOIxXnLhJufQGr11KwDjYb9e4brZ3pZ4V yVfCcgJYAaz2aiiYKZkPOPsJWBa13u7PCfkaIfjXzL9ElwJ575SCvCIBZHtuTvov7SLT QooOjgWIAGNg7wjF/6tLNbu0uilsOZvpZV3H2my0O5+C16T3igx86ZGHIN0tyYePjHlA sR7IHLUZ581Q74Tm/xN9CGB/ubx1mIMItSW4GIvgonqWZ2ysbwQKmpL1bGawrl1IN0pW sz1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734704194; x=1735308994; 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=g7iBLKI/TaFFZvOKdERySTto1DEdoOqdcbn/lUOJJc0=; b=FK/UTcFi/byrWyP493uwbleD4nldN0QtFSqHCdJMlkvL27gY2u6qW52bDqorSJ1rx+ B4T/BiMWiF/Y3Yxx8ZqHpWRqEsok6GIwppJHVcDmvtcwHKuJ7fEIs0Xa1XNL7qq9VMdW OMjpcT5be7sX7vIT1GanA6gJ0HOZGgNNWQnK6BRrxKcS4J1nSy0UsTTuA/1J8irpWfRC ydHWbEmlmrpFFqAPDK4UJn+ZYjQa7Mo8Zl1bzKKiZRZ77kbHQStN3Y5lIK9ojxsidJCl FtXRti+F4yv2nwQjsnD8QCDPTz1DJFuvPfUXBvg3b/qU3Dw5y4LB9JeCMgnTaSTlAJgJ Ko+g== X-Forwarded-Encrypted: i=1; AJvYcCXf03beADEL/E5YZUZQJvPHXK0pYKXe6pPkozB+kUZa5M6NhVZlNZKlo6f5ut6EmR2xb2BvDtrpVw==@kvack.org X-Gm-Message-State: AOJu0YzoNaGtOeUWwPDACkkW6EiDJLCAZUNkTPLFPhCxOCHVVbcqFsfP kxxszN3wOrdtEHDiUkqW/m6U4RHOOCRUHrAeaIGr4ybmIFLFYoI/01j72LeFVv4= X-Gm-Gg: ASbGncv8K60xIYgmAqssJaLFwfKinBLFnw/ZoG9/l1TttpIusPhfu/BPT0qn3mJnLgC hvH1l8N5X74XluesMkc/JRtW+MloUGTSPW+LhB+AIfeRjRW1ATomwabeleZ5L3i8Rf/O1MdEBUb +VOxIcqMPdxhh7M5DYtyE+yJJWUg5ReJDMraiR09KtJgPhHT8Z0/xGzGl30AHz01W9R+dMBx8QI 5cKReGUsWEBOLJY95XKK8psyNOXiUWDK6wmrRbYxBrtarcJl3Upk07WgQY+0GXiDHsAXrWJfmZI huFDz0OOHQwEZ2aDz8cOfVn2xuNs7HAuNCYNEy40fLFquyb911rVWsI= X-Google-Smtp-Source: AGHT+IEEYygST4Gz03iGTM9RRiblbKn1x180pLztYOSIYhLMIpPKwcn4PYi8F34LVLcH4FrG3CDhdg== X-Received: by 2002:a17:902:d481:b0:216:770e:f46 with SMTP id d9443c01a7336-219e6f26692mr39017935ad.54.1734704193630; Fri, 20 Dec 2024 06:16:33 -0800 (PST) Received: from ?IPV6:2409:8a28:f44:3764:dc48:fb1b:dd06:cba7? ([2409:8a28:f44:3764:dc48:fb1b:dd06:cba7]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dc972734sm29423545ad.88.2024.12.20.06.16.24 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 20 Dec 2024 06:16:33 -0800 (PST) Message-ID: <33ce9b58-4787-49cd-a7f2-34272cb3ecf7@bytedance.com> Date: Fri, 20 Dec 2024 22:16:22 +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> <0daabd32-cba4-4345-baa8-e8c66bc899ff@bytedance.com> <2f65f93e-9d44-4acc-b63c-8f5a35f59699@arm.com> From: Qi Zheng In-Reply-To: <2f65f93e-9d44-4acc-b63c-8f5a35f59699@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9FF3980021 X-Stat-Signature: qrqrq87i9xrqykwweu54ftc4tn77rk1i X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1734704129-902886 X-HE-Meta: U2FsdGVkX1/9gjqq3FHP57FxhbjM3f2qdcFYP1pnGXnRM4ff0yrU8egNpUx+4JdyWuJ56k5c3P6VcMt5hzXQFbwGzMU8ToaBYHu4gFzU9ybUBiJfr8MRqo3fUPh+/MbMvkrR2dVLny3ypxZincZncOjUt2dMD9iB3vuzZHDGplgRL5/x7eO/pJawOEEGR71jdIU1B4+yotbImtrM2+dCC8yFABgwZBnEmHDk6/gevOu9udktXrSVhs9g2NfUQR4PbVqfLCQdvQkB/vDkQiDIzfI0Tz8TV76R3QT3ouNe0V0c+4K+Y8tO3FFqfw9kr/6WFI+L4SC0BcxlrqVfuFLdqGMgMpgET3O0ANDQm2n9rRFkeCzktEwrJrwjOps9DJ2FvMKt702ey4w7w+B/EoDnSxjluua0VaueAcVyPk8oOezbqVyfWW6FD+/QFwZZnoTQiIWsibG+/6IP3SdCDSkNGtonDWG1lqc0DQM7eC1GrGEd0hhFVIFOf3ZeBQXXTzDgZBO1nYvQsA/uz6ZAWtwzsvNBlr0GM3iMcRnaAeKZHg/dV5k8yKK3R5+p9HJAA3ucJFVrmIJ+SLHnHwzMsIQ2Lpg+qLuG4m05Gt/mYsht9XQslMB9t/tu3IDIDablCz1Zf7DhWE7uh1kr3eEV+aEXIhwU48FR+oocLCmgG//cBbIW95gRsgHkT58DJbR6CbfVX12VYLBC3AFRZZNOnd2AGPqESkmpwCd3pWE6+5Qa6GTfJA1O7s/+YxD/yNcL7CvF1su28WAHDeHJN0Wlk+vxC1KIjk+2Ahl8Dzs0Cyjg/ue1bT7tLYkzGtZUuow6rbTtGDfMzuR3qis5RFf/d18+YWGAXP+Qsw3TT2GOXc2DJ4onweh114sP+tr/B6PGH/bg/gAwOt2sLIoYLIOsBcQ1Oro/YfVMmI1lG+xmh3wlXPvqWw3060BkrmrwRBNGrxJ/yq44RW4ZdFUyacQrAKN 0ZwMwSxk UL8QjGwcrg2Xtey6wIugZi/QipZL60/di85sksAE1YLpp1hu0CjCVVmPG/F1BRFxlHfLIdDf20b4R5g8KdDSTnnmwHmpGddTrAtgilP1ljs0/2OUByWkL6bcjR8NlSfvA4rrAX9VxpPt70gs6hOaWSZ3V027iAM2QQfmVjCECoDG6LgzQnEpdMQ0J48sZkBpUdzROdfoFAuMuS95U5aaoh0/KXYSN44EbIdpblnL/o/ISf5Eu4V7mow77EscjVsBrqWTfV58UnTIe1NpuGPv+YvymmoTZz55g3sGQr78e6R4JuAnQyJTjpksDIFCW/yubDt+D/XmNXr2s8mmpUi4sp9OWa6tk3vrf7BL+v5DvXUAK8REldCA61J4Nbc4Ai6sLfbr5QxU+rAca7sIodbUSSkZoeuL0xORaKUlLckTK5s6ndvOXGiePF1/OqRZCT5WL1f6OCsqQeiiOMhp/u73RnOG1RumxsDefi5BP982Be7IQ0MqQY7Ba/NpJ6Q== X-Bogosity: Ham, tests=bogofilter, spamicity=0.009740, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2024/12/20 21:50, Kevin Brodsky wrote: > On 20/12/2024 12:46, Qi Zheng wrote: >> Hi Kevin, >> >> On 2024/12/20 18:49, Kevin Brodsky wrote: >>> [...] >>> >>> 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); >> } > > Correct. That's why the implementation of p4d_free() I introduce in > patch 6 checks mm_p4d_folded(), which is implemented as > !pgtable_l5_enabled() on those architectures (see last paragraph in > commit message). In fact it turns out Alexander suggested exactly this > approach [2]. OK, I see. > >> >> 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. > > I see, yours should be merged first then. The issue is that yours would > depend on some of the patches in mine, not the other way round. > > My suggestion would then be for you to take patch 5, 6 and 7 from my > series, as they match Alexander's suggestions (and patch 5 is I think a > useful simplification), and replace patch 2 in your series with those. I > would then rebase my series on top and adapt it accordingly. Does that > sound reasonable? Sounds good. But maybe just patch 5 and 6. Because I actually did the work of your patch 7 in my patch 2 and 4. So, is it okay to do something like the following? 1. I separate the ctor()/dtor() part from my patch 2, and then replace the rest with your patch 6. 2. take your patch 5 form your series If it's ok, I will post the v3 next Monday. ;) Thanks! > > - Kevin > > [2] > https://lore.kernel.org/all/Z2RKpdv7pL34MIEt@tuxmaker.boeblingen.de.ibm.com/ >