On 02.09.2009, at 07:40, Benjamin Herrenschmidt wrote:

On Fri, 2009-07-24 at 18:30 +0200, Alexander Graf wrote:
KVM for PowerPC only supports embedded cores at the moment.

While it makes sense to virtualize on small machines, it's even more fun to do so on big boxes. So I figured we need KVM for PowerPC64 as well.

This patchset implements KVM support for Book3s_64 hosts and guest support
for Book3s_64 and G3/G4.

To really make use of this, you will also need a modified version of qemu that can deal with KVM on desktop cores. I will send out patches for those
later, but want to get feedback on the kernel side first.

In the meanwhile, use the qemu version from
http://www.powerkvm.org/powerkvm.git which already includes all required
patches to run G3/G4 and G5 guests.

The git pull request is good when the series is good to pull or for
testing, but for review patches are nice :-)

Ok, guess I'll go back to sending patches in the future then ;-).

So I never got enough time to look into too much details so far
(I'm still up for a little walkthrough on IRC one of these days
btw) but I did look at the changes to the powerpc core code and
they look ok to me.

The only thing I couldn't quite figure out is why you are adding
exports for mm_alloc() and switch_slb().

Well, we need mm_alloc to reserve a VA range. And since that happens in module code, it needs to be exported.

As far as switch_slb goes, I think with the new "always switch the full SLB in entry/exit code" logic, that's not required anymore.

I spotted tons of stuff that could be optimized

Yes. It might also be worth collecting all the potential optimizations on some wiki, so if someone feels like jumping in on this project, he knows where to start. It'd even be good for us, because I always tend to forget where exactly the code is the worst :-).

, especially in the
interrupt handling (but then, we all agree that using a magic page
is going to be much better)

The interrupt handling is a separate beast that should be handled more generically, but the current code works for KVM at least. Let's take baby steps here.

, and I suppose we need to have a close
look at some aspects of the MMU emulation.

I fully agree. The MMU emulation could probably also get quite some speedups. For the first version I merely wanted to have something that boots and runs Linux.

But for now, I'm happy with the merge, feel free to add my Acked-by,
just make sure it's marked CONFIG_EXPERIMENTAL.

It definitely is experimental still, so yes, I agree.

Should I send out a v4 that removes the slb_switch export and marks things as experimental?

Alex

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

Reply via email to