On 25 July 2012 07:17, Rusty Russell <rusty.russ...@linaro.org> wrote: > On Tue, 17 Jul 2012 19:19:16 +0100, Peter Maydell <peter.mayd...@linaro.org> > wrote: >> So I can't see anything better than "complain and return failure >> from kvm_arch_init_vcpu() if the guest CPU isn't going to work". > > OK, here's what I have for kvm. It matches the kernel patches I just > sent out, with the updated API. > > I rewrote all the backwards compat stuff to wrap it in #ifdef > HORRIBLE_COMPAT_HACK, but something subtle broke and it no longer set > cpsr correctly for older kernels. After wasting an afternoon on it, I > gave up and threw out the backwards compat code in digust. > > Nor does it bisect, since we update the headers as you asked, then > update the code.
Looks ok. We'll probably rewrite that register read/write code at some point before upstreaming -- I want to see if we can do that as a straightforward "iterate through cp15 hash table and do something for every register" kind of loop, but this is OK for purposes of staying in sync with the kernel. I'm going to hold off on putting this in qemu-linaro until Christoffer has acked the ABI changes on the kernel side, though. > Local update of linux-headers/asm-arm/kvm.h >From the commit message for that: # Worse, the new arm kvm_para.h includes asm-generic/kvm_para.h, # which isn't included in qemu. That we can deal with now, though: update-linux-headers.sh just needs updating to include it in its non-arch-specific set of copied headers. -- PMM