[uClibc] ldso 0.9.21, libstdc++ crashes on PowerPC GCC 3.3.1
Joakim Tjernlund
joakim.tjernlund at lumentis.se
Wed Nov 5 10:19:45 UTC 2003
> -----Original Message-----
> From: Joakim Tjernlund [mailto:joakim.tjernlund at lumentis.se]
> > > dcbst(and dcbz, dcbi, dcbf, dcbt) are buggy on mpc8xx.
> They don't update
> > > the DAR register on a Data TLB Miss/Error. By deferencing
> the data just before
> > > the dcbst, you make the DTLB Miss/Error happen before the
> > > dcbst is executed. That works around the problem but is
> not a stable
> > > solution. You need a somewhat ugly patch to the linux
> kernel or don't use
> > > these instructions at all.
>
> > Ah! Someone Who Knows What They Are Doing(TM)! Do you have any more
> > information on this kernel patch? How does glibc work
> around this issue?
>
> They don't use these instructions for 8xx.
Appears I was wrong. ld.so DO use these instructions, an objdump -D ld.so shows 7
dcbst and 7 dcbi instructions. Don't know why it works, perhaps they do something special
or it is just luck. Executing a store just before the dcbst will help, but I don't think
it is 100% reliable.
Jocke
>
> Jocke
>
> PS.
> Please include me in your replies as I am not on the list
More information about the uClibc
mailing list