From: "Joakim Tjernlund" <Joakim.Tjernlund@lumentis.se>
To: "Dan Malek" <dan@embeddededge.com>
Cc: "Till Straumann" <strauman@SLAC.Stanford.EDU>,
"Tom Rini" <trini@kernel.crashing.org>,
"Linuxppc-Embedded@Lists. Linuxppc. Org"
<linuxppc-embedded@lists.linuxppc.org>
Subject: Re: dcbz works on 862 everywhere!
Date: Thu, 27 Mar 2003 22:49:09 +0100 [thread overview]
Message-ID: <002f01c2f4aa$b60b80a0$020120b0@jockeXP> (raw)
In-Reply-To: 3E81F6FD.2000407@embeddededge.com
> > hmm, why would not dcbz execute properly? Surely the instruction is restarted
> > when the DTLB Miss/Error handler return?
>
> Write a test to verify it. I know there were cases in the past when
> it didn't work. You would notice it when you expected to have some
> zero initialized spaces that weren't.
I think Till's superb analysis show that this is not a problem.
>
> > In a earlier mail you said the there was a case where the "normal" instructions
> > would not set MD_EPN in the DTLB Error handler and that it was documented.
> > What case is this and where can I find this documentation?
>
> Well, it's more of an interpretation of the documentation and discussions
> with Motorola engineers.
So this case is mere speculation and has never been proven?
[SNIP]
> For TLB miss exceptions, the Mx_xxx hardware assist registers work
> properly, as documented, to minimize the number of instructions needed
> to determine what PTE to load. The TLB miss exception has exactly
> one function, to as quickly as possible locate the PTE from the table
> hierarchy and stuff the bits into the MMU. That's it and it should
> really be implemented in five lines of code.
Five lines of code, that I would like to see :-) Seriously, why do the
DTLB handlers have two tables, one for kernel space and one for the rest?
Can the DataAccess path be removed in the DTLB Miss handler?
[SNIP]
> > Maybe Till Straumann's suggestion to set the DAR register to a known "bad" address
> > when leaving an exception. Then test for this bad address in the DTLB error handler
> > to decide what register to trust?
>
> Not necessary.
>
> By not "correctly" tracking usage and dirty pages, as we did in the past,
> it caused us to never generate DTLB Error exceptions unless it was truly
> an access to a non-recoverable bad address or if the page was swapped out.
> I would just set 'used' on every instruction page and 'used + dirty' on
> every data page allocation. A static embedded system would just converge on
> this point anyway, but in more dynamic systems it cost more real memory.
hmm, don't you loose copy-on-write by doing so?
Would the suggested instruction decoding in the DLTB Error handler
be too ugly for your liking?
Since dcbi also causes DTLB Errors with undefined values in DAR and MD_EPN it
might be a good idea.
Jocke
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2003-03-27 21:49 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-03-24 10:19 dcbz works on 862 everywhere! Joakim Tjernlund
2003-03-24 11:01 ` Joakim Tjernlund
2003-03-24 12:25 ` Joakim Tjernlund
2003-03-24 14:20 ` Joakim Tjernlund
2003-03-24 17:09 ` Till Straumann
2003-03-24 17:42 ` Joakim Tjernlund
2003-03-24 20:15 ` Tom Rini
2003-03-24 20:57 ` Joakim Tjernlund
2003-03-24 21:07 ` Tom Rini
2003-03-24 21:54 ` Joakim Tjernlund
2003-03-24 22:59 ` Dan Malek
2003-03-25 0:33 ` Joakim Tjernlund
2003-03-24 21:42 ` Dan Malek
2003-03-24 21:51 ` Joakim Tjernlund
2003-03-24 22:44 ` Joakim Tjernlund
2003-03-24 23:09 ` Dan Malek
2003-03-24 23:57 ` Joakim Tjernlund
2003-03-25 0:48 ` Dan Malek
2003-03-25 1:22 ` Dan Malek
2003-03-25 14:02 ` Joakim Tjernlund
2003-03-26 2:17 ` Till Straumann
2003-03-26 7:57 ` Joakim Tjernlund
2003-03-26 15:18 ` Dan Malek
2003-03-26 17:04 ` Joakim Tjernlund
2003-03-26 18:52 ` Dan Malek
2003-03-27 21:49 ` Joakim Tjernlund [this message]
2003-03-26 18:11 ` Till Straumann
2003-03-26 19:06 ` Dan Malek
2003-03-26 22:42 ` mpc8xx DCBZ (&friends) hw bug. Tests, analysis + conclusions Till Straumann
2003-03-27 1:25 ` Till Straumann
2003-03-27 14:01 ` Joakim Tjernlund
2003-04-03 12:50 ` Joakim Tjernlund
2003-04-08 10:47 ` Joakim Tjernlund
2003-04-08 16:25 ` Till Straumann
2003-04-08 16:42 ` Joakim Tjernlund
2003-04-08 16:52 ` Joakim Tjernlund
2003-04-08 21:01 ` Dan Malek
2003-04-08 17:25 ` Joakim Tjernlund
2003-04-08 18:14 ` Tom Rini
2003-04-08 21:07 ` Joakim Tjernlund
2003-05-09 12:37 ` Joakim Tjernlund
2003-04-01 9:37 ` dcbz works on 862 everywhere! Joakim Tjernlund
2003-04-04 15:09 ` Joakim Tjernlund
2003-04-04 15:43 ` Dan Malek
2003-04-04 16:37 ` Joakim Tjernlund
2003-04-09 14:32 ` Joakim Tjernlund
2003-03-26 18:52 ` Till Straumann
2003-03-25 1:57 ` Joakim Tjernlund
2003-03-25 17:37 ` Joakim Tjernlund
2003-03-26 15:22 ` Dan Malek
2003-03-26 17:09 ` Joakim Tjernlund
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='002f01c2f4aa$b60b80a0$020120b0@jockeXP' \
--to=joakim.tjernlund@lumentis.se \
--cc=dan@embeddededge.com \
--cc=linuxppc-embedded@lists.linuxppc.org \
--cc=strauman@SLAC.Stanford.EDU \
--cc=trini@kernel.crashing.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).