diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2005-06-22 02:15:30 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-22 03:46:26 +0200 |
commit | 6879dc137ea4efad65cab8bf8a7c0b742bcf92cc (patch) | |
tree | 13ca02150a892e97f3da20ac9cc052508cc7e8a8 /arch/ppc64/xmon | |
parent | [PATCH] ppc32: don't recursively crash in die() on CHRP/PReP machines (diff) | |
download | linux-6879dc137ea4efad65cab8bf8a7c0b742bcf92cc.tar.xz linux-6879dc137ea4efad65cab8bf8a7c0b742bcf92cc.zip |
[PATCH] ppc32: Kill embedded system.map, use kallsyms
This patch kills the whole embedded System.map mecanism and the
bootloader-passed System.map that was used to provide symbol resolution in
xmon. Instead, xmon now uses kallsyms like ppc64 does.
No hurry getting that in Linus tree, let it be tested in -mm for a while
first and make sure it doesn't break various embedded configs.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ppc64/xmon')
-rw-r--r-- | arch/ppc64/xmon/xmon.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/ppc64/xmon/xmon.c b/arch/ppc64/xmon/xmon.c index 3c0ccb2623ae..7f6e13a4b71e 100644 --- a/arch/ppc64/xmon/xmon.c +++ b/arch/ppc64/xmon/xmon.c @@ -2247,7 +2247,14 @@ scanhex(unsigned long *vp) tmpstr[i] = c; } tmpstr[i++] = 0; - *vp = kallsyms_lookup_name(tmpstr); + *vp = 0; + if (setjmp(bus_error_jmp) == 0) { + catch_memory_errors = 1; + sync(); + *vp = kallsyms_lookup_name(tmpstr); + sync(); + } + catch_memory_errors = 0; if (!(*vp)) { printf("unknown symbol '%s'\n", tmpstr); return 0; |