linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Martin J. Bligh" <Martin.Bligh@us.ibm.com>
To: linux-mm mailing list <linux-mm@kvack.org>
Subject: How did paging_init ever work with PAE?
Date: Tue, 30 Jul 2002 17:45:30 -0700	[thread overview]
Message-ID: <536090000.1028076330@flay> (raw)

We're crashing in paging_init under certain circumstances, but on
closer inspection, I'm unsure how this ever could have worked.
Obviously it does most of the time, so I'm missing something ....

With PAE on, the code path looks like this:

        pagetable_init();
        load_cr3(swapper_pg_dir);
        if (cpu_has_pae)
                set_in_cr4(X86_CR4_PAE);

Hmmm .... pagetable_init sets up a PGD for PAE use, then we load
cr3 with this table .... then we turn on PAE mode.

How are we surviving in this limbo state between the point when
we reload cr3 and when we turn on PAE? If we take a page fault
(which we will, since reloading cr3 flushes the tlb) is the PGD 
somehow dual purpose and works for non-PAE systems as well?
Are we relying on the global bit on entries on the TLB cache which
we're just praying aren't going to fall out?

Seems very strange ..... any clarification much appreciated.

Thanks,

M.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/

             reply	other threads:[~2002-07-31  0:47 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-31  0:45 Martin J. Bligh [this message]
2002-07-31 12:10 ` Hugh Dickins

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=536090000.1028076330@flay \
    --to=martin.bligh@us.ibm.com \
    --cc=linux-mm@kvack.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