All of lore.kernel.org
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: Bhushan Bharat-R65777 <R65777@freescale.com>
Cc: Wood Scott-B07421 <B07421@freescale.com>,
	Alexander Graf <agraf@suse.de>,
	"kvm-ppc@vger.kernel.org" <kvm-ppc@vger.kernel.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency only for kernel managed pages
Date: Tue, 23 Jul 2013 16:44:35 +0000	[thread overview]
Message-ID: <1374597875.15592.28@snotra> (raw)
In-Reply-To: <6A3DF150A5B70D4F9B66A25E3F7C888D070DD20F@039-SN2MPN1-013.039d.mgd.msft.net> (from R65777@freescale.com on Mon Jul 22 22:39:16 2013)

On 07/22/2013 10:39:16 PM, Bhushan Bharat-R65777 wrote:
> 
> 
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Tuesday, July 23, 2013 12:18 AM
> > To: Bhushan Bharat-R65777
> > Cc: Wood Scott-B07421; Alexander Graf; kvm-ppc@vger.kernel.org;
> > kvm@vger.kernel.org
> > Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency only  
> for kernel
> > managed pages
> >
> > On 07/21/2013 11:39:45 PM, Bhushan Bharat-R65777 wrote:
> > >
> > >
> > > > -----Original Message-----
> > > > From: Wood Scott-B07421
> > > > Sent: Thursday, July 18, 2013 11:09 PM
> > > > To: Alexander Graf
> > > > Cc: Bhushan Bharat-R65777; kvm-ppc@vger.kernel.org;
> > > kvm@vger.kernel.org; Bhushan
> > > > Bharat-R65777
> > > > Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency  
> only
> > > for kernel
> > > > managed pages
> > > >
> > > > On 07/18/2013 12:32:18 PM, Alexander Graf wrote:
> > > > >
> > > > > On 18.07.2013, at 19:17, Scott Wood wrote:
> > > > >
> > > > > > On 07/18/2013 08:19:03 AM, Bharat Bhushan wrote:
> > > > > > Likewise, we want to make sure this matches the host entry.
> > > > > Unfortunately, this is a bit of a mess already.  64-bit booke
> > > appears
> > > > > to always set MAS2_M for TLB0 mappings.  The initial  
> KERNELBASE
> > > > > mapping on boot uses M_IF_SMP, and the settlbcam() that (IIRC)
> > > > > replaces it uses _PAGE_COHERENT.  32-bit always uses
> > > _PAGE_COHERENT,
> > > > > except that initial KERNELBASE mapping.  _PAGE_COHERENT  
> appears
> > > to be
> > > > > set based on CONFIG_SMP || CONFIG_PPC_STD_MMU (the latter  
> config
> > > > > clears _PAGE_COHERENT in the non-CPU_FTR_NEED_COHERENT case).
> > > > > >
> > > > > > As for what we actually want to happen, there are cases  
> when we
> > > > > want M to be set for non-SMP.  One such case is AMP, where  
> CPUs
> > > may be
> > > > > sharing memory even if the Linux instance only runs on one CPU
> > > (this
> > > > > is not hypothetical, BTW).  It's also possible that we  
> encounter a
> > > > > hardware bug that requires MAS2_M, similar to what some of our
> > > > > non-booke chips require.
> > > > >
> > > > > How about we always set M then for RAM?
> > > >
> > > > M is like I in that bad things happen if you mix them.
> > >
> > > I am trying to list the invalid mixing of WIMG:
> > >
> > >  1) I & M
> > >  2) W & I
> > >  3) W & M (Scott mentioned that he observed issues when  mixing  
> these
> > > two)
> > >  4) is there any other?
> >
> > That's not what I was talking about (and I don't think I mentioned  
> W at all,
> > though it is also potentially problematic).
> 
> Here is cut paste of your one response:
> "The architecture makes it illegal to mix cacheable and  
> cache-inhibited
> mappings to the same physical page.  Mixing W or M bits is generally
> bad as well.  I've seen it cause machine checks, error interrupts,  
> etc.
> -- not just corrupting the page in question."
> 
> So I added not mixing W & M. But at that time I missed to understood  
> why mixing M & I for same physical address can be issue :).

