Dave Anderson wrote:
changes the pid_hash chain from:
static struct hlist_head *pid_hash[PIDTYPE_MAX];
to:
static struct hlist_head *pid_hash;
The pid_hash infrastructure is what the crash utility
uses to gather the set of running tasks during initialization.
The change above breaks it, and crash will fail with an
error message stating:
crash: cannot determine pid_hash array dimensions
As the PID handling has changed over the years, there have
been several task-gathering functions in crash, the latest
of which is refresh_hlist_task_table(). I don't know whether
it will be possible to shoe-horn the new scheme to fit this
current crash function, or whether yet another new one will
have to be written. If it's the latter, it may take a while...
Well, its not the only one we need to deal with on 2.6.17-rc2 :(
elm3a242:~/crash-4.0-2.23 # ./crash
crash 4.0-2.23
Copyright (C) 2002, 2003, 2004, 2005, 2006 Red Hat, Inc.
Copyright (C) 2004, 2005, 2006 IBM Corporation
Copyright (C) 1999-2006 Hewlett-Packard Co
Copyright (C) 2005 Fujitsu Limited
Copyright (C) 2005 NEC Corporation
Copyright (C) 1999, 2002 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 6.1
Copyright 2004 Free Software Foundation, Inc.
GDB 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.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu"...
crash: cannot resolve: "pgdat_list"