[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-discuss] qemu-system-arm linux guest reboot sometimes hangs

From: Jaap Crezee
Subject: [Qemu-discuss] qemu-system-arm linux guest reboot sometimes hangs
Date: Tue, 16 Oct 2018 11:16:04 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0

Hi all,

I am having a stability issue which results in some of my nightly builds 
failing. During nightly testing, the VM is rebooted. Most reboots work fine,
but occasionally the VM hangs. The issue seems to be reproducible more 
difficult on my development desktop, but it is observable there after some
time. I created a reboot tool which logs in over ssh on the VM and reboots it. 
It will detect the machine goes down (icmp) and waits for it to come
back (icmp). Once it is back, the tool waits some random time between 1 and 20 
seconds and starts the reboot cycle again. Eventually the tool fails
because the VM does not come back: it hangs.

My current setup consist of a qemu-system-arm v3.0.0 running a Linux VM 
containing a very simple system which is rebooted. The 'system' is invoked 

qemu-system-arm -pidfile /tmp/sim_demo.pid --machine virt -cpu cortex-a15 -m 
512 -kernel bin/kernel.img -drive
  if=none,file=tmp/flash.bin,format=qcow2,id=flash -device 
virtio-blk-device,drive=flash -netdev bridge,br=br1,id=mynet
  -device virtio-net-device,netdev=mynet,mac=52:54:00:00:00:46 -s -smp 2 
-device virtio-balloon -device virtio-rng-device
  -append loglevel=7 rdinit=/start -initrd bin/initramfs.cpio.lzo

VM kernel version:

Linux version 4.14.74 (address@hidden) (gcc version 7.1.1 20170510 (Linaro GCC 
7.1-2017.05)) #1 SMP PREEMPT Mon Oct 8 20:24:22 CEST 2018

Symptom (console/uart output from VM/qemu):

The system is going down NOW!
Sent SIGTERM to all processes
Sent SIGKILL to all processes
Requesting system reboot
[   17.665741] reboot: Restarting system

Gdb in that case:

(gdb) target remote localhost:1234
Remote debugging using localhost:1234
0x40000000 in ?? ()
(gdb) bt
#0  0x40000000 in ?? ()
(gdb) c

During GDB interruption, if I dump the registers (info registers) all registers 
contain 0, except

PSR=400001d3 -Z-- A svc32

info status then reports paused (expected), when I continue in gdb if reports 
running (expected).

What can I do to debug this issue to get some helpful data or work in the 
direction of a fix?


Jaap Crezee

reply via email to

[Prev in Thread] Current Thread [Next in Thread]