From: Kirill Tkhai <tkhai@xxxxxxxxx> Date: Thu, 22 Aug 2013 15:49:13 +0400 > 21.08.2013, 23:30, "David Miller" <davem@xxxxxxxxxxxxx>: >> From: Kirill Tkhai <tkhai@xxxxxxxxx> >> Date: Sat, 17 Aug 2013 04:52:22 +0400 >> >>> %l5 iterates from 0 to %l6, where %l6 is (num_kernel_image_mappings + 1). >>> >>> The loop is equal to: >>> >>> for (l5 = 0; l5 < num_kernel_image_mappings + 1; l5++). >>> >>> Is there no error? Looks like we don't have to lock 4MB page, which number >>> is num_kernel_image_mappings. Or prom call has any side effect? >> >> That definitely looks like an off-by-one error, could you test the >> following obvious fix? > > This had worked for me, but I doubted about all of TLB types... > > So, now I confirm the patch. Thanks for testing, I gave it a quick test too, commited as follows and queued up for -stable. -------------------- [PATCH] sparc64: Fix off by one in trampoline TLB mapping installation loop. Reported-by: Kirill Tkhai <tkhai@xxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> --- arch/sparc/kernel/trampoline_64.S | 2 -- 1 file changed, 2 deletions(-) diff --git a/arch/sparc/kernel/trampoline_64.S b/arch/sparc/kernel/trampoline_64.S index e0b1e13..ad4bde3 100644 --- a/arch/sparc/kernel/trampoline_64.S +++ b/arch/sparc/kernel/trampoline_64.S @@ -129,7 +129,6 @@ startup_continue: clr %l5 sethi %hi(num_kernel_image_mappings), %l6 lduw [%l6 + %lo(num_kernel_image_mappings)], %l6 - add %l6, 1, %l6 mov 15, %l7 BRANCH_IF_ANY_CHEETAH(g1,g5,2f) @@ -222,7 +221,6 @@ niagara_lock_tlb: clr %l5 sethi %hi(num_kernel_image_mappings), %l6 lduw [%l6 + %lo(num_kernel_image_mappings)], %l6 - add %l6, 1, %l6 1: mov HV_FAST_MMU_MAP_PERM_ADDR, %o5 -- 1.7.11.7 -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html