----- Original Message -----
Hello everyone,
i have a problem with crash-utility 7.1.5 and xen 4.7.0
i have installed the kexec-tools for saveing the vmcore in case of a
Hypervisor crash. If i simulated this via xl debug-key C, i get the vmcore.
now, if i want to analyze this vmcore via crash:
crash --hyper /usr/lib/debug/xen-syms-4.7.0 vmcore
i got the follwing message:
GNU gdb (GDB) 7.6
Copyright (C) 2013 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 "x86_64-unknown-linux-gnu"...
crash: cannot resolve "schedulers"
if i execute this command with debug output:
crash -d3 --hyper /usr/lib/debug/xen-syms-4.7.0 vmcore
i got the follwing:
gdb /usr/lib/debug/xen-syms-4.7.0
GNU gdb (GDB) 7.6
Copyright (C) 2013 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 "x86_64-unknown-linux-gnu"...
GNU_GET_DATATYPE[note_buf_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_core_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_info_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_info_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_info_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[xen_crash_xen_regs_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[note_buf_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_t]: returned via gdb_error_hook
GNU_GET_DATATYPE[crash_note_xen_core_t]: returned via gdb_error_hook
sp=ffff8300e7507fc0, cpu_info=ffff8300e7507f18
sp=ffff830c14ec7fc0, cpu_info=ffff830c14ec7f18
sp=ffff830c14e6ffc0, cpu_info=ffff830c14e6ff18
sp=ffff830c17ee7fc0, cpu_info=ffff830c17ee7f18
sp=ffff830617feffc0, cpu_info=ffff830617feff18
sp=ffff830617fdffc0, cpu_info=ffff830617fdff18
sp=ffff830617fd7fc0, cpu_info=ffff830617fd7f18
sp=ffff830617fc7fc0, cpu_info=ffff830617fc7f18
idle_vcpu=ffff8300e72fe000, domain=ffff830c17ef8000
crash: cannot resolve "schedulers"
under xen 4.6.0 with crash-utility 7.1.5
it works.
have anybody tips or hint´s what the problem is and how to solve it.
all the best
guido
The "schedulers" symbol came from the Xen "common/schedule.c" file,
where
one example upstream Xen source code repo shows it looking like this:
static const struct scheduler *schedulers[] = {
&sched_credit_def,
&sched_credit2_def,
&sched_arinc653_def,
&sched_rtds_def,
};
I don't know where the 4.7 Xen source code repo is located, but google'ing
for "Xen common/schedule.c" also shows a few instances where the
"schedulers"
symbol looks to have been redefined like so:
extern const struct scheduler *__start_schedulers_array[], *__end_schedulers_array[];
#define NUM_SCHEDULERS (__end_schedulers_array - __start_schedulers_array)
#define schedulers __start_schedulers_array
That being the case, it's going to require that the xen_hyper_scheduler_init()
function the crash utility's xen_hyper.c file to be reworked to handle both the
old and new versions of "schedulers".
I personally don't do any support for the Xen hypervisor, but there should be
somebody on this list that would be interested in maintaining support for it
and posting a patch.
Dave