Re: [PATCH kernel v2] powerpc/mm: Flush radix process translations when setting MMU type
From: Laurent Vivier <lvivier@redhat.com>
Date: 2018-02-13 11:25:37
On 07/02/2018 18:49, Daniel Henrique Barboza wrote:
On 02/07/2018 12:33 PM, Laurent Vivier wrote:quoted
On 01/02/2018 06:09, Alexey Kardashevskiy wrote:quoted
Radix guests do normally invalidate process-scoped translations when a new pid is allocated but migrated guests do not invalidate these so migrated guests crash sometime, especially easy to reproduce with migration happening within first 10 seconds after the guest boot start on the same machine. This adds the "Invalidate process-scoped translations" flush to fix radix guests migration. Signed-off-by: Alexey Kardashevskiy <redacted> --- Changes: v2: * removed PPC_TLBIE_5() from the !(old&PATH_HR) case as it is pointless on hash --- Not so sure that "process-scoped translations" only require flushing at pid allocation and migration. --- arch/powerpc/mm/pgtable_64.c | 2 ++ 1 file changed, 2 insertions(+)diff --git a/arch/powerpc/mm/pgtable_64.c b/arch/powerpc/mm/pgtable_64.c index c9a623c..d75dd52 100644 --- a/arch/powerpc/mm/pgtable_64.c +++ b/arch/powerpc/mm/pgtable_64.c@@ -471,6 +471,8 @@ void mmu_partition_table_set_entry(unsigned intlpid, unsigned long dw0, if (old & PATB_HR) { asm volatile(PPC_TLBIE_5(%0,%1,2,0,1) : : "r" (TLBIEL_INVAL_SET_LPID), "r" (lpid)); + asm volatile(PPC_TLBIE_5(%0,%1,2,1,1) : : + "r" (TLBIEL_INVAL_SET_LPID), "r" (lpid)); trace_tlbie(lpid, 0, TLBIEL_INVAL_SET_LPID, lpid, 2, 0, 1); } else { asm volatile(PPC_TLBIE_5(%0,%1,2,0,0) : :This patch fixes for me a VM migration crash on POWER9.Same here. Tested-by: Daniel Henrique Barboza <redacted>quoted
Tested-by: Laurent Vivier <lvivier@redhat.com>
Any hope to have this patch merged soon? It fixes a real problem and migration of VM is not reliable without it. Thanks, Laurent