[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <daef60381001060123vbb09aecy7943d72fcb8278a@mail.gmail.com>
Date: Wed, 6 Jan 2010 17:23:41 +0800
From: Hui Zhu <teawater@...il.com>
To: Andrew Morton <akpm@...ux-foundation.org>,
Arjan van de Ven <arjan@...ux.intel.com>,
Sam Ravnborg <sam@...nborg.org>,
Ozan Çaglayan <ozan@...dus.org.tr>,
Matthew Wilcox <willy@...ux.intel.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH] Fix markup_oops.pl get error in x86
Hello,
When I try to use markup_oops.pl in x86, I always get:
cat 1 | perl markup_oops.pl ./vmlinux
objdump: --start-address: bad number: NaN
No matching code found
This is because in line:
if ($line =~ /EIP is at ([a-zA-Z0-9\_]+)\+0x([0-9a-f]+)\/[a-f0-9]/) {
$function = $1;
$func_offset = $2;
}
$func_offset will get a number like "0x2"
But in follow code:
my $decodestart = Math::BigInt->from_hex("0x$target") -
Math::BigInt->from_hex("0x$func_offset");
It add other ox to ox2.
Then this value will be set to NaN.
So I make a small patch to fix it.
Best regards,
Hui
---
scripts/markup_oops.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/scripts/markup_oops.pl
+++ b/scripts/markup_oops.pl
@@ -154,7 +154,7 @@ while (<STDIN>) {
if ($line =~ /RIP: 0010:\[\<([a-z0-9]+)\>\]/) {
$target = $1;
}
- if ($line =~ /EIP is at ([a-zA-Z0-9\_]+)\+(0x[0-9a-f]+)\/0x[a-f0-9]/) {
+ if ($line =~ /EIP is at ([a-zA-Z0-9\_]+)\+0x([0-9a-f]+)\/[a-f0-9]/) {
$function = $1;
$func_offset = $2;
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists