On Mon, Feb 19, 2024 at 01:12:32PM +0800, Baoquan He wrote: > On 02/12/24 at 12:44pm, Kirill A. Shutemov wrote: > > lookup_address() only returns correct page table level for the entry if > > the entry is not none. > > > > Make the helper to always return correct 'level'. It allows to implement > > iterator over kernel page tables using lookup_address(). > > > > Add one more entry into enum pg_level to indicate size of VA covered by > > one PGD entry in 5-level paging mode. > > > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > > Reviewed-by: Rick Edgecombe <rick.p.edgecombe@xxxxxxxxx> > > --- > > arch/x86/include/asm/pgtable_types.h | 1 + > > arch/x86/mm/pat/set_memory.c | 8 ++++---- > > 2 files changed, 5 insertions(+), 4 deletions(-) > > > > diff --git a/arch/x86/include/asm/pgtable_types.h b/arch/x86/include/asm/pgtable_types.h > > index 0b748ee16b3d..3f648ffdfbe5 100644 > > --- a/arch/x86/include/asm/pgtable_types.h > > +++ b/arch/x86/include/asm/pgtable_types.h > > @@ -548,6 +548,7 @@ enum pg_level { > > PG_LEVEL_2M, > > PG_LEVEL_1G, > > PG_LEVEL_512G, > > + PG_LEVEL_256T, > > PG_LEVEL_NUM > > }; > > > > diff --git a/arch/x86/mm/pat/set_memory.c b/arch/x86/mm/pat/set_memory.c > > index f92da8c9a86d..3612e3167147 100644 > > --- a/arch/x86/mm/pat/set_memory.c > > +++ b/arch/x86/mm/pat/set_memory.c > > @@ -666,32 +666,32 @@ pte_t *lookup_address_in_pgd(pgd_t *pgd, unsigned long address, > > LGTM, > > Reviewed-by: Baoquan He <bhe@xxxxxxxxxx> > > By the way, we may need update the code comment above function > lookup_address_in_pgd() and function lookup_address() since they don't > reflect the latest behaviour of them. I am not sure what part of the comment you see doesn't reflect the behaviour. From my PoV, changed code matches the comment closer that original. Hm? -- Kiryl Shutsemau / Kirill A. Shutemov _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec