----- Original Message -----
> > Hey David,
> >
> > I just upgraded a dev box to v3.5-rc1 and now crash doesn't work. Have
> > you seen this before?
> >
> > crash 6.0.7
> > Copyright (C) 2002-2012 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 "i686-pc-linux-gnu"...
> >
> > SYSTEM MAP: /boot/System.map-3.5.0-rc1-1.2-desktop
> > DEBUG KERNEL: /root/xfs/vmlinux
> > DUMPFILE: vmcore
> > CPUS: 4
> > DATE: Tue Jun 5 15:13:35 2012
> > UPTIME: 01:58:35
> > LOAD AVERAGE: 2.06, 1.61, 1.77
> > TASKS: 90
> > NODENAME: nfs7
> > RELEASE: 3.5.0-rc1-1.2-desktop
> > VERSION: #20 SMP PREEMPT Tue Jun 5 12:56:22 CDT 2012
> > MACHINE: i686 (2399 Mhz)
> > MEMORY: 6 GB
> > PANIC:
> > crash: cannot determine length of symbol: log_end
> >
> >
> >
> > I had been using crash 6.0.6 on this machine on a regular basis until
> > upgrading the kernel. I expect if I go back to the older kernel it will
> > work again. Any suggestions? More info I can provide?
> >
> > Thanks,
> > Ben
>
> Right, this recent upstream kernel commit has re-designed the log buffer
> scheme:
>
> commit 7ff9554bb578ba02166071d2d487b7fc7d860d62
> Author: Kay Sievers <kay vrfy org>
> Date: Thu May 3 02:29:13 2012 +0200
>
> printk: convert byte-buffer to variable-length record buffer
>
> Eventually I, or somebody on the crash-utility mailing list, will get around
> to updating crash to handle the new scheme.
>
> The only thing you can do to work around it for now is to hack kernel.c
> and just force the dump_log() function to return immediately:
>
> void
> dump_log(int msg_level)
> {
> int i, len, tmp;
> ulong log_buf, log_end;
> char *buf;
> char last;
> ulong index;
> struct syment *nsp;
> int log_wrap, loglevel, log_buf_len;
>
> + return;
>
> if (symbol_exists("log_buf_len")) {
> get_symbol_data("log_buf_len", sizeof(int),
&log_buf_len);
> get_symbol_data("log_buf", sizeof(ulong),
&log_buf);
> } else {
> ...
>
> Dave
I have a fix queued for crash-6.0.8. I should also mention that
a more reasonable workaround to the hack above would be to simply
invoke the session with "crash -s ...". In that case, the session
will come up OK -- although the "sys" and "log" commands will result
in the same (but non-fatal) error message.