Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Qi Zheng
On 2025/1/6 22:35, Alexander Gordeev wrote: On Mon, Jan 06, 2025 at 09:34:55PM +0800, Qi Zheng wrote: OK, will change the subject and description to: s390: pgtable: also move pagetable_dtor() of PxD to pagetable_dtor_free() To unify the PxD and PTE TLB free path, also move the pagetable_dto

Re: [PATCH v4 06/15] s390: pgtable: add statistics for PUD and P4D level page table

2025-01-06 Thread Qi Zheng
On 2025/1/6 21:34, Alexander Gordeev wrote: On Mon, Jan 06, 2025 at 07:05:16PM +0800, Qi Zheng wrote: I understand that you want to sort p.._free_tlb() routines, but please Yes, I thought it was a minor change, so I just did it. do not move the code around or make a separate follow-up pat

Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Alexander Gordeev
On Mon, Jan 06, 2025 at 09:34:55PM +0800, Qi Zheng wrote: > OK, will change the subject and description to: > > s390: pgtable: also move pagetable_dtor() of PxD to pagetable_dtor_free() > > To unify the PxD and PTE TLB free path, also move the pagetable_dtor() of > PMD|PUD|P4D to pagetable_dtor_f

Re: [PATCH v4 06/15] s390: pgtable: add statistics for PUD and P4D level page table

2025-01-06 Thread Alexander Gordeev
On Mon, Jan 06, 2025 at 07:05:16PM +0800, Qi Zheng wrote: > > I understand that you want to sort p.._free_tlb() routines, but please > > Yes, I thought it was a minor change, so I just did it. > > > do not move the code around or make a separate follow-up patch. > > Well, if you have a strong op

Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Qi Zheng
On 2025/1/6 20:44, Alexander Gordeev wrote: On Mon, Jan 06, 2025 at 07:02:17PM +0800, Qi Zheng wrote: On Mon, Dec 30, 2024 at 05:07:47PM +0800, Qi Zheng wrote: To unify the PxD and PTE TLB free path, also move the pagetable_dtor() of PMD|PUD|P4D to __tlb_remove_table(). The above and Subje

Re: [PATCH v4 07/15] mm: pgtable: introduce pagetable_dtor()

2025-01-06 Thread Qi Zheng
On 2025/1/6 20:36, Alexander Gordeev wrote: On Mon, Jan 06, 2025 at 06:55:58PM +0800, Qi Zheng wrote: +static inline void pagetable_dtor(struct ptdesc *ptdesc) +{ + struct folio *folio = ptdesc_folio(ptdesc); + + ptlock_free(ptdesc); + __folio_clear_pgtable(folio); + l

Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Alexander Gordeev
On Mon, Jan 06, 2025 at 07:02:17PM +0800, Qi Zheng wrote: > > On Mon, Dec 30, 2024 at 05:07:47PM +0800, Qi Zheng wrote: > > > To unify the PxD and PTE TLB free path, also move the pagetable_dtor() of > > > PMD|PUD|P4D to __tlb_remove_table(). > > > > The above and Subject are still incorrect: page

Re: [PATCH v4 07/15] mm: pgtable: introduce pagetable_dtor()

2025-01-06 Thread Alexander Gordeev
On Mon, Jan 06, 2025 at 06:55:58PM +0800, Qi Zheng wrote: > > > +static inline void pagetable_dtor(struct ptdesc *ptdesc) > > > +{ > > > + struct folio *folio = ptdesc_folio(ptdesc); > > > + > > > + ptlock_free(ptdesc); > > > + __folio_clear_pgtable(folio); > > > + lruvec_stat_sub_folio(folio, NR_P

Re: [PATCH v4 02/15] riscv: mm: Skip pgtable level check in {pud,p4d}_alloc_one

2025-01-06 Thread Alexandre Ghiti
Hi Qi, On 30/12/2024 10:07, Qi Zheng wrote: From: Kevin Brodsky {pmd,pud,p4d}_alloc_one() is never called if the corresponding page table level is folded, as {pmd,pud,p4d}_alloc() already does the required check. We can therefore remove the runtime page table level checks in {pud,p4d}_alloc_on

Re: [PATCH v4 06/15] s390: pgtable: add statistics for PUD and P4D level page table

2025-01-06 Thread Qi Zheng
On 2025/1/6 18:32, Alexander Gordeev wrote: On Mon, Dec 30, 2024 at 05:07:41PM +0800, Qi Zheng wrote: Like PMD and PTE level page table, also add statistics for PUD and P4D page table. ... diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h index e95b2c8081eb8..b946964afc

Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Qi Zheng
On 2025/1/6 18:36, Alexander Gordeev wrote: On Mon, Dec 30, 2024 at 05:07:47PM +0800, Qi Zheng wrote: To unify the PxD and PTE TLB free path, also move the pagetable_dtor() of PMD|PUD|P4D to __tlb_remove_table(). The above and Subject are still incorrect: pagetable_dtor() is called from pag

Re: [PATCH v4 07/15] mm: pgtable: introduce pagetable_dtor()

2025-01-06 Thread Qi Zheng
On 2025/1/6 18:34, Alexander Gordeev wrote: On Mon, Dec 30, 2024 at 05:07:42PM +0800, Qi Zheng wrote: The pagetable_p*_dtor() are exactly the same except for the handling of ptlock. If we make ptlock_free() handle the case where ptdesc->ptl is NULL and remove VM_BUG_ON_PAGE() from pmd_ptlock_

Re: [PATCH v4 12/15] s390: pgtable: also move pagetable_dtor() of PxD to __tlb_remove_table()

2025-01-06 Thread Alexander Gordeev
On Mon, Dec 30, 2024 at 05:07:47PM +0800, Qi Zheng wrote: > To unify the PxD and PTE TLB free path, also move the pagetable_dtor() of > PMD|PUD|P4D to __tlb_remove_table(). The above and Subject are still incorrect: pagetable_dtor() is called from pagetable_dtor_free(), not from __tlb_remove_table

Re: [PATCH v4 07/15] mm: pgtable: introduce pagetable_dtor()

2025-01-06 Thread Alexander Gordeev
On Mon, Dec 30, 2024 at 05:07:42PM +0800, Qi Zheng wrote: > The pagetable_p*_dtor() are exactly the same except for the handling of > ptlock. If we make ptlock_free() handle the case where ptdesc->ptl is > NULL and remove VM_BUG_ON_PAGE() from pmd_ptlock_free(), we can unify > pagetable_p*_dtor() i

Re: [PATCH v4 06/15] s390: pgtable: add statistics for PUD and P4D level page table

2025-01-06 Thread Alexander Gordeev
On Mon, Dec 30, 2024 at 05:07:41PM +0800, Qi Zheng wrote: > Like PMD and PTE level page table, also add statistics for PUD and P4D > page table. ... > diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h > index e95b2c8081eb8..b946964afce8e 100644 > --- a/arch/s390/include/asm/tlb

Re: [PATCH v2 0/6] Account page tables at all levels

2025-01-06 Thread Qi Zheng
On 2025/1/4 02:44, Kevin Brodsky wrote: v1: https://lore.kernel.org/linux-mm/20241219164425.2277022-1-kevin.brod...@arm.com/ This series should be considered in conjunction with Qi's series [1]. Together, they ensure that page table ctor/dtor are called at all levels (PTE to PGD) and all arc