xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Toshi Kani <toshi.kani@hpe.com>
To: "Luis R. Rodriguez" <mcgrof@kernel.org>
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Matt Fleming <matt@codeblueprint.co.uk>,
	Olof Johansson <olof@lixom.net>,
	Paul Stewart <pstew@chromium.org>, Borislav Petkov <bp@alien8.de>,
	Ingo Molnar <mingo@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Paul Gortmaker <paul.gortmaker@windriver.com>,
	Paul McKenney <paulmck@linux.vnet.ibm.com>,
	X86 ML <x86@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	xen-devel@lists.xensource.com
Subject: Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code
Date: Mon, 11 Apr 2016 08:30:13 -0600	[thread overview]
Message-ID: <1460385013.20338.91.camel@hpe.com> (raw)
In-Reply-To: <20160409020444.GX1990@wotan.suse.de>

On Sat, 2016-04-09 at 04:04 +0200, Luis R. Rodriguez wrote:
> On Thu, Mar 17, 2016 at 03:56:47PM -0600, Toshi Kani wrote:
> > 
> > On Wed, 2016-03-16 at 00:29 +0100, Luis R. Rodriguez wrote:
> > > 
> > > On x86 Linux code we now have ioremap_uc() that can't use MTRR behind
> > > the scenes, why would something like this on the BIOS not be
> > > possible? That ultimately uses set_pte_at(). What limitations are
> > > there on the BIOS that prevent us from just using strong UC for PAT
> > > on the BIOS?
>>
> > Because it requires to run in virtual mode with page tables.
>
> I see now. Specifically, BIOSes run in real mode, and PAT uses
> paging. Paging requires bit 31 on CR0 set (PG), and PG has no
> effect if the PE flag (Protection Enable) bit 0 on CR0 is clear.
> If PE is clear we have real mode, which is what the BIOS uses.
> 
> Stupid question then:
> 
> are there no use case for a BIOS to enter PE, even if just
> limited to set paging attributes for instance. For the simple
> sake of burying MTRR this seems worthy, but I wonder if there
> are other paging needs a BIOS might find use for.

The OS calls EFI in virtual mode.  BIOS SMI handler, however, is called in
physical mode.  Since it has the highest priority, it needs to finish as
soon as possible.  So, it typically does not make additional steps to
switch to virtual mode.

Thanks,
-Toshi

  reply	other threads:[~2016-04-11 14:30 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1457671546-13486-1-git-send-email-toshi.kani@hpe.com>
     [not found] ` <1457671546-13486-3-git-send-email-toshi.kani@hpe.com>
     [not found]   ` <20160311092400.GB4347@pd.tnic>
     [not found]     ` <1457722632.6393.130.camel@hpe.com>
     [not found]       ` <20160311221747.GC25147@wotan.suse.de>
     [not found]         ` <1457740571.6393.236.camel@hpe.com>
     [not found]           ` <CAB=NE6UE7pKz8bmpRrFmAW=ySY0JnGoRY=MYn2zfOH4g_H81hw@mail.gmail.com>
     [not found]             ` <1457745396.6393.257.camel@hpe.com>
2016-03-15  0:15               ` [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Luis R. Rodriguez
2016-03-15 23:48                 ` Toshi Kani
2016-03-15 23:29                   ` Luis R. Rodriguez
2016-03-17 21:56                     ` Toshi Kani
2016-03-18  0:06                       ` Luis R. Rodriguez
2016-03-18 21:35                         ` Toshi Kani
2016-03-29 17:14                           ` Luis R. Rodriguez
2016-03-29 21:46                             ` Toshi Kani
2016-03-29 22:12                               ` Luis R. Rodriguez
2016-03-30  0:16                                 ` Toshi Kani
2016-03-29 23:43                                   ` Luis R. Rodriguez
2016-03-30  1:07                                     ` Toshi Kani
2016-03-30  0:34                                       ` Luis R. Rodriguez
2016-04-09  2:04                       ` Luis R. Rodriguez
2016-04-11 14:30                         ` Toshi Kani [this message]
     [not found] ` <1457671546-13486-2-git-send-email-toshi.kani@hpe.com>
     [not found]   ` <20160311091229.GA4347@pd.tnic>
     [not found]     ` <1457713660.6393.55.camel@hpe.com>
     [not found]       ` <20160311155439.GF4312@pd.tnic>
     [not found]         ` <1457724504.6393.151.camel@hpe.com>
     [not found]           ` <20160312115544.GA23410@pd.tnic>
2016-03-15  0:29             ` [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Luis R. Rodriguez
     [not found]             ` <20160315002921.GG25147@wotan.suse.de>
2016-03-15  3:11               ` Toshi Kani
     [not found]               ` <1458011476.6393.327.camel@hpe.com>
2016-03-15 11:01                 ` Borislav Petkov
     [not found]                 ` <20160315110148.GC4559@pd.tnic>
2016-03-15 15:43                   ` Toshi Kani
     [not found]                   ` <1458056595.6393.332.camel@hpe.com>
2016-03-15 15:47                     ` Borislav Petkov
     [not found]                     ` <20160315154731.GD4559@pd.tnic>
     [not found]                       ` <1458061883.6393.359.camel@hpe.com>
2016-03-15 16:33                         ` Borislav Petkov
2016-03-15 17:11                       ` Toshi Kani
2016-03-15 21:31                 ` Luis R. Rodriguez

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=1460385013.20338.91.camel@hpe.com \
    --to=toshi.kani@hpe.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=bp@alien8.de \
    --cc=hpa@zytor.com \
    --cc=jgross@suse.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matt@codeblueprint.co.uk \
    --cc=mcgrof@kernel.org \
    --cc=mingo@kernel.org \
    --cc=olof@lixom.net \
    --cc=paul.gortmaker@windriver.com \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=pstew@chromium.org \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=xen-devel@lists.xensource.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).