summaryrefslogtreecommitdiffstats
path: root/kernel/crash_core.c
diff options
context:
space:
mode:
authorOmar Sandoval <osandov@fb.com>2018-08-21 21:55:17 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2018-08-22 10:52:46 -0700
commiteff4345e7fba0aac8665f00e8599b36946d9aaec (patch)
tree1812837b4f291b801fdca107b97cc3251a4caa89 /kernel/crash_core.c
parentbf991c2231117d50a7645792b514354fc8d19dae (diff)
downloadlinux-stable-eff4345e7fba0aac8665f00e8599b36946d9aaec.tar.gz
linux-stable-eff4345e7fba0aac8665f00e8599b36946d9aaec.tar.bz2
linux-stable-eff4345e7fba0aac8665f00e8599b36946d9aaec.zip
crash_core: use VMCOREINFO_SYMBOL_ARRAY() for swapper_pg_dir
This is preparation for allowing CRASH_CORE to be enabled for any architecture. swapper_pg_dir is always either an array or a macro expanding to NULL. In the latter case, VMCOREINFO_SYMBOL() won't work, as it tries to take the address of the given symbol: #define VMCOREINFO_SYMBOL(name) \ vmcoreinfo_append_str("SYMBOL(%s)=%lx\n", #name, (unsigned long)&name) Instead, use VMCOREINFO_SYMBOL_ARRAY(), which uses the value: #define VMCOREINFO_SYMBOL_ARRAY(name) \ vmcoreinfo_append_str("SYMBOL(%s)=%lx\n", #name, (unsigned long)name) This is the same thing for the array case but isn't an error for the macro case. Link: http://lkml.kernel.org/r/c05f9781ec204f40fc96f95086e7b6de6a3eb2c3.1532563124.git.osandov@fb.com Signed-off-by: Omar Sandoval <osandov@fb.com> Cc: Alexey Dobriyan <adobriyan@gmail.com> Cc: Bhupesh Sharma <bhsharma@redhat.com> Cc: Eric Biederman <ebiederm@xmission.com> Cc: James Morse <james.morse@arm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/crash_core.c')
-rw-r--r--kernel/crash_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/crash_core.c b/kernel/crash_core.c
index b66aced5e8c2..e7b4025c7b24 100644
--- a/kernel/crash_core.c
+++ b/kernel/crash_core.c
@@ -401,7 +401,7 @@ static int __init crash_save_vmcoreinfo_init(void)
VMCOREINFO_SYMBOL(init_uts_ns);
VMCOREINFO_SYMBOL(node_online_map);
#ifdef CONFIG_MMU
- VMCOREINFO_SYMBOL(swapper_pg_dir);
+ VMCOREINFO_SYMBOL_ARRAY(swapper_pg_dir);
#endif
VMCOREINFO_SYMBOL(_stext);
VMCOREINFO_SYMBOL(vmap_area_list);