summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/exception.h
diff options
context:
space:
mode:
authorJamie Iles <jamie@jamieiles.com>2011-10-08 11:20:42 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-10-17 09:02:44 +0100
commit5a567d78c437e3be1c512734cdfe64b4ae6b82d7 (patch)
tree5d3afefe2b64fb4d53cbf1ee460f39037d83b76b /arch/arm/include/asm/exception.h
parent0af8aa0069e43f90d59666510342c05e97d8c4b8 (diff)
ARM: 7115/4: move __exception and friends to asm/exception.h
The definition of __exception_irq_entry for CONFIG_FUNCTION_GRAPH_TRACER=y needs linux/ftrace.h, but this creates a circular dependency with it's current home in asm/system.h. Create asm/exception.h and update all current users. v4: - rebase to rmk/for-next v3: - remove redundant includes of linux/ftrace.h v2: - document the usage restricitions of __exception* Cc: Zoltan Devai <zdevai@gmail.com> Signed-off-by: Jamie Iles <jamie@jamieiles.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/exception.h')
-rw-r--r--arch/arm/include/asm/exception.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/include/asm/exception.h b/arch/arm/include/asm/exception.h
new file mode 100644
index 000000000000..5abaf5bbd985
--- /dev/null
+++ b/arch/arm/include/asm/exception.h
@@ -0,0 +1,19 @@
+/*
+ * Annotations for marking C functions as exception handlers.
+ *
+ * These should only be used for C functions that are called from the low
+ * level exception entry code and not any intervening C code.
+ */
+#ifndef __ASM_ARM_EXCEPTION_H
+#define __ASM_ARM_EXCEPTION_H
+
+#include <linux/ftrace.h>
+
+#define __exception __attribute__((section(".exception.text")))
+#ifdef CONFIG_FUNCTION_GRAPH_TRACER
+#define __exception_irq_entry __irq_entry
+#else
+#define __exception_irq_entry __exception
+#endif
+
+#endif /* __ASM_ARM_EXCEPTION_H */