[PATCH] x86-64: Prevent gcc from optimizing away venosys_1()

From: Dave Anderson
Date: Fri Jun 03 2011 - 11:20:43 EST


One of the changes in commit a4928cffe6435caf427ae673131a633c1329dbf3
made the venosys_1() system call static, which causes it to be
optimized out of the kernel:

Author: Ingo Molnar <mingo@xxxxxxx>
Date: Wed Apr 23 13:20:56 2008 +0200

"make namespacecheck" fixes

Signed-off-by: Ingo Molnar <mingo@xxxxxxx>

Commit 2e8ad43ec07545780ce7992cb18e2d82c7abd24c had originally
changed all vsyscalls from being static for the same reason:

Author: Andi Kleen <ak@xxxxxxx>
Date: Mon Sep 12 18:49:24 2005 +0200

[PATCH] x86-64: Prevent gcc 4 from optimizing away vsyscalls

They were previously static.

Signed-off-by: Andi Kleen <ak@xxxxxxx>
Signed-off-by: Linus Torvalds <torvalds@xxxxxxxx>

Reported-by: Jan Stancek <jstancek@xxxxxxxxxx>
Signed-off-by: Dave Anderson <anderson@xxxxxxxxxx>

---

diff --git a/arch/x86/kernel/vsyscall_64.c b/arch/x86/kernel/vsyscall_64.c
index 3e68218..60a34af 100644
--- a/arch/x86/kernel/vsyscall_64.c
+++ b/arch/x86/kernel/vsyscall_64.c
@@ -222,7 +222,7 @@ vgetcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache)
return 0;
}

-static long __vsyscall(3) venosys_1(void)
+long __vsyscall(3) venosys_1(void)
{
return -ENOSYS;
}
--
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/