How to fix 8xx dcbst bug?

Joakim Tjernlund Joakim.Tjernlund at lumentis.se
Sun May 8 08:47:38 EST 2005


> 
> In message <JPEALJAFNGDDLOPNDIEECEAKDDAA.joakim.tjernlund at lumentis.se> you wrote:
> >
> ...
> > safe, just look at ld.so. This should not be a requirement but for 8xx it is currently and I think 8xx gets
> > away with it because nobody is using swap on 8xx.
> 
> I understand that the "not using swap" refers to 2.6 kernel only, right?
> 
> Because on 2.4, we use swap on several systems quite heavily. I  have
> to admit that we had to patch pgtable.h to get it work.

I was once told by a senior kernel hacker(Dan?) that using swap could make an already
populated pte invalid. This was for 2.4 kernels.

ldso uses dcbst and icbi heavly during relocation but always after doing a store to the
address in question. That will make sure that if dcbst/icbi causes a TLB Miss, it will be
a simple/regular TLB miss not requiring any special handling i fault.c

Perhaps using dcbst/icbi in this way will not make the pte go away between the store and the
dcbst/icbi instructions when also using swap. Someone more exprienced will have to answer that.

 Jocke



More information about the Linuxppc-embedded mailing list