qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [PATCH] target-ppc: Eliminate redundant and incorrect fun


From: alarson
Subject: Re: [Qemu-ppc] [PATCH] target-ppc: Eliminate redundant and incorrect function booke206_page_size_to_tlb
Date: Mon, 27 Jun 2016 10:55:03 -0500

David Gibson <address@hidden> wrote on 06/27/2016 12:32:13 
AM:

> From: David Gibson <address@hidden>
> To: address@hidden
> Cc: address@hidden, address@hidden, address@hidden
> Date: 06/27/2016 12:30 AM
> Subject: Re: [PATCH] target-ppc: Eliminate redundant and incorrect 
function booke206_page_size_to_tlb
> 
> On Sun, Jun 26, 2016 at 09:38:03PM -0500, address@hidden wrote:
> > David Gibson <address@hidden> wrote on 06/26/2016 
08:36:52 
> > PM:
> > 
> > > From: David Gibson <address@hidden>
> > > To: Aaron Larson <address@hidden>
> > > Cc: address@hidden, address@hidden, address@hidden
> > > Date: 06/26/2016 08:58 PM
> > > Subject: Re: [PATCH] target-ppc: Eliminate redundant and incorrect 
> > function booke206_page_size_to_tlb
> > > 
> > > On Fri, Jun 24, 2016 at 12:11:00PM -0700, Aaron Larson wrote:
> > > > 
> > > > Eliminate redundant and incorrect booke206_page_size_to_tlb 
function
> > > > from ppce500_spin.c in preference to previously existing but newly
> > > > exported definition from e500.c
> > > > 
> > > > Signed-off-by: Aaron Larson <address@hidden>
> > > 
> > > Uh.. sorry.. can you provide a reference explaining why the removed
> > > version is wrong?  Doesn't this depend on which MMU Architecture
> > > Version we're emulating?
> > 
> > Sure, the code is internally inconsistent (shift assumed didn't match 
> > shift defined).  I will provide an update commit message, similar to 
the 
> > original posting I made a few days ago with the "direction"
> > corrected.
> 
> Right, I can see that the two old versions were different, which was
> clearly wrong.  What I'm looking for is an explanation of why the one
> you've picked is the right one, not the other one.

How's this?

Eliminate redundant and incorrect booke206_page_size_to_tlb function
from ppce500_spin.c in preference to previously existing but newly
exported definition from e500.c

The booke206_page_size_to_tlb function in e500.c was updated in commit
2bd9543cd303d9f6cbd37b7466bb03543035156b to reflect a change in the
definition of MAS1_TSIZE_SHIFT from 8 (corresponding to a min TLB page
size of 4kb) to a value of 7 (TLB page size 2k).  The
booke206_page_size_to_tlb() function defined in ppce500_spin.c was
never updated to reflect the change in MAS1_TSIZE_SHIFT.

In http://lists.nongnu.org/archive/html/qemu-ppc/2016-06/msg00533.html,
Scott Wood suggested this "root cause" explanation:

SW> The patch that changed MAS1_TSIZE_SHIFT from 8 to 7 was around the
SW> same time as the patch that added this code, which is probably why
SW> adjusting it got missed.  Commit 2bd9543cd3 did update the
SW> equivalent code in ppce500_mpc8544ds.c, which now resides in
SW> hw/ppc/e500.c and has been changed to not assume a power-of-2
SW> size.  The ppce500_spin version should be eliminated.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]