"W or M", not "W and M".  I meant that each one, separately, is in a  
similar situation as the I bit.

None of this is about invalid combinations of attributes on a single  
TLB entry (though there are architectural restrictions there as well).

-Scott

WARNING: multiple messages have this Message-ID (diff)
From: Scott Wood <scottwood@freescale.com>
To: Bhushan Bharat-R65777 <R65777@freescale.com>
Cc: Wood Scott-B07421 <B07421@freescale.com>,
	Alexander Graf <agraf@suse.de>,
	"kvm-ppc@vger.kernel.org" <kvm-ppc@vger.kernel.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency only for kernel managed pages
Date: Tue, 23 Jul 2013 11:44:35 -0500	[thread overview]
Message-ID: <1374597875.15592.28@snotra> (raw)
In-Reply-To: <6A3DF150A5B70D4F9B66A25E3F7C888D070DD20F@039-SN2MPN1-013.039d.mgd.msft.net> (from R65777@freescale.com on Mon Jul 22 22:39:16 2013)

On 07/22/2013 10:39:16 PM, Bhushan Bharat-R65777 wrote:
> 
> 
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Tuesday, July 23, 2013 12:18 AM
> > To: Bhushan Bharat-R65777
> > Cc: Wood Scott-B07421; Alexander Graf; kvm-ppc@vger.kernel.org;
> > kvm@vger.kernel.org
> > Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency only  
> for kernel
> > managed pages
> >
> > On 07/21/2013 11:39:45 PM, Bhushan Bharat-R65777 wrote:
> > >
> > >
> > > > -----Original Message-----
> > > > From: Wood Scott-B07421
> > > > Sent: Thursday, July 18, 2013 11:09 PM
> > > > To: Alexander Graf
> > > > Cc: Bhushan Bharat-R65777; kvm-ppc@vger.kernel.org;
> > > kvm@vger.kernel.org; Bhushan
> > > > Bharat-R65777
> > > > Subject: Re: [PATCH 2/2 v2] kvm: powerpc: set cache coherency  
> only
> > > for kernel
> > > > managed pages
> > > >
> > > > On 07/18/2013 12:32:18 PM, Alexander Graf wrote:
> > > > >
> > > > > On 18.07.2013, at 19:17, Scott Wood wrote:
> > > > >
> > > > > > On 07/18/2013 08:19:03 AM, Bharat Bhushan wrote:
> > > > > > Likewise, we want to make sure this matches the host entry.
> > > > > Unfortunately, this is a bit of a mess already.  64-bit booke
> > > appears
> > > > > to always set MAS2_M for TLB0 mappings.  The initial  
> KERNELBASE
> > > > > mapping on boot uses M_IF_SMP, and the settlbcam() that (IIRC)
> > > > > replaces it uses _PAGE_COHERENT.  32-bit always uses
> > > _PAGE_COHERENT,
> > > > > except that initial KERNELBASE mapping.  _PAGE_COHERENT  
> appears
> > > to be
> > > > > set based on CONFIG_SMP || CONFIG_PPC_STD_MMU (the latter  
> config
> > > > > clears _PAGE_COHERENT in the non-CPU_FTR_NEED_COHERENT case).
> > > > > >
> > > > > > As for what we actually want to happen, there are cases  
> when we
> > > > > want M to be set for non-SMP.  One such case is AMP, where  
> CPUs
> > > may be
> > > > > sharing memory even if the Linux instance only runs on one CPU
> > > (this
> > > > > is not hypothetical, BTW).  It's also possible that we  
> encounter a
> > > > > hardware bug that requires MAS2_M, similar to what some of our
> > > > > non-booke chips require.
> > > > >
> > > > > How about we always set M then for RAM?
> > > >
> > > > M is like I in that bad things happen if you mix them.
> > >
> > > I am trying to list the invalid mixing of WIMG:
> > >
> > >  1) I & M
> > >  2) W & I
> > >  3) W & M (Scott mentioned that he observed issues when  mixing  
> these
> > > two)
> > >  4) is there any other?
> >
> > That's not what I was talking about (and I don't think I mentioned  
> W at all,
> > though it is also potentially problematic).
> 
> Here is cut paste of your one response:
> "The architecture makes it illegal to mix cacheable and  
> cache-inhibited
> mappings to the same physical page.  Mixing W or M bits is generally
> bad as well.  I've seen it cause machine checks, error interrupts,  
> etc.
> -- not just corrupting the page in question."
> 
> So I added not mixing W & M. But at that time I missed to understood  
> why mixing M & I for same physical address can be issue :).

