gcc supports an s390 specific function attribute called "hotpatch".
It can be used to specify the number of halfwords that shall be added before
and after a function that shall be filled with nops for runtime patching.

s390 will use the hotpatch attribute for function tracing, therefore
introduce a nohotpatch define, depending on CC_USING_HOTPATCH, and add it
to the existing notrace define.

Signed-off-by: Heiko Carstens <[email protected]>
---
 include/linux/compiler.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/include/linux/compiler.h b/include/linux/compiler.h
index b4fd7013c9f4..b4ab98e0e10b 100644
--- a/include/linux/compiler.h
+++ b/include/linux/compiler.h
@@ -54,7 +54,13 @@ extern void __chk_io_ptr(const volatile void __iomem *);
 #include <linux/compiler-gcc.h>
 #endif
 
-#define notrace __attribute__((no_instrument_function))
+#ifdef CC_USING_HOTPATCH
+#define nohotpatch __attribute__((hotpatch(0,0)))
+#else
+#define nohotpatch
+#endif
+
+#define notrace __attribute__((no_instrument_function)) nohotpatch
 
 /* Intel compiler defines __GNUC__. So we will overwrite implementations
  * coming from above header files here
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to