[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1267186768-2067-1-git-send-email-jacob.jun.pan@linux.intel.com>
Date: Fri, 26 Feb 2010 04:19:28 -0800
From: Jacob Pan <jacob.jun.pan@...ux.intel.com>
To: Jacob Pan <jacob.jun.pan@...ux.intel.com>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...e.hu>,
Thomas Gleixner <tglx@...utronix.de>,
Arjan van de Ven <arjan@...ux.intel.com>,
LKML <linux-kernel@...r.kernel.org>
Cc: Jacob Pan <jacob.jun.pan@...ux.intel.com>
Subject: [PATCH] x86: remove redundant stack canary initialization
After we moved boot_init_stack_canary to the secondary CPU start code, there is
no need to do this again in cpu_idle(). Stack canary are initialized earlier than
cpu_idle() for both boot and secondary CPUs.
This is suggested by Thomas Gleixner in http://lkml.org/lkml/2010/2/20/14
Signed-off-by: Jacob Pan <jacob.jun.pan@...ux.intel.com>
---
arch/x86/kernel/process_32.c | 10 ----------
arch/x86/kernel/process_64.c | 10 ----------
2 files changed, 0 insertions(+), 20 deletions(-)
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index 37ad1e0..6dae5bf 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -9,7 +9,6 @@
* This file handles the architecture-dependent parts of process handling..
*/
-#include <linux/stackprotector.h>
#include <linux/cpu.h>
#include <linux/errno.h>
#include <linux/sched.h>
@@ -85,15 +84,6 @@ void cpu_idle(void)
{
int cpu = smp_processor_id();
- /*
- * If we're the non-boot CPU, nothing set the stack canary up
- * for us. CPU0 already has it initialized but no harm in
- * doing it again. This is a good place for updating it, as
- * we wont ever return from this function (so the invalid
- * canaries already on the stack wont ever trigger).
- */
- boot_init_stack_canary();
-
current_thread_info()->status |= TS_POLLING;
/* endless idle loop with no priority at all */
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 41a26a8..68ecec1 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -14,7 +14,6 @@
* This file handles the architecture-dependent parts of process handling..
*/
-#include <linux/stackprotector.h>
#include <linux/cpu.h>
#include <linux/errno.h>
#include <linux/sched.h>
@@ -110,15 +109,6 @@ void cpu_idle(void)
{
current_thread_info()->status |= TS_POLLING;
- /*
- * If we're the non-boot CPU, nothing set the stack canary up
- * for us. CPU0 already has it initialized but no harm in
- * doing it again. This is a good place for updating it, as
- * we wont ever return from this function (so the invalid
- * canaries already on the stack wont ever trigger).
- */
- boot_init_stack_canary();
-
/* endless idle loop with no priority at all */
while (1) {
tick_nohz_stop_sched_tick(1);
--
1.5.6.5
--
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