This patch enables finding of node_states (instead of node_online_map) when using a kerntypes file for a namelist. I tested this against the dump of a 2.6.26 kernel. Diffed against crash-4.0-7.1 Signed-off-by: Cliff Wickman <cpw@xxxxxxx> --- memory.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) Index: crash-4.0-7.1/memory.c =================================================================== --- crash-4.0-7.1.orig/memory.c +++ crash-4.0-7.1/memory.c @@ -12850,14 +12850,17 @@ get_nodes_online(void) !symbol_exists("node_states")) return 0; - if (LKCD_KERNTYPES()) { - if ((len = STRUCT_SIZE("nodemask_t")) < 0) - error(FATAL, "cannot determine type nodemask_t\n"); - mapaddr = symbol_value("node_online_map"); - } else if (symbol_exists("node_online_map")) { - len = get_symbol_type("node_online_map", NULL, &req) - == TYPE_CODE_UNDEF ? sizeof(ulong) : req.length; - mapaddr = symbol_value("node_online_map"); + if (symbol_exists("node_online_map")) { + if (LKCD_KERNTYPES()) { + if ((len = STRUCT_SIZE("nodemask_t")) < 0) + error(FATAL, + "cannot determine type nodemask_t\n"); + mapaddr = symbol_value("node_online_map"); + } else { + len = get_symbol_type("node_online_map", NULL, &req) + == TYPE_CODE_UNDEF ? sizeof(ulong) : req.length; + mapaddr = symbol_value("node_online_map"); + } } else if (symbol_exists("node_states")) { if ((get_symbol_type("node_states", NULL, &req) != TYPE_CODE_ARRAY) || !(len = get_array_length("node_states", NULL, 0)) || -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility