Cai Quan bumped into another problem when running against the xen hypervisor, where entering the "set" command alone with no arguments generates a SIGSEGV. I also note that "set -c #" and "set -p" options make no sense either: # crash --xen_phys_start 3ee00000 xen-syms-2.6.18-92.el5 vmcore crash 4.0-7.2 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Red Hat, Inc. Copyright (C) 2004, 2005, 2006 IBM Corporation Copyright (C) 1999-2006 Hewlett-Packard Co Copyright (C) 2005, 2006 Fujitsu Limited Copyright (C) 2006, 2007 VA Linux Systems Japan K.K. Copyright (C) 2005 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 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"... KERNEL: xen-syms-2.6.18-92.el5 DEBUGINFO: ./xen-syms-2.6.18-92.el5.debug DUMPFILE: vmcore CPUS: 2 DOMAINS: 4 UPTIME: 00:34:18 MACHINE: Intel(R) Pentium(R) 4 CPU 3.40GHz (3400 Mhz) MEMORY: 1 GB PCPU-ID: 1 PCPU: ffff83003f05ff28 VCPU-ID: 1 VCPU: ffff83003eef6080 (VCPU_RUNNING) DOMAIN-ID: 0 DOMAIN: ffff83003eef8080 (DOMAIN_RUNNING) STATE: CRASH crash> set -c 0 set: invalid cpu number: system has only 0 cpu crash> set -p set: no panic task found! crash> set Segmentation fault # Admittedly it's a nonsensical usages of "set", since there's no concept of a PID "context" in the hypervisor. The attached patch changes the behavior to: crash> set -c 0 set: -c option not supported on this architecture or kernel crash> set -p set: -p option not supported on this architecture or kernel crash> set set: requires an option with the Xen hypervisor crash> Itsura, are you OK with the attached patch? Thanks, Dave
--- crash/tools.c.orig +++ crash/tools.c @@ -1673,6 +1673,9 @@ cmd_set(void) switch(c) { case 'c': + if (XEN_HYPER_MODE()) + option_not_supported(c); + if (!runtime) { error(INFO, "cpu setting not allowed from .%src\n", @@ -1689,6 +1692,9 @@ cmd_set(void) return; case 'p': + if (XEN_HYPER_MODE()) + option_not_supported(c); + if (!runtime) return; @@ -1723,7 +1729,10 @@ cmd_set(void) } if (!args[optind]) { - if (runtime) + if (XEN_HYPER_MODE()) + error(INFO, + "requires an option with the Xen hypervisor\n"); + else if (runtime) show_context(CURRENT_CONTEXT()); return; }
-- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility