Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1358243

Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table

From Toshi Kani <toshi.kani@hpe.com>
Newsgroups linux.kernel
Subject Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table
Date 2016-03-15 22:10 +0100
Message-ID <rd4o1-7FE-1@gated-at.bofh.it> (permalink)
References (4 earlier) <rbxDP-8op-1@gated-at.bofh.it> <rbA8G-1R9-35@gated-at.bofh.it> <rbQn8-5qL-13@gated-at.bofh.it> <rcHB8-pu-13@gated-at.bofh.it> <rcV1n-1e9-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tue, 2016-03-15 at 12:00 +0100, Borislav Petkov wrote:
> On Mon, Mar 14, 2016 at 03:37:23PM -0600, Toshi Kani wrote:
> > Your patch is a simplified version of mine.  So, yes, it fixes the
> > Paul's issue, but it does not address other issues that my patchset
> > also addressed.  In specific, I think your patch has the following
> > issues.
> 
> You couldnt've structured your reply better: remember how I split a
> convoluted patch of yours already? A patch which was trying to do a
> bunch of things in one go.
> 
> The situation here is the same. You need to do *one* *logical*
> *non-trivial* thing in a patch. If there's something else that needs to
> be done, add it in a *separate* patch which explains why that new change
> is needed.

Got it!

> > - pat_disable() is now callable from other modules. So, it needs to
> > check with boot_cpu_done. We cannot disable PAT once it is initialized.
> 
> That should be a separate patch which explains *why* the change is being
> done.
> 
> > - mtrr_bp_init() needs to check with mtrr_enabled() when it
> > calls mtrr_pat_setup_bp(). Otherwise, PAT is left initialized on BSP
> > only when MTRR is disabled by its MSR. In your patch, mtrr_bp_init()
> > calls pat_setup() again, but it does not help since boot_cpu_done is
> > set.
> 
> The code which you carved out from get_mtrr_state() didn't check
> mtrr_enabled() before. That needs to be another patch *again* with
> explanations.
> 
> > - When PAT is disabled in CPU feature, pat_bsp_init() calls
> > pat_disable() and returns. However, it does not initialize a PAT table
> > by calling pat_init_cache_modes().
> 
> Yet another patch.
> 
> > - When CONFIG_MTRR is unset, it does not call pat_setup().
> 
> Aaaand... can you guess what I'm going to say here?
> 
> I hope it is coming across as I intend it: please use my hunk to do a
> single fix and then prepare all those changes above in separate patches
> with explanations:

Unfortunately, this single fix will break Xen.  So, I think we will need to
make a few enhancements first before making the fix.

> "Problem is A. We need to do B. I'm doing it/I'm doing C because."
> 
> Ok?

Yes, I will try to separate the patches to change one logical thing at a
time. 

Thanks,
-Toshi

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/2] Refactor MTRR and PAT initializations Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 05:00 +0100
  [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 05:00 +0100
    Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-11 10:20 +0100
      Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 16:40 +0100
        Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-11 17:00 +0100
          Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 19:40 +0100
            Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-12 13:00 +0100
              Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-14 21:50 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-15 12:10 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-15 22:10 +0100
              Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-15 01:30 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-15 03:20 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-15 12:10 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-15 16:00 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-15 16:50 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT  table Toshi Kani <toshi.kani@hpe.com> - 2016-03-15 17:20 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table Borislav Petkov <bp@alien8.de> - 2016-03-15 17:40 +0100
                Re: [PATCH 1/2] x86/mm/pat: Change pat_disable() to emulate PAT table "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-15 22:40 +0100
  [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 05:00 +0100
    Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Ingo Molnar <mingo@kernel.org> - 2016-03-11 10:10 +0100
      Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Ingo Molnar <mingo@kernel.org> - 2016-03-11 10:20 +0100
        Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 18:50 +0100
          Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Ingo Molnar <mingo@kernel.org> - 2016-03-12 17:20 +0100
            Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-14 20:00 +0100
          Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-03-15 00:00 +0100
            Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-15 00:50 +0100
              Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Borislav Petkov <bp@suse.de> - 2016-03-15 17:00 +0100
    Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Borislav Petkov <bp@alien8.de> - 2016-03-11 10:30 +0100
      Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-11 19:10 +0100
        Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-11 23:20 +0100
          Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-12 00:10 +0100
            Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-12 00:40 +0100
              Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-12 01:30 +0100
                Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-15 01:20 +0100
                Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code Toshi Kani <toshi.kani@hpe.com> - 2016-03-16 00:00 +0100
                Re: [PATCH 2/2] x86/mtrr: Refactor PAT initialization code "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-03-16 00:30 +0100

csiph-web