On Wed, Jan 10, 2018 at 8:40 PM, Dave Anderson <anderson(a)redhat.com> wrote:
----- Original Message -----
>
> when I use the crash tool to analysis the ram dump of linux4.4 on arm64,it
> failed,is someone can help me?the error information as follow。
> ----------------------------------------------------------------------------
> Port_COM151$ crash64 vmlinux
> DDRCS0_0.BIN@0x00000000e0000000,DDRCS1_0.BIN(a)0x0000000080000000
> crash64 7.1.9
> Copyright (C) 2002-2016 Red Hat, Inc.
> Copyright (C) 2004, 2005, 2006, 2010 IBM Corporation
> Copyright (C) 1999-2006 Hewlett-Packard Co
> Copyright (C) 2005, 2006, 2011, 2012 Fujitsu Limited
> Copyright (C) 2006, 2007 VA Linux Systems Japan K.K.
> Copyright (C) 2005, 2011 NEC Corporation
> Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc.
> Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc.
> This program is free software, covered by the GNU General Public License,
> and you are welcome to change it and/or distribute copies of it under
> certain conditions. Enter "help copying" to see the conditions.
> This program has absolutely no warranty. Enter "help warranty" for
details.
> GNU gdb (GDB) 7.6
> Copyright (C) 2013 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <
http://gnu.org/licenses/gpl.html
> >
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "--host=x86_64-unknown-linux-gnu
> --target=aarch64-elf-linux"...
>
> crash64: read error: kernel virtual address: ffffff8ed5cccef0 type:
"possible"
> WARNING: cannot read cpu_possible_map
> crash64: read error: kernel virtual address: ffffff8ed5cccee8 type:
"present"
> WARNING: cannot read cpu_present_map
> crash64: read error: kernel virtual address: ffffff8ed5ccced8 type:
"online"
> WARNING: cannot read cpu_online_map
> crash64: read error: kernel virtual address: ffffff8ed5cccef8 type:
"active"
> WARNING: cannot read cpu_active_map
> crash64: read error: kernel virtual address: ffffff8ed5cccee8 type:
"cpu_present_map"
> crash64: read error: kernel virtual address: ffffff8ed5ccced8 type:
"cpu_online_map"
> crash64: read error: kernel virtual address: ffffff8ed5ccced8 type:
"cpu_online_map"
> crash64: read error: kernel virtual address: ffffff8ed5ccced8 type:
"cpu_online_map"
> Segmentation fault (core dumped)
As I mentioned in my first response, my best guess is that the phys_offset
value being used by the crash utility is incorrect. A couple suggestions:
(1) What is the output of:
crash -d8 vmlinux DDRCS0_0.BIN@0x00000000e0000000,DDRCS1_0.BIN(a)0x0000000080000000
(2) Does it make a difference if the order of the two files are switched, so that the
lower phyiscal memory block is entered first? i.e:
crash vmlinux DDRCS1_0.BIN@0x0000000080000000,DDRCS0_0.BIN(a)0x00000000e0000000
Dave
Just going by the numbering of the dumps, also see if the address of
dumps got reversed. i.e. DDRCS0_0.BIN is @ 0x80000000 and DDRCS1_0.BIN
@0xe0000000
And also check if kaslr is enabled and if yes make sure proper offset
is passed via --kaslr.
Thanks,
Vinayak