Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

m68k: mm: Convert pointer table macros to use ptdescs

Motorola uses its pointer tables for page tables, so its macros should be
using struct ptdesc, not struct page. This removes a user of page->lru.

Signed-off-by: "Vishal Moola (Oracle)" <vishal.moola@gmail.com>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Link: https://lore.kernel.org/20250611001255.527952-5-vishal.moola@gmail.com
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>

authored by

Vishal Moola (Oracle) and committed by
Geert Uytterhoeven
8135422a 66aebe56

+2 -3
+2 -3
arch/m68k/mm/motorola.c
··· 92 92 } 93 93 94 94 /* ++andreas: {get,free}_pointer_table rewritten to use unused fields from 95 - struct page instead of separately kmalloced struct. Stolen from 95 + struct ptdesc instead of separately kmalloced struct. Stolen from 96 96 arch/sparc/mm/srmmu.c ... */ 97 97 98 98 typedef struct list_head ptable_desc; ··· 103 103 LIST_HEAD_INIT(ptable_list[2]), 104 104 }; 105 105 106 - #define PD_PTABLE(page) ((ptable_desc *)&(virt_to_page((void *)(page))->lru)) 107 - #define PD_PAGE(ptable) (list_entry(ptable, struct page, lru)) 106 + #define PD_PTABLE(ptdesc) ((ptable_desc *)&(virt_to_ptdesc((void *)(ptdesc))->pt_list)) 108 107 #define PD_PTDESC(ptable) (list_entry(ptable, struct ptdesc, pt_list)) 109 108 #define PD_MARKBITS(dp) (*(unsigned int *)&PD_PTDESC(dp)->pt_index) 110 109