All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
To: Joakim Tjernlund <Joakim.Tjernlund@lumentis.se>
Cc: linuxppc-embedded@ozlabs.org
Subject: Re: 8xx v2.6 TLB problems and suggested workaround
Date: Thu, 7 Apr 2005 09:00:13 -0300	[thread overview]
Message-ID: <20050407120013.GF14822@logos.cnet> (raw)
In-Reply-To: <BCEFJBPJCGFCNMMMIDBHKEGBCLAA.Joakim.Tjernlund@lumentis.se>

On Wed, Apr 06, 2005 at 11:24:46PM +0200, Joakim Tjernlund wrote:
> > On Tue, Apr 05, 2005 at 11:51:42PM +0200, Joakim Tjernlund wrote:
> > > Hi Marcelo
> > > 
> > > Reading your report it doesn't sound likely but I will ask anyway:
> > > Is it possible that the problem you are seeing isn't caused by the
> > > "famous" CPU bug mentioned here: 
> > > http://ozlabs.org/pipermail/linuxppc-embedded/2005-January/016351.html
> > > 
> > > The DTLB error handler needs DAR to be set correctly and since the
> > > dcbX instructions doesn't set DAR in either DTLB Miss nor DTLB Error you
> > > may end up trying to fix the wrong address.
> > 
> > Hi Joakim,
> > 
> > First of all, thanks your care!
> 
> NP, I want to be able to run 8xx on 2.6 in the future.
>  
> > 
> > Well, I dont think the above issue is exactly what we're hitting because
> > DAR is correctly updated on our case with "dcbst".
> 
> Are you sure? Cant remeber all details but this looks a bit strange to me
> SPR  826 : 0x00001f00         7936
> is not 0x00001 supposed to be the physical page? 

SPR 826 contains the page attributes, not Physical Page Number (which is held 
by SPR 825).

> Also DSISR: C2000000 looks strange and "impossible". Are you sure this value
> is correct?  

As defined by the PEM, bit 1 indicates "data-store error exception", bit 2 
indicates:

"Set if the translation of an attempted access is not found in the primary hash 
table entry group (HTEG), or in the rehashed secondary HTEG, or in the range of a 
DBAT register (page fault condition); otherwise cleared." 

And bit 6 indicates a store operation (shouldnt be set). 

> Don't understand why the "tlbie()" call  works around the problem. Can you
> explain that a bit more?

It must be because the TLB entry is now removed from the cache, which avoids 
dcbst from faulting as a store.

There must be some relation to the invalid present TLB entry and dcbst
misbehaviour.

I didnt check what happens with the TLB after tlbie(), I should do that.
But I suppose it gets wiped off? 

> > The problem is that it is treated as a write operation, but shouldnt.
> > 
> > Maybe it is related to dcbst's inability to set DAR?
> 
> Could be, but even if it isn't you are in trouble when dcbX instr.
> generates DTLB Misses/Errors Sooner or later you will end up with
> strange SEGV or hangs.

Hangs due to the dcbX misbehaviour wrt DAR setting, you mean? (which your 
patch corrects).

Yep, that makes sense.

> > BTW, about the CPU15 bug fix, has there been any effort to port/merge 
> > it in v2.6 ?
> 
> None that I know.

  reply	other threads:[~2005-04-07 17:24 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-05 21:51 8xx v2.6 TLB problems and suggested workaround Joakim Tjernlund
2005-04-06 12:16 ` Marcelo Tosatti
2005-04-06 21:24   ` Joakim Tjernlund
2005-04-07 12:00     ` Marcelo Tosatti [this message]
2005-04-07 20:35       ` Joakim Tjernlund
2005-04-07 19:38         ` Marcelo Tosatti
2005-04-08  2:09           ` Dan Malek
2005-04-08 11:07             ` Marcelo Tosatti
2005-04-09  5:16               ` Dan Malek
2005-04-09 19:03                 ` Joakim Tjernlund
2005-04-09 22:37                   ` Marcelo Tosatti
2005-04-10 10:08                     ` Joakim Tjernlund
2005-04-22 17:14                     ` Marcelo Tosatti
2005-04-23 21:55                   ` Dan Malek
2005-04-23 22:07                     ` Joakim Tjernlund
2005-04-23 22:23                       ` Dan Malek
2005-04-08  8:01           ` Joakim Tjernlund
2005-04-08 13:39             ` Dan Malek
2005-04-08 14:29               ` Joakim Tjernlund
  -- strict thread matches above, loose matches on Subject: below --
2005-04-04 19:17 Marcelo Tosatti
2005-04-04 20:09 ` Marcelo Tosatti
2005-04-05  7:08   ` Pantelis Antoniou
2005-04-05  1:11 ` Kumar Gala
2005-04-05 15:58 ` Dan Malek
2005-04-05 11:41   ` Marcelo Tosatti
2005-04-05 20:26     ` Marcelo Tosatti
2005-04-06  6:00   ` Pantelis Antoniou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050407120013.GF14822@logos.cnet \
    --to=marcelo.tosatti@cyclades.com \
    --cc=Joakim.Tjernlund@lumentis.se \
    --cc=linuxppc-embedded@ozlabs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.