[v3] Revert "powerpc: slightly improve cache helpers"

Message ID 20190809220348.127314-1-ndesaulniers@google.com
State New
Headers show
Series
  • [v3] Revert "powerpc: slightly improve cache helpers"
Related show

Commit Message

Nick Desaulniers Aug. 9, 2019, 10:03 p.m.
This reverts commit 6c5875843b87c3adea2beade9d1b8b3d4523900a.

Work around Clang bug preventing ppc32 from booting.

Link: https://bugs.llvm.org/show_bug.cgi?id=42762
Link: https://github.com/ClangBuiltLinux/linux/issues/593
Debugged-by: Nathan Chancellor <natechancellor@gmail.com>
Reported-by: Nathan Chancellor <natechancellor@gmail.com>
Reported-by: kbuild test robot <lkp@intel.com>
Suggested-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>

---
Changes V2 -> V3:
* Just revert, as per Christophe.
Changes V1 -> V2:
* Change to ouput paremeter.


 arch/powerpc/include/asm/cache.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

-- 
2.23.0.rc1.153.gdeed80330f-goog

Comments

Michael Ellerman Aug. 10, 2019, 9:09 a.m. | #1
Nick Desaulniers <ndesaulniers@google.com> writes:
> This reverts commit 6c5875843b87c3adea2beade9d1b8b3d4523900a.

>

> Work around Clang bug preventing ppc32 from booting.

>

> Link: https://bugs.llvm.org/show_bug.cgi?id=42762

> Link: https://github.com/ClangBuiltLinux/linux/issues/593

> Debugged-by: Nathan Chancellor <natechancellor@gmail.com>

> Reported-by: Nathan Chancellor <natechancellor@gmail.com>

> Reported-by: kbuild test robot <lkp@intel.com>

> Suggested-by: Christophe Leroy <christophe.leroy@c-s.fr>

> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>

> ---

> Changes V2 -> V3:

> * Just revert, as per Christophe.

> Changes V1 -> V2:

> * Change to ouput paremeter.


Thanks. I actually already had this revert in my tree since ~10 days
ago, but hadn't pushed it yet because the discussion was ongoing.

So I'll just use that version, and ask Linus to pull it.

cheers

Patch

diff --git a/arch/powerpc/include/asm/cache.h b/arch/powerpc/include/asm/cache.h
index b3388d95f451..45e3137ccd71 100644
--- a/arch/powerpc/include/asm/cache.h
+++ b/arch/powerpc/include/asm/cache.h
@@ -107,22 +107,22 @@  extern void _set_L3CR(unsigned long);
 
 static inline void dcbz(void *addr)
 {
-	__asm__ __volatile__ ("dcbz %y0" : : "Z"(*(u8 *)addr) : "memory");
+	__asm__ __volatile__ ("dcbz 0, %0" : : "r"(addr) : "memory");
 }
 
 static inline void dcbi(void *addr)
 {
-	__asm__ __volatile__ ("dcbi %y0" : : "Z"(*(u8 *)addr) : "memory");
+	__asm__ __volatile__ ("dcbi 0, %0" : : "r"(addr) : "memory");
 }
 
 static inline void dcbf(void *addr)
 {
-	__asm__ __volatile__ ("dcbf %y0" : : "Z"(*(u8 *)addr) : "memory");
+	__asm__ __volatile__ ("dcbf 0, %0" : : "r"(addr) : "memory");
 }
 
 static inline void dcbst(void *addr)
 {
-	__asm__ __volatile__ ("dcbst %y0" : : "Z"(*(u8 *)addr) : "memory");
+	__asm__ __volatile__ ("dcbst 0, %0" : : "r"(addr) : "memory");
 }
 #endif /* !__ASSEMBLY__ */
 #endif /* __KERNEL__ */