]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
xtensa: add missing isync to the cpu_reset TLB code
authorMax Filippov <jcmvbkbc@gmail.com>
Mon, 12 Aug 2019 22:01:30 +0000 (15:01 -0700)
committerSasha Levin <sashal@kernel.org>
Sun, 25 Aug 2019 14:10:22 +0000 (10:10 -0400)
commit cd8869f4cb257f22b89495ca40f5281e58ba359c upstream.

ITLB entry modifications must be followed by the isync instruction
before the new entries are possibly used. cpu_reset lacks one isync
between ITLB way 6 initialization and jump to the identity mapping.
Add missing isync to xtensa cpu_reset.

Cc: stable@vger.kernel.org
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/xtensa/kernel/setup.c

index 176cb46bcf12cf25bb7ddf129cc99a79a587b221..0634bfb82a0bc9d20b87b119437e3e5f681fa078 100644 (file)
@@ -515,6 +515,7 @@ void cpu_reset(void)
                                      "add      %2, %2, %7\n\t"
                                      "addi     %0, %0, -1\n\t"
                                      "bnez     %0, 1b\n\t"
+                                     "isync\n\t"
                                      /* Jump to identity mapping */
                                      "jx       %3\n"
                                      "2:\n\t"