Message ID | 20230612210423.18611-19-vishal.moola@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Split ptdesc from struct page | expand |
On Mon, Jun 12, 2023 at 02:04:07PM -0700, Vishal Moola (Oracle) wrote: > The page table members are now split out into their own ptdesc struct. > Remove them from struct page. > > Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com> Acked-by: Mike Rapoport (IBM) <rppt@kernel.org> > --- > include/linux/mm_types.h | 14 -------------- > include/linux/pgtable.h | 3 --- > 2 files changed, 17 deletions(-) > > diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h > index 6161fe1ae5b8..31ffa1be21d0 100644 > --- a/include/linux/mm_types.h > +++ b/include/linux/mm_types.h > @@ -141,20 +141,6 @@ struct page { > struct { /* Tail pages of compound page */ > unsigned long compound_head; /* Bit zero is set */ > }; > - struct { /* Page table pages */ > - unsigned long _pt_pad_1; /* compound_head */ > - pgtable_t pmd_huge_pte; /* protected by page->ptl */ > - unsigned long _pt_s390_gaddr; /* mapping */ > - union { > - struct mm_struct *pt_mm; /* x86 pgds only */ > - atomic_t pt_frag_refcount; /* powerpc */ > - }; > -#if ALLOC_SPLIT_PTLOCKS > - spinlock_t *ptl; > -#else > - spinlock_t ptl; > -#endif > - }; > struct { /* ZONE_DEVICE pages */ > /** @pgmap: Points to the hosting device page map. */ > struct dev_pagemap *pgmap; > diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h > index c405f74d3875..33cc19d752b3 100644 > --- a/include/linux/pgtable.h > +++ b/include/linux/pgtable.h > @@ -1019,10 +1019,7 @@ struct ptdesc { > TABLE_MATCH(flags, __page_flags); > TABLE_MATCH(compound_head, pt_list); > TABLE_MATCH(compound_head, _pt_pad_1); > -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); > TABLE_MATCH(mapping, _pt_s390_gaddr); > -TABLE_MATCH(pt_mm, pt_mm); > -TABLE_MATCH(ptl, ptl); > #undef TABLE_MATCH > static_assert(sizeof(struct ptdesc) <= sizeof(struct page)); > > -- > 2.40.1 > >
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index 6161fe1ae5b8..31ffa1be21d0 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -141,20 +141,6 @@ struct page { struct { /* Tail pages of compound page */ unsigned long compound_head; /* Bit zero is set */ }; - struct { /* Page table pages */ - unsigned long _pt_pad_1; /* compound_head */ - pgtable_t pmd_huge_pte; /* protected by page->ptl */ - unsigned long _pt_s390_gaddr; /* mapping */ - union { - struct mm_struct *pt_mm; /* x86 pgds only */ - atomic_t pt_frag_refcount; /* powerpc */ - }; -#if ALLOC_SPLIT_PTLOCKS - spinlock_t *ptl; -#else - spinlock_t ptl; -#endif - }; struct { /* ZONE_DEVICE pages */ /** @pgmap: Points to the hosting device page map. */ struct dev_pagemap *pgmap; diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h index c405f74d3875..33cc19d752b3 100644 --- a/include/linux/pgtable.h +++ b/include/linux/pgtable.h @@ -1019,10 +1019,7 @@ struct ptdesc { TABLE_MATCH(flags, __page_flags); TABLE_MATCH(compound_head, pt_list); TABLE_MATCH(compound_head, _pt_pad_1); -TABLE_MATCH(pmd_huge_pte, pmd_huge_pte); TABLE_MATCH(mapping, _pt_s390_gaddr); -TABLE_MATCH(pt_mm, pt_mm); -TABLE_MATCH(ptl, ptl); #undef TABLE_MATCH static_assert(sizeof(struct ptdesc) <= sizeof(struct page));
The page table members are now split out into their own ptdesc struct. Remove them from struct page. Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com> --- include/linux/mm_types.h | 14 -------------- include/linux/pgtable.h | 3 --- 2 files changed, 17 deletions(-)