PageAnon() always look at head page to check PAGE_MAPPING_ANON and
tail page's page->mapping has just a poisoned data since commit
1c290f642101e6.
If makedumpfile checks page->mapping of an compound tail page to
distinguish anonymous page as usual, it must fail in newer kernel.
So it's necessary to export OFFSET(page.compound_head) to
avoid checking compound tail pages.
Signed-off-by: Atsushi Kumagai <[email protected]>
---
kernel/kexec_core.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
index 7c0b61d..4726999 100644
--- a/kernel/kexec_core.c
+++ b/kernel/kexec_core.c
@@ -1415,6 +1415,7 @@ static int __init crash_save_vmcoreinfo_init(void)
VMCOREINFO_OFFSET(page, private);
VMCOREINFO_OFFSET(page, compound_dtor);
VMCOREINFO_OFFSET(page, compound_order);
+ VMCOREINFO_OFFSET(page, compound_head);
VMCOREINFO_OFFSET(pglist_data, node_zones);
VMCOREINFO_OFFSET(pglist_data, nr_zones);
#ifdef CONFIG_FLAT_NODE_MEM_MAP
--
2.7.2