linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Dan Malek <dan@embeddededge.com>
Cc: linuxppc-embedded@lists.linuxppc.org,
	Tom Rini <trini@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>
Subject: Re: Do we need tlbsx at finish_tlb_load?
Date: Tue, 4 Jun 2002 13:48:32 +1000	[thread overview]
Message-ID: <20020604034832.GE2762@zax> (raw)
In-Reply-To: <3CFC0794.7020907@embeddededge.com>


On Mon, Jun 03, 2002 at 08:19:32PM -0400, Dan Malek wrote:
>
> David Gibson wrote:
>
> >Ok, not seeing any replies here.  If no-one speaks up for this tlbsx
> >in the next couple of days, I'll remove it from 2_4_devel.
>
> Some of us (fortunately) have a life outside of kernel hacking, so
> it takes time to reply.
>
> An instuction TLB miss will load the TLB with a PTE that indicates it isn't
> valid.  A subsequent TLB instruction fault to load the page will cause a
> data tlb miss to copy the page, and when you fix up this entry to allow a
> write, you don't want to create an alias in the TLB.

I don't follow you.  Either there is a TLB entry for the virtual
address or there isn't.  If there isn't, we'll get an ITLB or DTLB
miss and the tlbsx will always fail.  If there is, we'll get a DSI or
an ISI.  ISI never loads a TLB entry anyway, and DSI does so using a
different code path from the TLB miss handlers which does (and needs
to) do a tlbsx.  The tlbsx at finish_tlb_load is *only* called from
the TLB miss vectors, never from DSI or ISI.

> If you remove the tlbsx, you can see this happen when init starts and you
> dump the TLB after every type of TLB fault while it is starting.

Well I haven't removed it, but the large page patch also counts the
number of times this tlbsx gets a hit.  I've never seen the number to
be non-zero.

--
David Gibson			| For every complex problem there is a
david@gibson.dropbear.id.au	| solution which is simple, neat and
				| wrong.  -- H.L. Mencken
http://www.ozlabs.org/people/dgibson

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2002-06-04  3:48 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-30  8:04 Do we need tlbsx at finish_tlb_load? David Gibson
2002-06-03  2:43 ` David Gibson
2002-06-04  0:19   ` Dan Malek
2002-06-04  3:48     ` David Gibson [this message]
2002-06-04 12:52     ` Paul Mackerras
2002-06-04 17:49       ` Dan Malek
2002-06-06  2:04         ` Paul Mackerras
2002-06-06  5:06           ` Dan Malek

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=20020604034832.GE2762@zax \
    --to=david@gibson.dropbear.id.au \
    --cc=dan@embeddededge.com \
    --cc=linuxppc-embedded@lists.linuxppc.org \
    --cc=paulus@samba.org \
    --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).