Re: [PATCH 00/13] KVM: PPC: e500: SPE and MMU

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

 



On 06.06.2011, at 20:38, Scott Wood wrote:

> On Sat, 4 Jun 2011 01:59:34 +0200
> Alexander Graf <agraf@xxxxxxx> wrote:
> 
>> 
>> On 03.06.2011, at 01:15, Scott Wood wrote:
>> 
>>> This patchset contains SPE state management for e500 KVM guests, as well
>>> as MMU enhancements (performance, userspace visibility, and support for
>>> mapping things that aren't standard kernel-managed pages).
>>> 
>>> They are combined into one patchset because they both touch the
>>> MSR update code.
>> 
>> I figured I'd try something new and just applied the whole patch set to see if it actually works. Of course it doesn't :). When I start a guest, it hangs at the point below in guest context and loops at 100%. Trying to dump the registers makes the whole process stall and drop down to 0% cpu usage. Only an external kill helps by then.
> 
> Works for me, with qemu d800040fb47fe4500d1f8bf604b9fd129bda9419 and the
> patchset applied to kernel f19ae5734c8d729edee7ad96179b507561541981, same
> kernel as guest.  Dumping registers works without noticable delay.
> 
>> root@e500:/dev/shm/qemu# ./ppc-softmmu/qemu-system-ppc -nographic -kernel /boot/uImage.autotest -append 'root=/dev/vda3 console=ttyS0 rw' -enable-kvm -m 512 -M mpc8544ds -drive file=/dev/shm/test.qcow2,index=0,if=virtio
>> KVM: Couldn't find level irq capability. Expect the VM to stall at times!
> 
> Why couldn't it find level irq capability?  What kernel tree/headers are you
> using?

Ugh - I was building that one manually with old headers. No change with recent ones though. I hit the change in behavior through autotest, where I build everything with proper headers.

> 
>> (gdb) l *0xc000e344
>> 0xc000e344 is at arch/powerpc/kernel/idle_e500.S:74.
>> 69		oris	r7,r7,MSR_WE@h
>> 70		ori	r7,r7,MSR_EE
>> 71		msync
>> 72		mtmsr	r7
>> 73		isync
>> 74	2:	b	2b
>> 75	
>> 76	/*
>> 77	 * Return from NAP/DOZE mode, restore some CPU specific registers,
>> 78	 * r2 containing physical address of current.
> 
> So, the guest is idle.
> 
> Are you using i/o thread?  I had very similar problems without it, IIRC
> before making any of these changes.

This is without i/o thread, as that one's still got shortcomings on PPC and is considered unstable :). My tests worked fine without iothread before your patches, now they break. This could however be related to us getting less exits from the VM. It could also be a bug in the magic page code. Still trying to debug it.


Alex

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM Development]     [KVM ARM]     [KVM ia64]     [Linux Virtualization]     [Linux USB Devel]     [Linux Video]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux