[tip:x86/mm] x86/mm: Remove unnecessary TLB flush for SME in-place encryption

From: tip-bot for Tom Lendacky
Date: Tue Nov 07 2017 - 06:26:34 EST


Commit-ID: c5e260890d5fd6687287f2b532c738a359a61a82
Gitweb: https://git.kernel.org/tip/c5e260890d5fd6687287f2b532c738a359a61a82
Author: Tom Lendacky <thomas.lendacky@xxxxxxx>
AuthorDate: Wed, 1 Nov 2017 11:54:26 -0500
Committer: Ingo Molnar <mingo@xxxxxxxxxx>
CommitDate: Tue, 7 Nov 2017 12:16:14 +0100

x86/mm: Remove unnecessary TLB flush for SME in-place encryption

A TLB flush is not required when doing in-place encryption or decryption
since the area's pagetable attributes are not being altered. To avoid
confusion between what the routine is doing and what is documented in
the AMD APM, delete the local_flush_tlb() call.

Suggested-by: Dave Hansen <dave.hansen@xxxxxxxxx>
Signed-off-by: Tom Lendacky <thomas.lendacky@xxxxxxx>
Reviewed-by: Borislav Petkov <bp@xxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxxxx>
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/20171101165426.1388.24866.stgit@xxxxxxxxxxxxxxxxxxxxxxxxx
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
---
arch/x86/mm/mem_encrypt.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/x86/mm/mem_encrypt.c b/arch/x86/mm/mem_encrypt.c
index 16c5f37..53680a9 100644
--- a/arch/x86/mm/mem_encrypt.c
+++ b/arch/x86/mm/mem_encrypt.c
@@ -63,7 +63,6 @@ static void __init __sme_early_enc_dec(resource_size_t paddr,
if (!sme_me_mask)
return;

- local_flush_tlb();
wbinvd();

/*