On 24.08.2009, at 19:33, Hollis Blanchard wrote:
On Mon, 2009-08-24 at 10:44 +0800, Liu Yu-B13201 wrote:
IMHO userspace should do the translation and do an ioctl to
fetch the
required information (soft TLB cache / SLB / SDR1) so we can
reuse the
existing qemu infrastructure.
BOOK3S has mmu implement in qemu, but BOOKE doesn't.
Even if it did, I'd be skeptical. But you're right that that's a
critical point: as things stand today, only KVM (not qemu) emulates
the
Book E MMU.
Well, that's the whole point I was trying to make.
If we had the booke mmu implemented in qemu debugging would be a lot
easier I guess. Also it'd benefit people who for whatever reason want
to emulate a booke cpu instead of virtualizing one, maybe because
their development machines are x86 ;-).
If I remember the x86 KVM architecture correctly, CR3 (the register
holding a phys addr to the current pagetable) gets pulled by userspace
and then qemu does the complete translation based on that information.
So yes, we do have two separate MMU implementations for x86 here, but
that's a good thing IMHO, because it makes it easier to spot bugs and
find out where things went wrong.
So my suggestion is: Implement the BOOKE MMU in Qemu, make an IOCTL to
pull the TLB to userspace and thus make life easier for everyone.
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