Messages in this thread | | | Date | Wed, 27 Mar 2024 10:06:06 +0800 | Subject | Re: [PATCH 2/3] mm: pgtable: add missing pt_index to struct ptdesc | From | Qi Zheng <> |
| |
On 2024/3/27 03:25, Vishal Moola wrote: > On Mon, Mar 04, 2024 at 07:07:19PM +0800, Qi Zheng wrote: >> In s390, the page->index field is used for gmap (see gmap_shadow_pgt()), >> so add the corresponding pt_index to struct ptdesc and add a comment to >> clarify this. > > Yes s390 gmap 'uses' page->index, but not for the purpose page->index is > supposed to hold. It's alright to have a variable here, but I'd rather > see it named something more appropriate to the purporse it serves.
Make sense.
> > You can take look at this patch from v5 of my ptdesc conversion series > for more info: > https://lore.kernel.org/linux-mm/20230622205745.79707-3-vishal.moola@gmail.com/
Oh, but it seems that this patch has not been merged?
> >> Signed-off-by: Qi Zheng <zhengqi.arch@bytedance.com> >> --- >> include/linux/mm_types.h | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h >> index 5ea77969daae..5240bd7bca33 100644 >> --- a/include/linux/mm_types.h >> +++ b/include/linux/mm_types.h >> @@ -425,6 +425,7 @@ FOLIO_MATCH(compound_head, _head_2a); >> * @_pt_pad_1: Padding that aliases with page's compound head. >> * @pmd_huge_pte: Protected by ptdesc->ptl, used for THPs. >> * @__page_mapping: Aliases with page->mapping. Unused for page tables. >> + * @pt_index: Used for s390 gmap. >> * @pt_mm: Used for x86 pgds. >> * @pt_frag_refcount: For fragmented page table tracking. Powerpc only. >> * @_pt_pad_2: Padding to ensure proper alignment. >> @@ -450,6 +451,7 @@ struct ptdesc { >> unsigned long __page_mapping; >> >> union { >> + pgoff_t pt_index; >> struct mm_struct *pt_mm; >> atomic_t pt_frag_refcount; >> }; >> @@ -475,6 +477,7 @@ TABLE_MATCH(flags, __page_flags); >> TABLE_MATCH(compound_head, pt_list); >> TABLE_MATCH(compound_head, _pt_pad_1); >> TABLE_MATCH(mapping, __page_mapping); >> +TABLE_MATCH(index, pt_index); >> TABLE_MATCH(rcu_head, pt_rcu_head); >> TABLE_MATCH(page_type, __page_type); >> TABLE_MATCH(_refcount, __page_refcount); >> -- >> 2.30.2 >>
| |