It seems there is a regression in recent versions of crash whichWell, I can't put anything back in that was never removed.
disabled the fix put into crash 4.0-3.9 to deal with the fact older
version gcc was not providing enough debug info in vmlinux (see the
email threads on Oct 4 and Oct 5). Is there any plan to add the fix back in?
The relevant patch that went into 4.0-3.6 to deal with the
pid_hash debuginfo missing from the vmlinux file was this:
1225,1226c1221,1235
< if (!(plen = get_array_length("pid_hash",
NULL, sizeof(void *))))
<
error(FATAL, "cannot determine pid_hash array dimensions\n");
---
> if (!(plen = get_array_length("pid_hash",
NULL, sizeof(void *)))) {
>
/*
>
* Workaround for gcc omitting debuginfo data for pid_hash.
>
*/
>
if (enumerator_value("PIDTYPE_MAX", &value)) {
>
if ((sp = next_symbol("pid_hash", NULL)) &&
>
(((sp->value - tt->pidhash_addr) / sizeof(void *)) < value))
>
error(WARNING, "possible pid_hash array mis-handling\n");
>
plen = (int)value;
>
} else {
>
error(WARNING,
>
"cannot determine pid_hash array dimensions\n");
>
plen = 1;
>
}
> }
...and that code's still there.
Looking at the 4.0-3.9 changelog, I don't see anything that could
have affected the pid_hash handling.
The only "sample" 4.0.0-built dumpfile that I have is a 2.6.16
xen dumpfile, and it still works OK with the latest crash:
crash> sys
KERNEL: /usr/dumps/xen-2.6.16/vmlinux
DUMPFILE: /usr/dumps/xen-2.6.16/vmcore
CPUS: 2
DATE: Wed Oct
4 11:16:36 2006
UPTIME: 00:02:07
LOAD AVERAGE: 0.02, 0.02, 0.00
TASKS: 67
NODENAME: compute-3-5-vm7
RELEASE: 2.6.16.13-xen
VERSION: #5 SMP Tue Sep 19 17:19:32 EDT
2006
MACHINE: x86_64 (2800 Mhz)
MEMORY: 108 MB
crash> whatis pid_hash
<data variable, no debug info> pid_hash;
crash> help -k | grep gcc_version
gcc_version: 4.0.0
crash>
Are you seeing either of those two "pid_hash array" warning
messages in the patch above? What does "crash -d7" show?
Dave