[tip:,x86/urgent] x86/mtrr: Revert 90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")

Message ID 167636735608.4906.4788207020350311572.tip-bot2@tip-bot2
State New
Headers
Series [tip:,x86/urgent] x86/mtrr: Revert 90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case") |

Commit Message

tip-bot2 for Thomas Gleixner Feb. 14, 2023, 9:35 a.m. UTC
  The following commit has been merged into the x86/urgent branch of tip:

Commit-ID:     f9f57da2c2d119dbf109e3f6e1ceab7659294046
Gitweb:        https://git.kernel.org/tip/f9f57da2c2d119dbf109e3f6e1ceab7659294046
Author:        Juergen Gross <jgross@suse.com>
AuthorDate:    Thu, 09 Feb 2023 08:22:17 +01:00
Committer:     Borislav Petkov (AMD) <bp@alien8.de>
CommitterDate: Tue, 14 Feb 2023 10:16:34 +01:00

x86/mtrr: Revert 90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")

Commit

  90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")

broke the use case of running Xen dom0 kernels on machines with an
external disk enclosure attached via USB, see Link tag.

What this commit was originally fixing - SEV-SNP guests on Hyper-V - is
a more specialized situation which has other issues at the moment anyway
so reverting this now and addressing the issue properly later is the
prudent thing to do.

So revert it in time for the 6.2 proper release.

  [ bp: Rewrite commit message. ]

Reported-by: Christian Kujau <lists@nerdbynature.de>
Tested-by: Christian Kujau <lists@nerdbynature.de>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/4fe9541e-4d4c-2b2a-f8c8-2d34a7284930@nerdbynature.de
---
 arch/x86/mm/pat/memtype.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
  

Comments

Christian Kujau Feb. 18, 2023, 9:47 a.m. UTC | #1
On Tue, 14 Feb 2023, tip-bot2 for Juergen Gross wrote:
> The following commit has been merged into the x86/urgent branch of tip:

Sorry for being dense but I couldn't figure this out from the tip tree 
handbook[0]: will this be included in 6.2 or has this ship sailed? If so, 
I'll start bugging the Alpine folks to maybe carry this around until the 
next release.

Thanks,
Christian.

[0] https://www.kernel.org/doc/html/latest/process/maintainer-tip.html

> 
> Commit-ID:     f9f57da2c2d119dbf109e3f6e1ceab7659294046
> Gitweb:        https://git.kernel.org/tip/f9f57da2c2d119dbf109e3f6e1ceab7659294046
> Author:        Juergen Gross <jgross@suse.com>
> AuthorDate:    Thu, 09 Feb 2023 08:22:17 +01:00
> Committer:     Borislav Petkov (AMD) <bp@alien8.de>
> CommitterDate: Tue, 14 Feb 2023 10:16:34 +01:00
> 
> x86/mtrr: Revert 90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")
> 
> Commit
> 
>   90b926e68f50 ("x86/pat: Fix pat_x_mtrr_type() for MTRR disabled case")
> 
> broke the use case of running Xen dom0 kernels on machines with an
> external disk enclosure attached via USB, see Link tag.
> 
> What this commit was originally fixing - SEV-SNP guests on Hyper-V - is
> a more specialized situation which has other issues at the moment anyway
> so reverting this now and addressing the issue properly later is the
> prudent thing to do.
> 
> So revert it in time for the 6.2 proper release.
> 
>   [ bp: Rewrite commit message. ]
> 
> Reported-by: Christian Kujau <lists@nerdbynature.de>
> Tested-by: Christian Kujau <lists@nerdbynature.de>
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
> Link: https://lore.kernel.org/r/4fe9541e-4d4c-2b2a-f8c8-2d34a7284930@nerdbynature.de
> ---
>  arch/x86/mm/pat/memtype.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/arch/x86/mm/pat/memtype.c b/arch/x86/mm/pat/memtype.c
> index fb4b1b5..46de9cf 100644
> --- a/arch/x86/mm/pat/memtype.c
> +++ b/arch/x86/mm/pat/memtype.c
> @@ -387,8 +387,7 @@ static unsigned long pat_x_mtrr_type(u64 start, u64 end,
>  		u8 mtrr_type, uniform;
>  
>  		mtrr_type = mtrr_type_lookup(start, end, &uniform);
> -		if (mtrr_type != MTRR_TYPE_WRBACK &&
> -		    mtrr_type != MTRR_TYPE_INVALID)
> +		if (mtrr_type != MTRR_TYPE_WRBACK)
>  			return _PAGE_CACHE_MODE_UC_MINUS;
>  
>  		return _PAGE_CACHE_MODE_WB;
>
  
Borislav Petkov Feb. 18, 2023, 9:59 a.m. UTC | #2
On Sat, Feb 18, 2023 at 10:47:46AM +0100, Christian Kujau wrote:
> Sorry for being dense but I couldn't figure this out from the tip tree 
> handbook[0]: will this be included in 6.2 or has this ship sailed?

Yes, it will. Urgent branches go usually to Linus in the current
stabilization phase. If you wanna do a patch for the handbook to fix
that shortcoming, I'll take it.

:-)

Thx.
  

Patch

diff --git a/arch/x86/mm/pat/memtype.c b/arch/x86/mm/pat/memtype.c
index fb4b1b5..46de9cf 100644
--- a/arch/x86/mm/pat/memtype.c
+++ b/arch/x86/mm/pat/memtype.c
@@ -387,8 +387,7 @@  static unsigned long pat_x_mtrr_type(u64 start, u64 end,
 		u8 mtrr_type, uniform;
 
 		mtrr_type = mtrr_type_lookup(start, end, &uniform);
-		if (mtrr_type != MTRR_TYPE_WRBACK &&
-		    mtrr_type != MTRR_TYPE_INVALID)
+		if (mtrr_type != MTRR_TYPE_WRBACK)
 			return _PAGE_CACHE_MODE_UC_MINUS;
 
 		return _PAGE_CACHE_MODE_WB;