[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 6/8] target-ppc: Rework get_physical_address()
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH 6/8] target-ppc: Rework get_physical_address() |
Date: |
Sat, 23 Feb 2013 17:28:23 +1100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Fri, Feb 22, 2013 at 05:06:52PM +0100, Alexander Graf wrote:
>
> On 12.02.2013, at 03:00, David Gibson wrote:
>
> > Currently get_physical_address() first checks to see if translation is
> > enabled in the MSR, then in the translation on case switches on the mmu
> > type. Except that for BookE MMUs, translation is always on, and so it
> > has to switch in the "translation off" case as well and do the same thing
> > as the translation on path for those MMUs. Plus, even translation off
> > doesn't behave exactly the same on the various MMU types so there are
> > further mmu type checks in the "translation off" path.
> >
> > As a first step to cleaning this up, this patch moves the switch on mmu
> > type to the top level, then makes the translation on/off check just for
> > those mmu types where it is meaningful.
>
> Eventually the mmu translation should just be a class dispatched
> indirect function call. I don't think it's within the scope of this
> first round of cleanup though.
I agree. My plan was to first push the switching all up to the top
level as I've done, then replace that with a method dispatch
afterwards.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: Digital signature
- [Qemu-ppc] [PATCH 1/8] target-ppc: Trivial cleanups in mmu_helper.c, (continued)
- [Qemu-ppc] [PATCH 1/8] target-ppc: Trivial cleanups in mmu_helper.c, David Gibson, 2013/02/11
- [Qemu-ppc] [PATCH 3/8] target-ppc64: Disentangle 64-bit version of pte_check(), David Gibson, 2013/02/11
- [Qemu-ppc] [PATCH 7/8] target-ppc: Disentangle 64-bit hash MMU get_physical_address() paths, David Gibson, 2013/02/11
- [Qemu-ppc] [PATCH 8/8] target-ppc Disentangle ppc64 hash mmu path for cpu_ppc_handle_mmu_fault, David Gibson, 2013/02/11
- [Qemu-ppc] [PATCH 5/8] target-ppc: Disentangle 64-bit version of get_segment(), David Gibson, 2013/02/11
- [Qemu-ppc] [PATCH 6/8] target-ppc: Rework get_physical_address(), David Gibson, 2013/02/11
[Qemu-ppc] [PATCH 2/8] target-ppc: Move SLB handling into a mmu-hash64.c, David Gibson, 2013/02/11
[Qemu-ppc] [PATCH 4/8] target-ppc: Disentangle 64-bit version of find_pte(), David Gibson, 2013/02/11
Re: [Qemu-ppc] [Qemu-devel] [0/8] RFC: target-ppc: Start disentangling different MMU types, Andreas Färber, 2013/02/12
Re: [Qemu-ppc] [0/8] RFC: target-ppc: Start disentangling different MMU types, Alexander Graf, 2013/02/22