[Crash-utility] Throw read error on vmcore produced by ARM soc.

Dave Anderson anderson at redhat.com
Tue Mar 26 13:59:06 UTC 2013



----- Original Message -----
> Hi, list.
> 
> I use crash-utility to analyse crash dump core from ARM soc. When I
> execute command below, I get the error "crash: read error: kernel
> virtual address: c0c1e040  type: "first vmap_area va_start"". I also
> test it by gdb. It works fine. The Linux kernel's version is v3.0.8.
> 
> hfli at pc1935:~/work/crash-utility$ ./crash vmlinux Vmcore
> 
> crash 6.1.4
> Copyright (C) 2002-2013  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.3.1
> Copyright (C) 2011 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=i686-pc-linux-gnu --target=arm-elf-linux"...
> 
> crash: read error: kernel virtual address: c0c1e040  type: "first vmap_area va_start"
> 
> Errors like the one above typically occur when the kernel and memory source
> do not match.  These are the files being used:
> 
>       KERNEL: vmlinux
>     DUMPFILE: Vmcore

You've answered your own question -- you should always see errors if the vmlinux 
kernel does not match the kernel crashed system. 

If you cannot find/access the original vmlinux file that was being run
by the crashed kernel, then get the /boot/System.map file of the crashed
kernel, and enter it on the command line:

 $ crash vmlinux Vmcore System.map

The crash utility will replace all of the invalid symbol values from the
"wrong" vmlinux file with their correct values from the System.map file.

Dave 




More information about the Crash-utility mailing list