Source-Changes archive

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

Re: CVS commit: src/libexec/ld.elf_so/arch/powerpc



On Mon, Sep 26, 2005 at 02:33:52PM +0000, Charles M. Hannum wrote:
> On Monday 26 September 2005 05:45, Chuck Silvers wrote:
> > Module Name:        src
> > Committed By:       chs
> > Date:               Mon Sep 26 05:45:13 UTC 2005
> >
> > Modified Files:
> >     src/libexec/ld.elf_so/arch/powerpc: ppc_reloc.c
> >
> > Log Message:
> > fix two problems with icache invalidation of the PLT:
> >  - restore revision 1.33, it was correct.
> 
> It took me a few minutes to refresh myself on what's going on here, but...
> 
> No, it is *not* correct.  Please take the time to understand the PLT format 
> before messing with it.
> 
> On PPC, the PLT area is split into two sections: the first contains code, and 
> is actually 8 or 16 bytes per entry; the second contains pointers, and does 
> not need to be synced.  The 8 vs. 16 split happens if the PLT is larger than 
> 8192 entries.
> 
> I have to admit that I'm not completely sure if the "large PLT" support does 
> the right arithmetic -- I never got clear documentation on the format -- but 
> the basic deal of only flushing 8 (or 16) bytes is definitely correct, and 
> should not have been changed.
> 
> Please revert it and add a comment for the next person who is going to screw 
> it up.  I believe Matt Thomas is the one who clued me into this the first 
> time around.

Then I think we are left with a problem. A previous thread on 
tech-userlevel indicated that this change (well, the patch Chuck sent out 
which led to this change) fixed build issues for at least one user. So if 
this fix is not right, then we have a problem that it masks. :-|

Take care,

Bill

Attachment: pgpMjxJNug8zI.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index