On Mon, Dec 01, 2014 at 02:34:12PM +0100, Andrew Jones wrote: > On Thu, Nov 27, 2014 at 07:40:55PM +0100, Christoffer Dall wrote: > > Several people have reported problems with rebooting ARM VMs, especially > > on 32-bit ARM. This is mainly due to the same reason we were seeing > > boot errors in the past, namely that the ram, dcache, and icache weren't > > coherent on guest boot with the guest (stage-1) MMU disabled. We solved > > this by ensuring coherency when we fault in pages, but since most memory > > is already mapped after a reboot, we don't do anything. > > > > The solution is to unmap the regular RAM on system events, but we must > > take care to not unmap the GIC or other IO regions, hence the somehwat > > complicated solution. > > > > As part of figuring this out, it became clear that some semantics around > > the KVM_ARM_VCPU_INIT ABI and system event ABI was unclear (what is > > userspace expected to do when it receives a system event). This series > > also clarifies the ABI and changes the kernel functionality to do what > > userspace expects (turn off VCPUs on a system shutdown event). > > > > The code is avaliable here as well: > > http://git.linaro.org/people/christoffer.dall/linux-kvm-arm.git vcpu_init_fixes > > > > There is an alternative version with more code reuse for what is patch 4 > > in this series available here: > > http://git.linaro.org/people/christoffer.dall/linux-kvm-arm.git vcpu_init_fixes-alternative > > > > See patch 4 for more info on this one. > > > > Testing > > ------- > > This has been tested on CubieBoard, Arndale, TC2, and Juno. On Arndale > > and TC2 it was extremely easy to reproduce the setup (just start a VM > > that runs reboot from /etc/rc.local or similar) and this series clearly > > fixes the behavior. > > We've also seen reboots leading to a stuck vcpu. It appeared to be 100% > reproducible on a freshly installed guest (first reboot after running > the installer), and then intermittently afterwards. I've just tested > this patch series, and it appears to resolve the issue. No stuck vcpu > after install, and a reboot loop has been running for a while now. I'm > testing on a mustang. If you like, feel free to add a > > Tested-by: Andrew Jones <drjones@xxxxxxxxxx> > Thanks! -Christoffer -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html