[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: |
Alexander Graf |
Subject: |
Re: [Qemu-ppc] [PATCH 6/8] target-ppc: Rework get_physical_address() |
Date: |
Sat, 23 Feb 2013 11:38:23 +0100 |
Am 23.02.2013 um 07:28 schrieb David Gibson <address@hidden>:
> 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.
If you're convinced the path you're taking is already correct, don't post
patches as RFC :). It would also be nice to mention that plan in the cover
letter, so that I can potentially comment on it.
Alex
>
> --
> 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
- [Qemu-ppc] [PATCH 3/8] target-ppc64: Disentangle 64-bit version of pte_check(), (continued)
- [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