From: Matthew Wilcox (Oracle) Date: Sat, 2 Oct 2021 02:45:02 +0000 (-0400) Subject: mm/slub: Convert print_trailer() to struct slab X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=1f403685fbe15c97a534432cadc773c2d8a0b731;p=users%2Fwilly%2Flinux.git mm/slub: Convert print_trailer() to struct slab This is mostly pushing slab_page() calls down. Signed-off-by: Matthew Wilcox (Oracle) --- diff --git a/mm/slub.c b/mm/slub.c index a93a6d679de2e..9651586a3450e 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -816,14 +816,14 @@ static bool freelist_corrupted(struct kmem_cache *s, struct slab *slab, return false; } -static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) +static void print_trailer(struct kmem_cache *s, struct slab *slab, u8 *p) { unsigned int off; /* Offset of last byte */ - u8 *addr = page_address(page); + u8 *addr = slab_address(slab); print_tracking(s, p); - print_page_info(page); + print_page_info(slab_page(slab)); pr_err("Object 0x%p @offset=%tu fp=0x%p\n\n", p, p - addr, get_freepointer(s, p)); @@ -862,7 +862,7 @@ static void object_err(struct kmem_cache *s, struct slab *slab, return; slab_bug(s, "%s", reason); - print_trailer(s, slab_page(slab), object); + print_trailer(s, slab, object); add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE); } @@ -932,7 +932,7 @@ static int check_bytes_and_report(struct kmem_cache *s, struct slab *slab, pr_err("0x%p-0x%p @offset=%tu. First byte 0x%x instead of 0x%x\n", fault, end - 1, fault - addr, fault[0], value); - print_trailer(s, slab_page(slab), object); + print_trailer(s, slab, object); add_taint(TAINT_BAD_PAGE, LOCKDEP_NOW_UNRELIABLE); skip_bug_print: