* guest get stuck on stable 4.1.32
@ 2016-10-24 12:03 Shannon Zhao
2016-10-27 9:28 ` Christoffer Dall
0 siblings, 1 reply; 2+ messages in thread
From: Shannon Zhao @ 2016-10-24 12:03 UTC (permalink / raw)
To: Christoffer Dall, Marc Zyngier; +Cc: kvmarm@lists.cs.columbia.edu
Hi,
I have a testcase which fails on host linux kernel 4.1.32. The testcase
is that resetting the guest outside while rebooting inside at the same time.
By the way, the guest kernel is linux 4.4 with debian filesystem.
Here is the qemu command line:
qemu-kvm \
-smp 4 \
-enable-kvm \
-m 1024 -M virt,gic-version=2 \
-monitor telnet::5444,server,nowait \
-cpu host -nographic \
-device virtio-net-device,netdev=net0,mac="52:54:00:12:34:55" \
-netdev type=tap,id=net0,script=./qemu-ifup,downscript=no \
-drive file=debian.raw,if=none,id=drive-virtio-disk0,format=raw \
-device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \
-kernel Image-4.4 \
-append "console=ttyAMA0 root=/dev/vda1 earlycon=pl011,0x9000000 rw
dhcp"
And the test command is:
# ssh guest_ip reboot;echo system_reset|nc host_ip 5444
After executing above command several times, the guest gets stuck. The
guest log as follow:
...
Architected cp15 timer(s) running at 66.00MHz (virt).
clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles:
0xf38bc32cd, max_idle_ns: 440795204298 ns
sched_clock: 56 bits at 66MHz, resolution 15ns, wraps every 2199023255548ns
Console: colour dummy device 80x25
Calibrating delay loop (skipped), value calculated using timer
frequency.. 132.00 BogoMIPS (lpj=264000)
pid_max: default: 32768 minimum: 301
Security Framework initialized
Mount-cache hash table entries: 2048 (order: 2, 16384 bytes)
Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes)
Initializing cgroup subsys memory
Initializing cgroup subsys hugetlb
EFI services will not be available.
ASID allocator initialised with 65536 entries
I found the guest is stuck at
while ((now = jiffies) == j) in the function do_xor_speed(). Looks like
there is no timer interrupt injected to guest any more.
And the kernel 4.6 has fixed this bug, but I'm not sure if there is some
way to fix this in stable 4.1.
Thanks,
--
Shannon
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: guest get stuck on stable 4.1.32
2016-10-24 12:03 guest get stuck on stable 4.1.32 Shannon Zhao
@ 2016-10-27 9:28 ` Christoffer Dall
0 siblings, 0 replies; 2+ messages in thread
From: Christoffer Dall @ 2016-10-27 9:28 UTC (permalink / raw)
To: Shannon Zhao; +Cc: Marc Zyngier, kvmarm@lists.cs.columbia.edu
On Mon, Oct 24, 2016 at 08:03:33PM +0800, Shannon Zhao wrote:
> Hi,
>
> I have a testcase which fails on host linux kernel 4.1.32. The testcase
> is that resetting the guest outside while rebooting inside at the same time.
>
> By the way, the guest kernel is linux 4.4 with debian filesystem.
>
> Here is the qemu command line:
>
> qemu-kvm \
> -smp 4 \
> -enable-kvm \
> -m 1024 -M virt,gic-version=2 \
> -monitor telnet::5444,server,nowait \
> -cpu host -nographic \
> -device virtio-net-device,netdev=net0,mac="52:54:00:12:34:55" \
> -netdev type=tap,id=net0,script=./qemu-ifup,downscript=no \
> -drive file=debian.raw,if=none,id=drive-virtio-disk0,format=raw \
> -device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \
> -kernel Image-4.4 \
> -append "console=ttyAMA0 root=/dev/vda1 earlycon=pl011,0x9000000 rw
> dhcp"
>
> And the test command is:
>
> # ssh guest_ip reboot;echo system_reset|nc host_ip 5444
>
> After executing above command several times, the guest gets stuck. The
> guest log as follow:
>
> ...
> Architected cp15 timer(s) running at 66.00MHz (virt).
> clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles:
> 0xf38bc32cd, max_idle_ns: 440795204298 ns
> sched_clock: 56 bits at 66MHz, resolution 15ns, wraps every 2199023255548ns
> Console: colour dummy device 80x25
> Calibrating delay loop (skipped), value calculated using timer
> frequency.. 132.00 BogoMIPS (lpj=264000)
> pid_max: default: 32768 minimum: 301
> Security Framework initialized
> Mount-cache hash table entries: 2048 (order: 2, 16384 bytes)
> Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes)
> Initializing cgroup subsys memory
> Initializing cgroup subsys hugetlb
> EFI services will not be available.
> ASID allocator initialised with 65536 entries
>
> I found the guest is stuck at
> while ((now = jiffies) == j) in the function do_xor_speed(). Looks like
> there is no timer interrupt injected to guest any more.
>
> And the kernel 4.6 has fixed this bug, but I'm not sure if there is some
> way to fix this in stable 4.1.
>
Hmmm, v4.1 still used edge-triggered semantics for the timer, which was
causing reset issues with UEFI, so I wonder if that's related?
You could attempt at backporting the rework of the timers:
https://lists.cs.columbia.edu/pipermail/kvmarm/2015-September/016588.html
You might also need these commits on top:
0e3dfda91d9fe8e2c4d0b5d21434b173a241eeaf
1c5631c73fc2261a5df64a72c155cb53dcdc0c45
Thanks,
-Christoffer
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-10-27 9:28 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-24 12:03 guest get stuck on stable 4.1.32 Shannon Zhao
2016-10-27 9:28 ` Christoffer Dall
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.