[PATCH] powerpc/mm/radix: Fix always false comparison against MMU_NO_CONTEXT

Mathieu Malaterre malat at debian.org
Fri Mar 23 08:03:18 AEDT 2018

In commit 9690c1574268 ("powerpc/mm/radix: Fix always false comparison
against MMU_NO_CONTEXT") an issue was discovered where `mm->context.id` was
being truncated to an `unsigned int`, while the PID is actually an
`unsigned long`. Update the earlier patch by fixing one remaining
occurrence. Discovered during a compilation with W=1:

  arch/powerpc/mm/tlb-radix.c:702:19: error: comparison is always false due to limited range of data type [-Werror=type-limits]

Signed-off-by: Mathieu Malaterre <malat at debian.org>
 arch/powerpc/mm/tlb-radix.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/mm/tlb-radix.c b/arch/powerpc/mm/tlb-radix.c
index f6d61a75e739..f2d27d61ec48 100644
--- a/arch/powerpc/mm/tlb-radix.c
+++ b/arch/powerpc/mm/tlb-radix.c
@@ -697,7 +697,7 @@ void radix__flush_tlb_pte_p9_dd1(unsigned long old_pte, struct mm_struct *mm,
 extern void radix_kvm_prefetch_workaround(struct mm_struct *mm)
-	unsigned int pid = mm->context.id;
+	unsigned long pid = mm->context.id;
 	if (unlikely(pid == MMU_NO_CONTEXT))

More information about the Linuxppc-dev mailing list