linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Toshi Kani <toshi.kani@hp.com>
To: "Luis R. Rodriguez" <mcgrof@suse.com>
Cc: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
	"Tomi Valkeinen" <tomi.valkeinen@ti.com>,
	"Borislav Petkov" <bp@suse.de>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Jej B" <James.Bottomley@hansenpartnership.com>,
	"Ville Syrjälä" <syrjala@sci.fi>,
	"Ville Syrjälä" <ville.syrjala@linux.intel.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	linux-media@vger.kernel.org,
	linux-fbdev <linux-fbdev@vger.kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"Andy Lutomirski" <luto@amacapital.net>,
	"X86 ML" <x86@kernel.org>, "Juergen Gross" <jgross@suse.com>,
	"Dave Airlie" <airlied@redhat.com>,
	xen-devel@lists.xenproject.org,
	"Julia Lawall" <julia.lawall@lip6.fr>
Subject: Re: RIP MTRR - status update for upcoming v4.2
Date: Fri, 12 Jun 2015 10:42:45 -0600	[thread overview]
Message-ID: <1434127365.11808.85.camel@misato.fc.hp.com> (raw)
In-Reply-To: <20150612005221.GD23057@wotan.suse.de>

On Fri, 2015-06-12 at 02:52 +0200, Luis R. Rodriguez wrote:
> On Thu, Jun 11, 2015 at 05:23:16PM -0600, Toshi Kani wrote:
> > On Thu, 2015-06-11 at 13:36 -0700, Luis R. Rodriguez wrote:
> >  :
> > > Pending RIP MTRR patches
> > > ====================
> > > 
> > > There are a few pending series so I wanted to provide a status update
> > > on those series.
> > > 
> > > mtrr: bury MTRR - unexport mtrr_add() and mtrr_del()
> > > 
> > > This is the nail on the MTRR coffin, it will prevent future direct
> > > access to MTRR code. This will not be posted until all of the below
> > > patches are in and merged. A possible next step here might be to
> > > consider separating PAT code from MTRR code and making PAT a first
> > > class citizen, enabling distributions to disable MTRR code in the
> > > future. I thought this was possible but for some reason I recently
> > > thought that there was one possible issue to make this happen. I
> > > suppose we won't know unless we try, unless of course someone already
> > > knows, Toshi?
> > 
> > There are two usages on MTRRs:
> >  1) MTRR entries set by firmware
> >  2) MTRR entries set by OS drivers
> > 
> > We can obsolete 2), but we have no control over 1).  As UEFI firmwares
> > also set this up, this usage will continue to stay.  So, we should not
> > get rid of the MTRR code that looks up the MTRR entries, while we have
> > no need to modify them.
> > 
> > Such MTRR entries provide safe guard to /dev/mem, which allows
> > privileged user to access a range that may require UC mapping while
> > the /dev/mem driver blindly maps it with WB.  MTRRs converts WB to UC in
> > such a case.
> > 
> > UEFI memory table has memory attribute, which describes cache types
> > supported in physical memory ranges.  However, this information gets
> > lost when it it is converted to e820 table.
> 
> Is there no way to modify CPU capability bits upon boot and kick UEFI
> to re-evaluate ? In such UEFI cases what happens for instance when
> Xen is used which does not support MTRR?

EFI GetMemoryMap() is a boot service, and won't be available after
ExitBootServices() is called.  But we should be able to keep the
attribute information copied into some table if necessary.

Xen provides virtual firmware on their guests, right?  If this firmware
does not set up MTRRs today, then I do not think it needs to set up for
UEFI, either.  Assuming the guest physical address is virtualized, it
does not have to carry the same platform attribute & restriction.

Thanks,
-Toshi



  reply	other threads:[~2015-06-12 16:43 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-11 20:36 RIP MTRR - status update for upcoming v4.2 Luis R. Rodriguez
2015-06-11 23:23 ` Toshi Kani
2015-06-12  0:52   ` Luis R. Rodriguez
2015-06-12 16:42     ` Toshi Kani [this message]
2015-06-12  7:59   ` [Xen-devel] " Jan Beulich
2015-06-12 16:58     ` Toshi Kani
2015-08-06 19:53       ` Luis R. Rodriguez
2015-08-06 19:55         ` Luis R. Rodriguez
2015-08-06 22:58         ` Toshi Kani
2015-08-07 20:25           ` Luis R. Rodriguez
2015-08-07 21:56             ` Toshi Kani
2015-08-07 22:23               ` Luis R. Rodriguez
2015-08-07 23:08                 ` Toshi Kani
2015-08-07 23:19                   ` Toshi Kani
2015-08-07 23:26                   ` Luis R. Rodriguez
2015-08-07 23:48                     ` Toshi Kani
2015-06-12 23:15     ` Andy Lutomirski
2015-06-12 23:29       ` James Bottomley
2015-06-13  6:37       ` Ingo Molnar
2015-06-15  6:20       ` Jan Beulich

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=1434127365.11808.85.camel@misato.fc.hp.com \
    --to=toshi.kani@hp.com \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=airlied@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=bhelgaas@google.com \
    --cc=bp@suse.de \
    --cc=jgross@suse.com \
    --cc=julia.lawall@lip6.fr \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=mcgrof@do-not-panic.com \
    --cc=mcgrof@suse.com \
    --cc=syrjala@sci.fi \
    --cc=tomi.valkeinen@ti.com \
    --cc=ville.syrjala@linux.intel.com \
    --cc=x86@kernel.org \
    --cc=xen-devel@lists.xenproject.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).