----- hutao@xxxxxxxxxxxxxx wrote: > Hi, > > I encountered a problem on getting backtrace with a `virsh dump' dumped > kvm dumpfile, the bt command did not get kernel backtrace properly. > > guest kernel: 2.6.32 > crash: 5.0.6 patched with qemu_ram_version_4.patch(attached) > > steps to get dumpfile: > > 1. virsh start vm > 2. connect to vm, say by vnc > 3. On guest, build and run the code: > > int main(void) > { > while (1); > > return 0; > } > > 4. On host, run `virsh dump vm > /mnt/data/kernel-2.6.32.dump3-userspace-endless-loop' > > Then run crash: > > crash /mnt/data/kernel/linux-2.6.32/System.map > /mnt/data/kernel/linux-2.6.32/vmlinux > /mnt/data/kernel-2.6.32.dump3-userspace-endless-loop > > got the result: > > crash 5.0.6 > Copyright (C) 2002-2010 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 (GDB) 7.0 > Copyright (C) 2009 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"... > > SYSTEM MAP: /mnt/data/kernel/linux-2.6.32/System.map > DEBUG KERNEL: /mnt/data/kernel/linux-2.6.32/vmlinux (2.6.32) > DUMPFILE: /mnt/data/kernel-2.6.32.dump3-userspace-endless-loop > CPUS: 1 > DATE: Fri Aug 27 05:18:12 2010 > UPTIME: 00:00:51 > LOAD AVERAGE: 0.44, 0.11, 0.03 > TASKS: 67 > NODENAME: localhost.localdomain > RELEASE: 2.6.32 > VERSION: #2 SMP PREEMPT Wed Aug 25 15:26:48 CST 2010 > MACHINE: x86_64 (2925 Mhz) > MEMORY: 511.6 MB > PANIC: "Oops: 0003 [#1] PREEMPT SMP " (check log for details) > PID: 0 > COMMAND: "swapper" > TASK: ffffffff8158df70 [THREAD_INFO: ffffffff8154e000] > CPU: 0 > STATE: TASK_RUNNING > WARNING: panic task not found > > crash> bt > PID: 0 TASK: ffffffff8158df70 CPU: 0 COMMAND: "swapper" > #0 [ffffffff8154fe28] schedule at ffffffff8138baa3 > bt: invalid kernel virtual address: 41 type: "call byte" > bt: invalid kernel virtual address: 44e6835ad type: "call byte" > bt: load_memfile_offset: read: Success > bt: read error: kernel virtual address: fffffffffffffffc type: "call byte" > bt: invalid kernel virtual address: e7ab type: "call byte" > bt: invalid kernel virtual address: e273 type: "call byte" > bt: invalid kernel virtual address: 13a7b type: "call byte" > bt: invalid kernel virtual address: 935cb type: "call byte" > bt: load_memfile_offset: read: Success > bt: read error: kernel virtual address: fffffffffffffffb type: "call byte" > bt: invalid kernel virtual address: 935cb type: "call byte" > #1 [ffffffff8154fef0] cpu_idle at ffffffff8100ad1e > crash> > > > Note the output of `bt' command. Without running that endless-loop > code then`bt' got: > > > crash> bt > PID: 0 TASK: ffffffff8158df70 CPU: 0 COMMAND: "swapper" > #0 [ffffffff8154fe28] schedule at ffffffff8138baa3 > #1 [ffffffff8154fe48] apic_timer_interrupt at ffffffff8100c65e > #2 [ffffffff8154fed0] need_resched at ffffffff810125a8 > #3 [ffffffff8154fee0] default_idle at ffffffff81012e03 > #4 [ffffffff8154fef0] cpu_idle at ffffffff8100acd6 > crash> > > > Any suggestions on how to solve the problem? Not really. If there's no kernel crash, then the selection of the current context defaults to the cpu 0 swapper task. I don't know what was happening to the "swapper" task at the time that the guest was paused. If you want to make the vmlinux/dumpfile available for me to download, I can take a look. (I don't know why you're using a System.map). Dave > > Regards, > Hu Tao -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility