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 5C532E77188 for ; Thu, 2 Jan 2025 16:54:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E4CE16B00D7; Thu, 2 Jan 2025 11:54:15 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DFC646B00D8; Thu, 2 Jan 2025 11:54:15 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CEC2B6B00D9; Thu, 2 Jan 2025 11:54:15 -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 B26226B00D7 for ; Thu, 2 Jan 2025 11:54:15 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 365E51C6093 for ; Thu, 2 Jan 2025 16:54:15 +0000 (UTC) X-FDA: 82963108158.22.81EE301 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf06.hostedemail.com (Postfix) with ESMTP id DBD99180005 for ; Thu, 2 Jan 2025 16:53:36 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf06.hostedemail.com: domain of kevin.brodsky@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=kevin.brodsky@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1735836814; 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=KVwKHyu8Gg+zMPltZA366Kn5pjCmCCo125yHAly9hf8=; b=Fl0661w10YnQf4mlT3x3NFeo7IAm/TFuSdG00rMEX8gVNZqimgeyDjYqYcCjWbMrDU2iim Rriei86cFYYSLQcrvvlIkWQS1wPa3z1cZhLiX+BfVCzsr98KuC9ogPHqY5EW6r3Hewf4wT pxf7ZLtvEsSPesHxnjKv4Owg1otUlyE= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf06.hostedemail.com: domain of kevin.brodsky@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=kevin.brodsky@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1735836814; a=rsa-sha256; cv=none; b=ff31Hz3CCXideiZkGXSjOGrCxceBOfNJbXNtPTnbvF/yvTBKahmOKOdY5J6CRcTOZydbrV 0AEglSXHurXqJAjtk+s5TB7BE/0ikAfZoMaYSwZ00VLZKb0ipCnKZpSwjeCEzOZT2/EmPA d4dx7r5nPE6p55GmjWH3rdcXpRkEtZ4= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AA569153B; Thu, 2 Jan 2025 08:54:39 -0800 (PST) Received: from [10.57.91.208] (unknown [10.57.91.208]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 23C923F673; Thu, 2 Jan 2025 08:54:02 -0800 (PST) Message-ID: <1b09335c-f0b6-4ccb-9800-5fb22f7e8083@arm.com> Date: Thu, 2 Jan 2025 17:53:58 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 10/15] riscv: pgtable: move pagetable_dtor() to __tlb_remove_table() To: Qi Zheng , peterz@infradead.org, agordeev@linux.ibm.com, palmer@dabbelt.com, tglx@linutronix.de, david@redhat.com, jannh@google.com, hughd@google.com, yuzhao@google.com, willy@infradead.org, muchun.song@linux.dev, vbabka@kernel.org, lorenzo.stoakes@oracle.com, akpm@linux-foundation.org, rientjes@google.com, vishal.moola@gmail.com, arnd@arndb.de, will@kernel.org, aneesh.kumar@kernel.org, npiggin@gmail.com, dave.hansen@linux.intel.com, rppt@kernel.org, ryan.roberts@arm.com Cc: linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org, linux-arch@vger.kernel.org, linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, linux-sh@vger.kernel.org, linux-um@lists.infradead.org References: <0e8f0b3835c15e99145e0006ac1020ae45a2b166.1735549103.git.zhengqi.arch@bytedance.com> Content-Language: en-GB From: Kevin Brodsky In-Reply-To: <0e8f0b3835c15e99145e0006ac1020ae45a2b166.1735549103.git.zhengqi.arch@bytedance.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: DBD99180005 X-Rspamd-Server: rspam12 X-Stat-Signature: qfek5mte3tt9d466dgn4xnna8yzcjgzb X-Rspam-User: X-HE-Tag: 1735836816-778772 X-HE-Meta: U2FsdGVkX1+ytSM7j/ANHj/Z/4q0NVavYGJXyhnMpeD2fSoRjdf53XI8vJuxC5ymdVKgAQMz03qwkeX6b+7d1PuFhMDL1pZqqzOrDN6V7JMy1nGwATxqGLOcG95gH0ygtU4w8fnBuubCKnsxcHg7jcmZwSNPqe7vLI3zSXdGIZnnWnI4BMq7O+j2a1Bvhg0bY3VAJbNywzlnd4GPADMPWYBbO97wNY+4NdGg1IGxtZURr27kCopx9SjiGPhuNalM+lUhYA4Ajkz8pYNY0tTp2iqr32+LcPfPXURINxGBuUj9+9J58DYvVvsqIwMjeUGrWQ9RGOXd6RfPA7zXQL+P9kcQWgvLhHODZIkEnq588RckrjVdSrM3HQ9qZCZPo3ZEPIjhOzonKSdTr2DUdOf2GDYlFc4sR+9+xCBxlpvGAQdrtD00FeJTV3xjqrFfpaOXhry7PgHvnGg4UBbiLqG3AZiN2WhTHmrnZ2FY2TRQKiwksXsCq6zXfrueiWZP8JtioTtinYm/dc5UsOLO+xkcWXYQOoe0fzWhLUhpREfsCUkV06V99Ln1CFmVvpTYXDNFPGRHYLE3MgNqwazZtWg1K2oN8Aa4q1NLm9nlzZffIrBkEGuuh6/YFzjozVB3o+18vrce3Ulo3/fXCA6IImDuck/cZf5yOvuPXpBg/nuI0FZaBIN/nT5dhzBtZS/9MXosUj0higz1mMAD8pFQuQBsIpeTwI3ux+3C5FEJ6Gc19RVCLAS04Kbm0bY2lOnybooc6/kuLqHj3RKGN0xstxSke8esZJ13H1DEQpAKdlQz2cS5MccMTaDbGMetiuVgidyzPRZaV3CSu3hmIdr2AwDeG80pAI/cEvVHAPcsbZJNzygrt9z7lxyH5qab72fjmnJfZg0ONuCxbHRw5jWQmCVKN8HBJm8D5PrvkqxHuJQdDHShk+CeIYAGORa0GMFq1RzD9w50R9pGsA0OE876KF7 CgVuRC2p c5zEtwpVsE8WC8K0jKewi2unBrkKhEeTsf1mPnR5sBgBoX8qXBhvLYKX6BS+4ZMeAa0QFq6FgIGHWRz+ptaSBRNEuDCpymWubm62F9zOWRehRgd6CiD6ZRHfn8fWLM/xyMVNIvFG75stGJgyzy/ti7VsincqV0+MZWBMdBUSYtTbkXNcMK88xi6mdlLcPmSbocPAzbggb0/mmYarEI+uaGWkgDC4iZrICbiel6qYQK+mB/AqJZy7ssFwypCuH2fC9b2DBll++siY6TgI= 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: List-Subscribe: List-Unsubscribe: On 30/12/2024 10:07, Qi Zheng wrote: > static inline void riscv_tlb_remove_ptdesc(struct mmu_gather *tlb, void *pt) > { > - if (riscv_use_sbi_for_rfence()) > + if (riscv_use_sbi_for_rfence()) { > tlb_remove_ptdesc(tlb, pt); > - else > + } else { > + pagetable_dtor(pt); > tlb_remove_page_ptdesc(tlb, pt); I find the imbalance pretty confusing: pagetable_dtor() is called explicitly before using tlb_remove_page() but not tlb_remove_ptdesc(). Doesn't that assume that CONFIG_MMU_GATHER_HAVE_TABLE_FREE is selected? Could we not call pagetable_dtor() from __tlb_batch_free_encoded_pages() to ensure that the dtor is always called just before freeing, and remove the extra handling from arch code? I may well be missing something, I'm not super familiar with the tlb handling code. - Kevin