在 2020年10月31日 00:00, crash-utility-request(a)redhat.com 写道:
Message: 1
Date: Fri, 30 Oct 2020 12:44:57 +0200
From: Nikolay Borisov <nborisov(a)suse.com>
To: crash-utility(a)redhat.com
Cc: Nikolay Borisov <nborisov(a)suse.com>
Subject: [Crash-utility] [PATCH] x86_64: Add support for new
divide_error name
Message-ID: <20201030104457.3472472-1-nborisov(a)suse.com>
Content-Type: text/plain; charset="US-ASCII"
Upstream kernel commit 9d06c4027f21 ("x86/entry: Convert Divide Error to
IDTENTRY")
renamed divide_error handler to asm_exc_divide_error. This breaks kaslr
offser derivation when we crash tries to open a qemu image dump. Fix it
by also checking symbols for the presence of the new name.
Signed-off-by: Nikolay Borisov <nborisov(a)suse.com>
---
symbols.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/symbols.c b/symbols.c
index 70b1455750ee..e3594ce0ed48 100644
--- a/symbols.c
+++ b/symbols.c
@@ -12711,9 +12711,11 @@ numeric_forward(const void *P_x, const void *P_y)
if (SADUMP_DUMPFILE() || QEMU_MEM_DUMP_NO_VMCOREINFO() || VMSS_DUMPFILE()) {
/* Need for kaslr_offset and phys_base */
- if (STREQ(x->name, "divide_error"))
+ if (STREQ(x->name, "divide_error") ||
+ STREQ(x->name, "asm_exc_divide_error"))
st->divide_error_vmlinux = valueof(x);
- else if (STREQ(y->name, "divide_error"))
+ else if (STREQ(y->name, "divide_error") ||
+ STREQ(y->name, "asm_exc_divide_error"))
st->divide_error_vmlinux = valueof(y);
if (STREQ(x->name, "idt_table"))
-- 2.25.1
This looks good to me. Acked-by: Lianbo Jiang <lijiang(a)redhat.com>
Thanks.