[PATCH] ftrace/x86: Use kernel identity mapping only when CONFIG_DEBUG_RODATA enabled

From: Petr Mladek
Date: Wed Jun 04 2014 - 11:43:21 EST


This is just a tiny optimization. The remapping is not needed when the
kernel text mapping is read write all the time.

Suggested-by: Jan Beulich <jbeulich@xxxxxxxx>
Signed-off-by: Petr Mladek <pmladek@xxxxxxx>
---
arch/x86/kernel/ftrace.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
index cbc4a91b131e..a7a517bb793e 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -79,6 +79,7 @@ within(unsigned long addr, unsigned long start, unsigned long end)

static unsigned long text_ip_addr(unsigned long ip)
{
+#ifdef CONFIG_DEBUG_RODATA
/*
* On x86_64, kernel text mappings are mapped read-only with
* CONFIG_DEBUG_RODATA. So we use the kernel identity mapping instead
@@ -89,7 +90,7 @@ static unsigned long text_ip_addr(unsigned long ip)
*/
if (within(ip, (unsigned long)_text, (unsigned long)_etext))
ip = (unsigned long)__va(__pa_symbol(ip));
-
+#endif
return ip;
}

--
1.8.4

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