Accepting request 963663 from Kernel:kdump
OBS-URL: https://build.opensuse.org/request/show/963663 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/makedumpfile?expand=0&rev=86
This commit is contained in:
commit
250476bf47
47
makedumpfile-sadump-kaslr-fix-kaslr_offset-calculation.patch
Normal file
47
makedumpfile-sadump-kaslr-fix-kaslr_offset-calculation.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
From: HATAYAMA Daisuke <d.hatayama@fujitsu.com>
|
||||||
|
Date: Tue Jan 25 12:55:15 2022 +0000
|
||||||
|
Subject: sadump, kaslr: fix failure of calculating kaslr_offset
|
||||||
|
References: bsc#1196736
|
||||||
|
Upstream: merged
|
||||||
|
Git-commit: 59b1726fbcc251155140c8a1972384498fee4daf
|
||||||
|
|
||||||
|
On kernels v5.8 or later, makedumpfile fails for memory dumps in the
|
||||||
|
sadump-related formats as follows:
|
||||||
|
|
||||||
|
# makedumpfile -f -l -d 31 -x ./vmlinux /dev/sdd4 /root/vmcore-ld31
|
||||||
|
__vtop4_x86_64: Can't get a valid pud_pte.
|
||||||
|
...110 lines of the same message...
|
||||||
|
__vtop4_x86_64: Can't get a valid pud_pte.
|
||||||
|
calc_kaslr_offset: failed to calculate kaslr_offset and phys_base; default to 0
|
||||||
|
readmem: type_addr: 1, addr:ffffffff85411858, size:8
|
||||||
|
__vtop4_x86_64: Can't get pgd (page_dir:ffffffff85411858).
|
||||||
|
readmem: Can't convert a virtual address(ffffffff059be980) to physical address.
|
||||||
|
readmem: type_addr: 0, addr:ffffffff059be980, size:1024
|
||||||
|
cpu_online_mask_init: Can't read cpu_online_mask memory.
|
||||||
|
|
||||||
|
makedumpfile Failed.
|
||||||
|
|
||||||
|
This is caused by the kernel commit 9d06c4027f21 ("x86/entry: Convert
|
||||||
|
Divide Error to IDTENTRY") that renamed divide_error to
|
||||||
|
asm_exc_divide_error, breaking logic for calculating kaslr offset.
|
||||||
|
|
||||||
|
Fix this by adding initialization of asm_exc_divide_error.
|
||||||
|
|
||||||
|
Signed-off-by: HATAYAMA Daisuke <d.hatayama@fujitsu.com>
|
||||||
|
Acked-by: Petr Tesarik <ptesarik@suse.com>
|
||||||
|
|
||||||
|
---
|
||||||
|
makedumpfile.c | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
--- a/makedumpfile.c
|
||||||
|
+++ b/makedumpfile.c
|
||||||
|
@@ -1634,6 +1634,8 @@ get_symbol_info(void)
|
||||||
|
SYMBOL_INIT(cur_cpu_spec, "cur_cpu_spec");
|
||||||
|
|
||||||
|
SYMBOL_INIT(divide_error, "divide_error");
|
||||||
|
+ if (SYMBOL(divide_error) == NOT_FOUND_SYMBOL)
|
||||||
|
+ SYMBOL_INIT(divide_error, "asm_exc_divide_error");
|
||||||
|
SYMBOL_INIT(idt_table, "idt_table");
|
||||||
|
SYMBOL_INIT(saved_command_line, "saved_command_line");
|
||||||
|
SYMBOL_INIT(pti_init, "pti_init");
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 21 11:22:52 UTC 2022 - Petr Tesařík <ptesarik@suse.com>
|
||||||
|
|
||||||
|
- makedumpfile-sadump-kaslr-fix-kaslr_offset-calculation.patch:
|
||||||
|
sadump, kaslr: fix failure of calculating kaslr_offset
|
||||||
|
(bsc#1196736).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Feb 11 14:15:33 UTC 2022 - Petr Tesařík <ptesarik@suse.com>
|
Fri Feb 11 14:15:33 UTC 2022 - Petr Tesařík <ptesarik@suse.com>
|
||||||
|
|
||||||
|
@ -51,6 +51,7 @@ Source99: %{name}-rpmlintrc
|
|||||||
Patch0: %{name}-override-libtinfo.patch
|
Patch0: %{name}-override-libtinfo.patch
|
||||||
Patch1: %{name}-ppc64-VA-range-SUSE.patch
|
Patch1: %{name}-ppc64-VA-range-SUSE.patch
|
||||||
Patch2: %{name}-PN_XNUM.patch
|
Patch2: %{name}-PN_XNUM.patch
|
||||||
|
Patch3: %{name}-sadump-kaslr-fix-kaslr_offset-calculation.patch
|
||||||
BuildRequires: libbz2-devel
|
BuildRequires: libbz2-devel
|
||||||
BuildRequires: libdw-devel
|
BuildRequires: libdw-devel
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
@ -79,6 +80,7 @@ via gdb or crash utility.
|
|||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
|
%patch3 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export CFLAGS="%{optflags} -fcommon"
|
export CFLAGS="%{optflags} -fcommon"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user