Messages in this thread Patch in this message | | | From | Hyeonggon Yoo <> | Subject | [RFC v3 4/4] mm/debug: use %pGt to print page_type in dump_page() | Date | Sun, 18 Dec 2022 19:19:01 +0900 |
| |
Some page flags are stored in page_type rather than flags field. Use newly introduced page type %pGt in dump_page().
Below are some examples:
page:00000000e47d45a7 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10175e flags: 0x200000000000000(node=0|zone=2) page_type: 0xffffffff() raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000 raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000 page dumped because: just after alloc_pages()
page:00000000e47d45a7 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10175e flags: 0x200000000000000(node=0|zone=2) page_type: 0xffefffff(slab) raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000 raw: 0000000000000000 0000000000000000 00000001ffefffff 0000000000000000 page dumped because: page with PG_slab set
page:00000000e47d45a7 refcount:1 mapcount:2 mapping:0000000000000000 index:0x0 pfn:0x10175e flags: 0x200000000000000(node=0|zone=2) page_type: 0x1() raw: 0200000000000000 0000000000000000 dead000000000122 0000000000000000 raw: 0000000000000000 0000000000000000 0000000100000001 0000000000000000 page dumped because: page with _mapcount == 1
Signed-off-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> --- mm/debug.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/mm/debug.c b/mm/debug.c index 5ce6b359004a..d6a0eb0a9bb8 100644 --- a/mm/debug.c +++ b/mm/debug.c @@ -120,6 +120,8 @@ static void __dump_page(struct page *page) pr_warn("%sflags: %pGp%s\n", type, &head->flags, page_cma ? " CMA" : ""); + pr_warn("page_type: %pGt\n", &head->page_type); + print_hex_dump(KERN_WARNING, "raw: ", DUMP_PREFIX_NONE, 32, sizeof(unsigned long), page, sizeof(struct page), false); -- 2.32.0
| |