"W or M", not "W and M".  I meant that each one, separately, is in a  
similar situation as the I bit.

None of this is about invalid combinations of attributes on a single  
TLB entry (though there are architectural restrictions there as well).

-Scott

  reply	other threads:[~2013-07-23 16:44 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-18 13:19 [PATCH 1/2 v2] kvm: powerpc: Do not ignore "E" attribute in mas2 Bharat Bhushan
2013-07-18 13:31 ` Bharat Bhushan
2013-07-18 13:19 ` [PATCH 2/2 v2] kvm: powerpc: set cache coherency only for kernel managed pages Bharat Bhushan
2013-07-18 13:31   ` Bharat Bhushan
2013-07-18 14:53   ` Alexander Graf
2013-07-18 14:53     ` Alexander Graf
2013-07-18 15:15     ` Bhushan Bharat-R65777
2013-07-18 15:19       ` Alexander Graf
2013-07-18 15:19         ` Alexander Graf
2013-07-18 17:17   ` Scott Wood
2013-07-18 17:17     ` Scott Wood
2013-07-18 17:32     ` Alexander Graf
2013-07-18 17:32       ` Alexander Graf
2013-07-18 17:39       ` Scott Wood
2013-07-18 17:39         ` Scott Wood
2013-07-22  4:39         ` Bhushan Bharat-R65777
2013-07-22 18:47           ` Scott Wood
2013-07-22 18:47             ` Scott Wood
2013-07-23  3:39             ` Bhushan Bharat-R65777
2013-07-23 16:44               ` Scott Wood [this message]
2013-07-23 16:44                 ` Scott Wood
2013-07-23 16:50                 ` Bhushan Bharat-R65777
2013-07-23 18:20                   ` Scott Wood
2013-07-23 18:20                     ` Scott Wood
2013-07-24  1:06                     ` Bhushan Bharat-R65777
2013-07-23 11:13     ` Bhushan Bharat-R65777
2013-07-23 18:26       ` Scott Wood
2013-07-23 18:26         ` Scott Wood
2013-07-18 14:48 ` [PATCH 1/2 v2] kvm: powerpc: Do not ignore "E" attribute in mas2 Alexander Graf
2013-07-18 14:48   ` Alexander Graf
2013-07-18 15:12   ` Bhushan Bharat-R65777
2013-07-18 15:19     ` Alexander Graf
2013-07-18 15:19       ` Alexander Graf
2013-07-18 15:20       ` Bhushan Bharat-R65777
2013-07-18 16:15     ` Scott Wood
2013-07-18 16:15       ` Scott Wood

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=1374597875.15592.28@snotra \
    --to=scottwood@freescale.com \
    --cc=B07421@freescale.com \
    --cc=R65777@freescale.com \
    --cc=agraf@suse.de \
    --cc=kvm-ppc@vger.kernel.org \
    --cc=kvm@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.