[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100421192319.GA16719@debian>
Date: Thu, 22 Apr 2010 00:53:19 +0530
From: Rabin Vincent <rabin@....in>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: linux-kernel@...r.kernel.org,
Abhishek Sagar <sagar.abhishek@...il.com>,
Frederic Weisbecker <fweisbec@...il.com>,
Steven Rostedt <rostedt@...dmis.org>,
Ingo Molnar <mingo@...hat.com>,
Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 05/10] ARM: ftrace: add ENDPROC annotations
On Sat, Mar 13, 2010 at 08:45:46AM +0000, Russell King - ARM Linux wrote:
> On Sat, Mar 13, 2010 at 12:19:42PM +0530, Rabin Vincent wrote:
> >
> > .globl ftrace_stub
> > -ftrace_stub:
> > +ENTRY(ftrace_stub)
>
> ENTRY does the .globl for you, so please kill your own version.
Updated patch below.
>From 87b70ed633da00fe9873a5819c6d24e57368de43 Mon Sep 17 00:00:00 2001
From: Rabin Vincent <rabin@....in>
Date: Sun, 14 Feb 2010 01:18:33 +0530
Subject: [PATCH] ARM: ftrace: add ENDPROC annotations
When building as Thumb-2, the ".type foo, %function" annotation in
ENDPROC seems to be required in order for the assembly routines to be
recognized as Thumb-2 code. If the ENDPROC annotations are not present,
calls to these routines are generated as BLX instead of BL.
Acked-by: Catalin Marinas <catalin.marinas@....com>
Signed-off-by: Rabin Vincent <rabin@....in>
---
arch/arm/kernel/entry-common.S | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S
index 6805a72..c7a8c20 100644
--- a/arch/arm/kernel/entry-common.S
+++ b/arch/arm/kernel/entry-common.S
@@ -146,6 +146,7 @@ mcount_call:
bl ftrace_stub
ldr lr, [fp, #-4] @ restore lr
ldmia sp!, {r0-r3, pc}
+ENDPROC(mcount)
ENTRY(ftrace_caller)
stmdb sp!, {r0-r3, lr}
@@ -158,6 +159,7 @@ ftrace_call:
bl ftrace_stub
ldr lr, [fp, #-4] @ restore lr
ldmia sp!, {r0-r3, pc}
+ENDPROC(ftrace_caller)
#else
@@ -179,6 +181,7 @@ gnu_trace:
mov pc, r2
ldmia sp!, {r0-r3, ip, lr}
mov pc, ip
+ENDPROC(__gnu_mcount_nc)
#ifdef CONFIG_OLD_MCOUNT
/*
@@ -204,13 +207,14 @@ trace:
mov pc, r2
ldr lr, [fp, #-4] @ restore lr
ldmia sp!, {r0-r3, pc}
+ENDPROC(mcount)
#endif
#endif /* CONFIG_DYNAMIC_FTRACE */
- .globl ftrace_stub
-ftrace_stub:
+ENTRY(ftrace_stub)
mov pc, lr
+ENDPROC(ftrace_stub)
#endif /* CONFIG_FUNCTION_TRACER */
--
1.7.0.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists