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 75369E7718A for ; Thu, 19 Dec 2024 02:16:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8B83A6B0082; Wed, 18 Dec 2024 21:16:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8672B6B0083; Wed, 18 Dec 2024 21:16:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7082A6B0085; Wed, 18 Dec 2024 21:16:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 4E8D46B0082 for ; Wed, 18 Dec 2024 21:16:34 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 038E61A130F for ; Thu, 19 Dec 2024 02:16:33 +0000 (UTC) X-FDA: 82910093448.07.5BA2279 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) by imf23.hostedemail.com (Postfix) with ESMTP id ADBDB140006 for ; Thu, 19 Dec 2024 02:16:09 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Wpb6BEdM; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf23.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.210.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734574561; a=rsa-sha256; cv=none; b=rmN3b9DFyDTezsnn5LuYEtbLporSKxfNv2m+odg6RfS6O/cyOzg5/I98c1zcmm5AbHbVyg x7D/IOBs4l3856+EqdEFrCcXROOMRUBzRy7O1yXiQK5A2uq3Oyr8ScmFd49j9HjkRY8Mft SWex9N/VN9Syq/PkDpUidin54vTmwTQ= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Wpb6BEdM; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf23.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.210.182 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1734574561; 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=TPHcpjogGQj9DePuy7spX/y295la8GYaw9su0y/02+A=; b=Sn+vlX/gO1Sub2fLFLc0XIEpRsCEl7y2Fl2p+4KerGOcOsAHnkdUrI2hE31bZSorxtQa6E X0QUf8zTKsa0bDH/BIx/M7G1KnvXtQvGlwR42Ljz3rUc/XG/qD0a4h44GtoMRR0UnfTfhX fpCFdJGWyNr8Xtzgh1hoJ/tWg5ucWjE= Received: by mail-pf1-f182.google.com with SMTP id d2e1a72fcca58-7265c18d79bso364196b3a.3 for ; Wed, 18 Dec 2024 18:16:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1734574590; x=1735179390; 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=TPHcpjogGQj9DePuy7spX/y295la8GYaw9su0y/02+A=; b=Wpb6BEdMzRyrT381RU/ZCX24meomB2U0ok81DNzFO5dKAts2MViSUWgy8lmvJbIPKU HCJhjxTS1ThTIMhuzYzDSohA/6PDWeYABqcSxSuIQQgfAhTl9DfL3UI7uxl0wH6BXUGj +/T/DTT1AfyVDu1fiOCEzpCPtwvby/z5UT18pRnJovh0rpWygug1Qw6jG0Gv6C+Lu1gi qCnjGI0DDrNIZ/5EoRfGHfp/HNEKT7eXfuRWUb6+dOSSJek3USoh9Yga6OZtl4g7lRzX Q0bF2UHXt35gJnRAX1geKn8PGpFOvb4P7KyKlY21SHV8LMnV46LFRnr1dsk0lt7jzEyh pAew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734574590; x=1735179390; 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=TPHcpjogGQj9DePuy7spX/y295la8GYaw9su0y/02+A=; b=dj98Tzvt4r/lPT7HNTVxoZMSYe/r/LoBJER4xNTZggv29s8O5y8wHDbhkTRB17EQe8 Vhhoa3D9adGQZkTLz5OdzoBWzoO4B1DSyMmzRS3T8qEkz4vtOMBA7nfEtZTUjn5LKpxQ jLGL9oYICQ5SLEtKpNLdXMwkoK+RwkFfuZdVDiP1eEkgaClWhZSJpWmTvueZianYQUPO ppYYbxUAeKTM48bq8EDTCVHAoU/AUGP8cV1JYnYqlSA3qEexHLhjsuBtL6Iufj5yjzy6 mYpUTP08CkCW1KjnDAUHlQFRPU8ApDURh2rYSlL0PCEyVrOYWpxcXwzfDnXnqH5IzFAo sBJw== X-Forwarded-Encrypted: i=1; AJvYcCX207GETHUum3q8tR5qp6M234xT4u6EKSOo/0Y23YEiaOqjoxHLUNyYlcXBSs7DFydNl0ol5tr7HA==@kvack.org X-Gm-Message-State: AOJu0YyG6yDvki6HtM0Zg325EiP2uqkuLDSuY2bg//bpkFioBq1Q+2YD 7C7M6UZ4ZNNkItYMd/SVJDSi/a20/R8VDjAMSJtqoOR+DU+ziSGnwHMax5rzYJo= X-Gm-Gg: ASbGnctzoUmrOTtnQjUOXDwZO2dp/+ARNoV9gdF1XVDo3zcV2eIGVgvAKZ+JBDpX6/7 q/Ko71Lo87nDwC/n1lXUTGLvxz8QCow+oxP58C2Xw0ygkAdP0y6odl4QY2Zbydr82nlLYeDpUxT RsCuCRezFoiwADBkiXFHYGJ16YnmAFGziqWlbWJ9m7gXFQh5m9cODGnDB7XJcKKMsakLtL7GVUK taHcD2coI3M4K6mGXsXYaxlnMKiHfn5JXhyqoMhIPRByYoQ7mSCHqrILF5O7XPKSnCjZtQCUQHU KGKczw== X-Google-Smtp-Source: AGHT+IFLYrk32OU9BOJtO6zl5+zT0AdHTY2cVdyB6k7rUp54q9vmbXzu/VTil7IQTKGZsZRW61fYyQ== X-Received: by 2002:a05:6a00:2356:b0:728:e1e3:3d88 with SMTP id d2e1a72fcca58-72a8d227287mr7273859b3a.7.1734574589752; Wed, 18 Dec 2024 18:16:29 -0800 (PST) Received: from [10.4.194.102] ([139.177.225.238]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72aad8309acsm161520b3a.45.2024.12.18.18.16.24 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 Dec 2024 18:16:29 -0800 (PST) Message-ID: <3f9a5475-930d-4f45-8fc8-8d2e8a6a08cc@bytedance.com> Date: Thu, 19 Dec 2024 10:16:22 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 14/15] mm: pgtable: remove tlb_remove_ptdesc() Content-Language: en-US To: Peter Zijlstra Cc: 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, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <79b20df78eb81a9cd07e3048f2d4d63d98759b4a.1734526570.git.zhengqi.arch@bytedance.com> <20241218164520.GK2354@noisy.programming.kicks-ass.net> From: Qi Zheng In-Reply-To: <20241218164520.GK2354@noisy.programming.kicks-ass.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: ADBDB140006 X-Stat-Signature: 7hrp6tj1kctdcbsjf93m9f56ng7b1duz X-Rspam-User: X-HE-Tag: 1734574569-640569 X-HE-Meta: U2FsdGVkX184gM3m7ek3O1P4H3I+T9Hw/kmI31ej8G+mUTThEXTgZ4QRDmJQHEtAPK6eRqaJ/0McNg+fLdnfUxDYdCZDCzXrCHpVjLGAA3V06vqv6PzCSdrHbVNQSYm86Ek3ADP0z+f2P+TAB+kNx/zcK/WsqiItvaoLTmaB2gbuFaOrgYclx7psqyFf3NQd3+vIrSuojB0GAH3pD7Hsr9TNSWub6FN+PW10zyw1O9q044Fi7IQFglrK8yRtw0U9vbjyiHYCs467jr0WpS9hk4jPObDPm1OKG7FI6D/+ubGo2rfLFMc47TNAE721wMM8YFuW/jxpcD55Str7vU1eRb7zX61fOMPmWunakCRer+eRhrjyE8VV7iDziOJNlZSA/tD0zJspll9lPmNIsel+OM/Awx2IbGBkdVrj9c0xhIhCe8/BmHiE5ahjKldHrG6+SgIrsQBhvSXygwrNm428oIXPEYQaL1K3D8RdulQyjlSMgKwn5Nk1daylZOeLyBAMSIzt5fu+0zlnv2D4h1hG93oBxNcVkcIS/LRNAN3DbCV5KSrcJbGcGHpg9qfgKAV77xJ0XLCmoMpfVX3XTofTmYTMIBzvvOojXnxBnkNudWjDK1tgNUWsiG7/8A3BBKB+z1i3MWN8giS49xAixqMBrrtnBGOkVUaQWjmkDll9BkOmelJ1wRxyjlChWiNlOUY4kS5FLFHqHTFI3G6wIOcsOFeTe80g+EGPwu+NDgxJXjeWuxd0VzfiDjp22r4ilH0ZKqeDSBSIVcmbNAZOj4c1wtvTv/6R6nSAThc37IUGJTCQ2g81lJSSnxRINoby5lG+1cq38Yop4r3Vk/M8OLTc3PWKma2SucJqhz6HX3FMsQ59i7ocJ3rtTAmbfA+yAGuWPRlNXN2SBwx9rob/VcQ+lQDD8slmFyPRfvycT8ZEYwuegHnldNrOiWbAaspZLXlBYw+dt6RmJua2b1ZLC7l aUClNrUT jiEHR21NLCNpOJi0aIOYS0rvi0KC6fSarmxx+kRi9FmZ1+VXMxisPIQFCF94IiSgaRzfuexT6AjdI6oWJVF2xzy2Ivf8X1RUcMsuDc+N7F9J8Xp8/v8MMhXazptD9jVw7f58YS8gkYcK93LGVaaaxMxxiAkYxdR+tc18pU3XA+afZPqX7WshTWMaN2Z1Sj27p+hIJsgtOWe/IBeXcFs7wRckDtME8L1t++4a3HeSsB2p8I829UEM5OD24UeuIbSrm4d/04Xfo0po93Q68kAc7jVQY1tojAkpXAkexrMLFM87O3TyYnj0QQm73wgWJhcYfbHTsoQC0tTIfcqB4iT5HeE29gJTMuVK1T/OD9DIZ8otR1l4Py4Cq44JhJgRVTZPnH+o2UKyAbPY82Z8BmM3GQSvftrs1lYf1/L0oVvXAVziN9mO0hwAHoCANO4kyY1gzsISIuCvgLa+2p5U= X-Bogosity: Ham, tests=bogofilter, spamicity=0.045733, 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/19 00:45, Peter Zijlstra wrote: > On Wed, Dec 18, 2024 at 09:04:50PM +0800, Qi Zheng wrote: >> diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h >> index 7052780740349..fba11949dd2ea 100644 >> --- a/arch/s390/include/asm/tlb.h >> +++ b/arch/s390/include/asm/tlb.h >> @@ -86,7 +86,7 @@ static inline void pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, >> tlb->cleared_pmds = 1; >> if (mm_alloc_pgste(tlb->mm)) >> gmap_unlink(tlb->mm, (unsigned long *)pte, address); >> - tlb_remove_ptdesc(tlb, pte); >> + tlb_remove_table(tlb, pte); >> } >> >> /* >> @@ -105,7 +105,7 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, >> tlb->mm->context.flush_mm = 1; >> tlb->freed_tables = 1; >> tlb->cleared_puds = 1; >> - tlb_remove_ptdesc(tlb, pmd); >> + tlb_remove_table(tlb, pmd); >> } >> >> /* >> @@ -123,7 +123,7 @@ static inline void pud_free_tlb(struct mmu_gather *tlb, pud_t *pud, >> tlb->mm->context.flush_mm = 1; >> tlb->freed_tables = 1; >> tlb->cleared_p4ds = 1; >> - tlb_remove_ptdesc(tlb, pud); >> + tlb_remove_table(tlb, pud); >> } >> >> /* >> @@ -141,7 +141,7 @@ static inline void p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d, >> __tlb_adjust_range(tlb, address, PAGE_SIZE); >> tlb->mm->context.flush_mm = 1; >> tlb->freed_tables = 1; >> - tlb_remove_ptdesc(tlb, p4d); >> + tlb_remove_table(tlb, p4d); >> } >> >> #endif /* _S390_TLB_H */ > > AFAICT these are all virtual addresses (still) Oops, I forgot to fix [PATCH v2 11/15]. It should be fixed like below: diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h index 7052780740349..da4a7d175f69c 100644 --- a/arch/s390/include/asm/tlb.h +++ b/arch/s390/include/asm/tlb.h @@ -86,7 +86,7 @@ static inline void pte_free_tlb(struct mmu_gather *tlb, pgtable_t pte, tlb->cleared_pmds = 1; if (mm_alloc_pgste(tlb->mm)) gmap_unlink(tlb->mm, (unsigned long *)pte, address); - tlb_remove_ptdesc(tlb, pte); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pte)); } /* @@ -105,7 +105,7 @@ static inline void pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; tlb->cleared_puds = 1; - tlb_remove_ptdesc(tlb, pmd); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pmd)); } /* @@ -123,7 +123,7 @@ static inline void pud_free_tlb(struct mmu_gather *tlb, pud_t *pud, tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; tlb->cleared_p4ds = 1; - tlb_remove_ptdesc(tlb, pud); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(pud)); } /* @@ -141,7 +141,7 @@ static inline void p4d_free_tlb(struct mmu_gather *tlb, p4d_t *p4d, __tlb_adjust_range(tlb, address, PAGE_SIZE); tlb->mm->context.flush_mm = 1; tlb->freed_tables = 1; - tlb_remove_ptdesc(tlb, p4d); + tlb_remove_ptdesc(tlb, virt_to_ptdesc(p4d)); } #endif /* _S390_TLB_H */ Then in [PATCH v2 14/15], just convert virt_to_ptdesc() to virt_to_page(). Will fix it in v3. Thanks! > > >> diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h >> index 8d6cfe5058543..583e95568f52b 100644 >> --- a/include/asm-generic/tlb.h >> +++ b/include/asm-generic/tlb.h >> @@ -211,7 +211,7 @@ struct mmu_table_batch { >> #ifndef __HAVE_ARCH_TLB_REMOVE_TABLE >> static inline void __tlb_remove_table(void *table) >> { >> - struct ptdesc *ptdesc = (struct ptdesc *)table; >> + struct ptdesc *ptdesc = page_ptdesc((struct page *)table); > > And here you're assuming they're page pointers. > >> pagetable_dtor(ptdesc); >> pagetable_free(ptdesc);