Commit c4dff897 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] ia64 cpu hotplug: init section fixes

From: Ashok Raj <ashok.raj@intel.com>

Contains changes from __init to __devinit to support cpu hotplug Changes only
arch/ia64 portions of the kernel tree.
parent 8fe08444
...@@ -575,7 +575,7 @@ get_max_cacheline_size (void) ...@@ -575,7 +575,7 @@ get_max_cacheline_size (void)
void void
cpu_init (void) cpu_init (void)
{ {
extern void __init ia64_mmu_init (void *); extern void __devinit ia64_mmu_init (void *);
unsigned long num_phys_stacked; unsigned long num_phys_stacked;
pal_vm_info_2_u_t vmi; pal_vm_info_2_u_t vmi;
unsigned int max_ctx; unsigned int max_ctx;
......
...@@ -69,7 +69,7 @@ static volatile unsigned long go[SLAVE + 1]; ...@@ -69,7 +69,7 @@ static volatile unsigned long go[SLAVE + 1];
#define DEBUG_ITC_SYNC 0 #define DEBUG_ITC_SYNC 0
extern void __init calibrate_delay (void); extern void __devinit calibrate_delay (void);
extern void start_ap (void); extern void start_ap (void);
extern unsigned long ia64_iobase; extern unsigned long ia64_iobase;
...@@ -262,12 +262,12 @@ ia64_sync_itc (unsigned int master) ...@@ -262,12 +262,12 @@ ia64_sync_itc (unsigned int master)
/* /*
* Ideally sets up per-cpu profiling hooks. Doesn't do much now... * Ideally sets up per-cpu profiling hooks. Doesn't do much now...
*/ */
static inline void __init static inline void __devinit
smp_setup_percpu_timer (void) smp_setup_percpu_timer (void)
{ {
} }
static void __init static void __devinit
smp_callin (void) smp_callin (void)
{ {
int cpuid, phys_id; int cpuid, phys_id;
...@@ -333,7 +333,7 @@ smp_callin (void) ...@@ -333,7 +333,7 @@ smp_callin (void)
/* /*
* Activate a secondary processor. head.S calls this. * Activate a secondary processor. head.S calls this.
*/ */
int __init int __devinit
start_secondary (void *unused) start_secondary (void *unused)
{ {
extern int cpu_idle (void); extern int cpu_idle (void);
...@@ -346,7 +346,7 @@ start_secondary (void *unused) ...@@ -346,7 +346,7 @@ start_secondary (void *unused)
return cpu_idle(); return cpu_idle();
} }
static struct task_struct * __init static struct task_struct * __devinit
fork_by_hand (void) fork_by_hand (void)
{ {
/* /*
...@@ -356,7 +356,7 @@ fork_by_hand (void) ...@@ -356,7 +356,7 @@ fork_by_hand (void)
return copy_process(CLONE_VM|CLONE_IDLETASK, 0, 0, 0, NULL, NULL); return copy_process(CLONE_VM|CLONE_IDLETASK, 0, 0, 0, NULL, NULL);
} }
static int __init static int __devinit
do_boot_cpu (int sapicid, int cpu) do_boot_cpu (int sapicid, int cpu)
{ {
struct task_struct *idle; struct task_struct *idle;
......
...@@ -326,7 +326,7 @@ ia64_cpu_local_tick (void) ...@@ -326,7 +326,7 @@ ia64_cpu_local_tick (void)
ia64_set_itm(local_cpu_data->itm_next); ia64_set_itm(local_cpu_data->itm_next);
} }
void __init void __devinit
ia64_init_itm (void) ia64_init_itm (void)
{ {
unsigned long platform_base_freq, itc_freq; unsigned long platform_base_freq, itc_freq;
......
...@@ -275,11 +275,11 @@ setup_gate (void) ...@@ -275,11 +275,11 @@ setup_gate (void)
ia64_patch_gate(); ia64_patch_gate();
} }
void __init void __devinit
ia64_mmu_init (void *my_cpu_data) ia64_mmu_init (void *my_cpu_data)
{ {
unsigned long psr, pta, impl_va_bits; unsigned long psr, pta, impl_va_bits;
extern void __init tlb_init (void); extern void __devinit tlb_init (void);
int cpu; int cpu;
#ifdef CONFIG_DISABLE_VHPT #ifdef CONFIG_DISABLE_VHPT
......
...@@ -166,7 +166,7 @@ flush_tlb_range (struct vm_area_struct *vma, unsigned long start, unsigned long ...@@ -166,7 +166,7 @@ flush_tlb_range (struct vm_area_struct *vma, unsigned long start, unsigned long
} }
EXPORT_SYMBOL(flush_tlb_range); EXPORT_SYMBOL(flush_tlb_range);
void __init void __devinit
ia64_tlb_init (void) ia64_tlb_init (void)
{ {
ia64_ptce_info_t ptce_info; ia64_ptce_info_t ptce_info;
......
...@@ -36,7 +36,7 @@ extern struct smp_boot_data { ...@@ -36,7 +36,7 @@ extern struct smp_boot_data {
int cpu_phys_id[NR_CPUS]; int cpu_phys_id[NR_CPUS];
} smp_boot_data __initdata; } smp_boot_data __initdata;
extern char no_int_routing __initdata; extern char no_int_routing __devinitdata;
extern cpumask_t phys_cpu_present_map; extern cpumask_t phys_cpu_present_map;
extern cpumask_t cpu_online_map; extern cpumask_t cpu_online_map;
...@@ -113,6 +113,7 @@ hard_smp_processor_id (void) ...@@ -113,6 +113,7 @@ hard_smp_processor_id (void)
/* Upping and downing of CPUs */ /* Upping and downing of CPUs */
extern int __cpu_disable (void); extern int __cpu_disable (void);
extern void __cpu_die (unsigned int cpu); extern void __cpu_die (unsigned int cpu);
extern void cpu_die (void) __attribute__ ((noreturn));
extern int __cpu_up (unsigned int cpu); extern int __cpu_up (unsigned int cpu);
extern void __init smp_build_cpu_map(void); extern void __init smp_build_cpu_map(void);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment