[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20071017042709.02525cbd.pj@sgi.com>
Date: Wed, 17 Oct 2007 04:27:09 -0700
From: Paul Jackson <pj@....com>
To: Paul Jackson <pj@....com>
Cc: ego@...ibm.com, torvalds@...ux-foundation.org,
akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
vatsa@...ibm.com, rusty@...tcorp.com.au, dipankar@...ibm.com,
oleg@...sign.ru, mingo@...e.hu, paulmck@...ibm.com
Subject: Re: [RFC PATCH 1/4] Refcount Based Cpu-Hotplug Implementation
With the following patch, the four cpu hotplug patches by
Gautham R Shenoy boot successfully on my sn2_defconfig ia64
SN2 Altix system.
This patch moves the cpu_hotplug_init() code outside of the
#ifdef CONFIG_HOTPLUG_CPU code.
I will confess to being confused however as to the best way
to handle this. Having "cpu_hotplug_init" be a piece of code
that has to execute whether or not CONFIG_HOTPLUG_CPU is
enabled doesn't seem right.
Signed-off-by: Paul Jackson <pj@....com>
---
include/linux/cpu.h | 3 +--
kernel/cpu.c | 4 ++--
2 files changed, 3 insertions(+), 4 deletions(-)
--- 2.6.23-mm1.orig/include/linux/cpu.h 2007-10-17 03:59:59.529623639 -0700
+++ 2.6.23-mm1/include/linux/cpu.h 2007-10-17 04:03:56.257223754 -0700
@@ -83,6 +83,7 @@ static inline void unregister_cpu_notifi
#endif /* CONFIG_SMP */
extern struct sysdev_class cpu_sysdev_class;
+extern void cpu_hotplug_init(void);
#ifdef CONFIG_HOTPLUG_CPU
/* Stop CPUs going up and down. */
@@ -97,7 +98,6 @@ static inline void cpuhotplug_mutex_unlo
mutex_unlock(cpu_hp_mutex);
}
-extern void cpu_hotplug_init(void);
extern void get_online_cpus(void);
extern void put_online_cpus(void);
#define hotcpu_notifier(fn, pri) { \
@@ -117,7 +117,6 @@ static inline void cpuhotplug_mutex_lock
static inline void cpuhotplug_mutex_unlock(struct mutex *cpu_hp_mutex)
{ }
-#define cpu_hotplug_init() do { } while (0)
#define get_online_cpus() do { } while (0)
#define put_online_cpus() do { } while (0)
#define hotcpu_notifier(fn, pri) do { (void)(fn); } while (0)
--- 2.6.23-mm1.orig/kernel/cpu.c 2007-10-17 03:59:59.873628872 -0700
+++ 2.6.23-mm1/kernel/cpu.c 2007-10-17 04:04:52.522079165 -0700
@@ -38,8 +38,6 @@ static struct {
#define writer_exists() (cpu_hotplug.active_writer != NULL)
-#ifdef CONFIG_HOTPLUG_CPU
-
void __init cpu_hotplug_init(void)
{
cpu_hotplug.active_writer = NULL;
@@ -48,6 +46,8 @@ void __init cpu_hotplug_init(void)
init_completion(&cpu_hotplug.readers_done);
}
+#ifdef CONFIG_HOTPLUG_CPU
+
void get_online_cpus(void)
{
might_sleep();
--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@....com> 1.925.600.0401
-
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