From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935345AbcLOQSx (ORCPT ); Thu, 15 Dec 2016 11:18:53 -0500 Received: from mail-pf0-f172.google.com ([209.85.192.172]:33976 "EHLO mail-pf0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756056AbcLOQSw (ORCPT ); Thu, 15 Dec 2016 11:18:52 -0500 From: Thomas Garnier To: Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Eric Biederman , Andrew Morton , Baoquan He , Thomas Garnier , Xunlei Pang , HATAYAMA Daisuke Cc: x86@kernel.org, linux-kernel@vger.kernel.org, kexec@lists.infradead.org, kernel-hardening@lists.openwall.com Subject: [PATCH] Revert "Revert "kdump, vmcoreinfo: report memory sections virtual addresses"" Date: Thu, 15 Dec 2016 08:17:28 -0800 Message-Id: <1481818648-36201-1-git-send-email-thgarnie@google.com> X-Mailer: git-send-email 2.8.0.rc3.226.g39d4020 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This reverts commit 49fd897573c97b0eaf10f47d850027d78c456cd7. Reverting back to commit 0549a3c because the values are used by crash and other tools already. I expected this commit would not go through given the unresolved comments. I want it to be easy to resolve major memory section positions when KASLR memory randomization is enabled. Signed-off-by: Thomas Garnier --- arch/x86/kernel/machine_kexec_64.c | 3 +++ include/linux/kexec.h | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/arch/x86/kernel/machine_kexec_64.c b/arch/x86/kernel/machine_kexec_64.c index 2e3c34b..05f3367 100644 --- a/arch/x86/kernel/machine_kexec_64.c +++ b/arch/x86/kernel/machine_kexec_64.c @@ -339,6 +339,9 @@ void arch_crash_save_vmcoreinfo(void) kaslr_offset()); VMCOREINFO_NUMBER(KERNEL_IMAGE_SIZE); VMCOREINFO_PHYS_BASE(phys_base); + VMCOREINFO_PAGE_OFFSET(PAGE_OFFSET); + VMCOREINFO_VMALLOC_START(VMALLOC_START); + VMCOREINFO_VMEMMAP_START(VMEMMAP_START); } /* arch-dependent functionality related to kexec file-based syscall */ diff --git a/include/linux/kexec.h b/include/linux/kexec.h index e98e546..ff9c876 100644 --- a/include/linux/kexec.h +++ b/include/linux/kexec.h @@ -285,6 +285,12 @@ phys_addr_t paddr_vmcoreinfo_note(void); vmcoreinfo_append_str("CONFIG_%s=y\n", #name) #define VMCOREINFO_PHYS_BASE(value) \ vmcoreinfo_append_str("PHYS_BASE=%lx\n", (unsigned long)value) +#define VMCOREINFO_PAGE_OFFSET(value) \ + vmcoreinfo_append_str("PAGE_OFFSET=%lx\n", (unsigned long)value) +#define VMCOREINFO_VMALLOC_START(value) \ + vmcoreinfo_append_str("VMALLOC_START=%lx\n", (unsigned long)value) +#define VMCOREINFO_VMEMMAP_START(value) \ + vmcoreinfo_append_str("VMEMMAP_START=%lx\n", (unsigned long)value) extern struct kimage *kexec_image; extern struct kimage *kexec_crash_image; -- 2.8.0.rc3.226.g39d4020