linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Joakim Tjernlund <joakim.tjernlund@transmode.se>
Cc: Scott Wood <scottwood@freescale.com>,
	"linuxppc-dev@ozlabs.org" <linuxppc-dev@ozlabs.org>,
	Rex Feany <RFeany@mrv.com>
Subject: Re: [PATCH 3/6] 8xx: invalidate non present TLBs
Date: Fri, 09 Oct 2009 11:56:45 +1100	[thread overview]
Message-ID: <1255049805.2355.23.camel@pasglop> (raw)
In-Reply-To: <OFD13ED50D.BE2734E7-ONC1257649.007DB1F8-C1257649.007E7CB6@transmode.se>

On Fri, 2009-10-09 at 01:01 +0200, Joakim Tjernlund wrote:
> Ok, that's my understanding too and I think we had the tlbie in
> > update_mmu_cache to do the trick, though the comment is misleading
> > making it think that the only reason it's there is for the dcbst
> > problem. At least that's my understanding. That was lost recently in
> 2.6
> > so I'll have to put it back properly.
> 
> So you don't think my invalidate "only !present pages" patch in
> do_page_fault is enough?

It might well be the right solution, I was talking about the code as we
have upstream today.

> I don't think we do the pre-load to avoid the second fault, but we
> It won't get much faster than my current patch. Trapping all DTLB
> Errors to C won't make it faster, only more correct should there be
> a bug in the asm version. Actually there is one that has been there
> all the time, guarded flag is not set by DTLB Error.

There's other areas of improvements I suggested that can make it faster
such as avoiding the whole kernel/user test in the TLB misses.

Removing the stuff in DataTLBError can potentially make normal page
faults faster too by avoiding going through a bunch of useless code
before going to do the real thing in C :-)

As I said, the case of ACCESSED or DIRTY updates are rare enough to not
warrant code in the main page fault hot path.

Cheers,
Ben.

  reply	other threads:[~2009-10-09  0:57 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-07 20:45 [PATCH 0/6] 8xx TLB fixes Joakim Tjernlund
2009-10-07 20:45 ` [PATCH 1/6] 8xx: DTLB Error must check for more errors Joakim Tjernlund
2009-10-07 20:46   ` [PATCH 2/6] 8xx: get rid of _PAGE_HWWRITE dependency in MMU Joakim Tjernlund
2009-10-07 20:46     ` [PATCH 3/6] 8xx: invalidate non present TLBs Joakim Tjernlund
2009-10-07 20:46       ` [PATCH 4/6] 8xx: Tag DAR with 0x00f0 to catch buggy instructions Joakim Tjernlund
2009-10-07 20:46         ` [PATCH 5/6] 8xx: Fixup DAR from buggy dcbX instructions Joakim Tjernlund
2009-10-07 20:46           ` [PATCH 6/6] 8xx: start using dcbX instructions in various copy routines Joakim Tjernlund
2009-10-07 21:18         ` [PATCH 4/6] 8xx: Tag DAR with 0x00f0 to catch buggy instructions Benjamin Herrenschmidt
2009-10-07 22:13           ` Joakim Tjernlund
2009-10-07 22:21             ` Benjamin Herrenschmidt
2009-10-07 23:12               ` Joakim Tjernlund
2009-10-07 21:18       ` [PATCH 3/6] 8xx: invalidate non present TLBs Benjamin Herrenschmidt
2009-10-07 22:12         ` Joakim Tjernlund
2009-10-07 22:20           ` Benjamin Herrenschmidt
2009-10-08 19:22         ` Joakim Tjernlund
2009-10-08 20:11           ` Dan Malek
2009-10-08 20:18             ` Benjamin Herrenschmidt
2009-10-08 20:28             ` Benjamin Herrenschmidt
2009-10-08 22:08               ` Dan Malek
2009-10-08 22:23                 ` Benjamin Herrenschmidt
2009-10-08 23:01                   ` Joakim Tjernlund
2009-10-09  0:56                     ` Benjamin Herrenschmidt [this message]
2009-10-09  0:36                   ` Dan Malek
2009-10-09  0:57                     ` Benjamin Herrenschmidt
2009-10-08 20:37             ` Joakim Tjernlund
2009-10-08 20:44               ` Benjamin Herrenschmidt
2009-10-09  0:05               ` Dan Malek
2009-10-08 20:42           ` Benjamin Herrenschmidt
2009-10-07 21:14     ` [PATCH 2/6] 8xx: get rid of _PAGE_HWWRITE dependency in MMU Benjamin Herrenschmidt
2009-10-07 22:08       ` Joakim Tjernlund
2009-10-07 22:20         ` Benjamin Herrenschmidt
2009-10-07 23:11           ` Joakim Tjernlund
2009-10-08  0:04             ` Benjamin Herrenschmidt
2009-10-08  0:19               ` Joakim Tjernlund
2009-10-08  0:28                 ` Benjamin Herrenschmidt
2009-10-08  6:45                   ` Joakim Tjernlund
2009-10-08 20:21                     ` Benjamin Herrenschmidt
     [not found]           ` <OFCA7943E6.AFEF924A-ONC1257648.007E27B0-C1257648.007F62E9@LocalDomain>
2009-10-07 23:34             ` Joakim Tjernlund
  -- strict thread matches above, loose matches on Subject: below --
2009-10-08 13:24 [PATCH 0/6] 8xx MMU fixes Joakim Tjernlund
2009-10-08 13:24 ` [PATCH 1/6] 8xx: DTLB Error must check for more errors Joakim Tjernlund
2009-10-08 13:24   ` [PATCH 2/6] 8xx: Update TLB asm so it behaves as linux mm expects Joakim Tjernlund
2009-10-08 13:24     ` [PATCH 3/6] 8xx: invalidate non present TLBs 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=1255049805.2355.23.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=RFeany@mrv.com \
    --cc=joakim.tjernlund@transmode.se \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=scottwood@freescale.com \
    /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).