Name: Boot code __init removal for ia64 Author: Kimio Suganuma Status: Tested on 2.5.14 Depends: Hotcpu/nonlinear-cpus-ia64.patch.gz Hotcpu/do-fork.patch.gz D: This changes various parts of the ia86 boot code to use D: __devinit/__devinitdata instead of __init/__initdata, in D: preparation for hotplugging CPUs. diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/arch/ia64/kernel/setup.c linux-2.5.19.15134.updated/arch/ia64/kernel/setup.c --- linux-2.5.19.15134/arch/ia64/kernel/setup.c Thu May 30 10:00:47 2002 +++ linux-2.5.19.15134.updated/arch/ia64/kernel/setup.c Thu May 30 11:30:29 2002 @@ -531,7 +531,7 @@ cpu_init (void) { extern char __per_cpu_start[], __phys_per_cpu_start[]; - extern void __init ia64_mmu_init (void *); + extern void __devinit ia64_mmu_init (void *); unsigned long num_phys_stacked; pal_vm_info_2_u_t vmi; unsigned int max_ctx; diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/arch/ia64/kernel/smpboot.c linux-2.5.19.15134.updated/arch/ia64/kernel/smpboot.c --- linux-2.5.19.15134/arch/ia64/kernel/smpboot.c Thu May 30 11:30:24 2002 +++ linux-2.5.19.15134.updated/arch/ia64/kernel/smpboot.c Thu May 30 11:30:29 2002 @@ -66,7 +66,7 @@ #define DEBUG_ITC_SYNC 0 -extern void __init calibrate_delay(void); +extern void __devinit calibrate_delay(void); extern void start_ap(void); extern unsigned long ia64_iobase; @@ -280,7 +280,7 @@ /* * 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) { local_cpu_data->prof_counter = 1; @@ -299,7 +299,7 @@ static volatile atomic_t smp_commenced = ATOMIC_INIT(0); -void __init +void __devinit smp_commence (void) { /* @@ -312,7 +312,7 @@ } -static void __init +static void __devinit smp_callin (void) { int cpuid, phys_id; @@ -371,7 +371,7 @@ /* * Activate a secondary processor. head.S calls this. */ -int __init +int __devinit start_secondary (void *unused) { extern int cpu_idle (void); @@ -388,7 +388,7 @@ return cpu_idle(); } -static struct task_struct * __init +static struct task_struct * __devinit fork_by_hand (void) { /* @@ -398,7 +398,7 @@ return do_fork(CLONE_VM|CLONE_IDLETASK, 0, 0, 0); } -static void __init +static void __devinit do_boot_cpu (int sapicid) { struct task_struct *idle; diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/arch/ia64/kernel/time.c linux-2.5.19.15134.updated/arch/ia64/kernel/time.c --- linux-2.5.19.15134/arch/ia64/kernel/time.c Wed Feb 20 17:55:59 2002 +++ linux-2.5.19.15134.updated/arch/ia64/kernel/time.c Thu May 30 11:30:29 2002 @@ -206,7 +206,7 @@ /* * Encapsulate access to the itm structure for SMP. */ -void __init +void __devinit ia64_cpu_local_tick (void) { int cpu = smp_processor_id(); @@ -228,7 +228,7 @@ ia64_set_itm(local_cpu_data->itm_next); } -void __init +void __devinit ia64_init_itm (void) { unsigned long platform_base_freq, itc_freq, drift; diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/arch/ia64/mm/init.c linux-2.5.19.15134.updated/arch/ia64/mm/init.c --- linux-2.5.19.15134/arch/ia64/mm/init.c Thu May 30 10:00:47 2002 +++ linux-2.5.19.15134.updated/arch/ia64/mm/init.c Thu May 30 11:30:55 2002 @@ -247,11 +247,11 @@ return page; } -void __init +void __devinit ia64_mmu_init (void *my_cpu_data) { unsigned long psr, rid, pta, impl_va_bits; - extern void __init tlb_init (void); + extern void __devinit tlb_init (void); #ifdef CONFIG_DISABLE_VHPT # define VHPT_ENABLE_BIT 0 #else diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/arch/ia64/mm/tlb.c linux-2.5.19.15134.updated/arch/ia64/mm/tlb.c --- linux-2.5.19.15134/arch/ia64/mm/tlb.c Tue Apr 23 11:39:33 2002 +++ linux-2.5.19.15134.updated/arch/ia64/mm/tlb.c Thu May 30 11:30:29 2002 @@ -175,7 +175,7 @@ ia64_insn_group_barrier(); } -void __init +void __devinit ia64_tlb_init (void) { ia64_ptce_info_t ptce_info; diff -urN -I \$.*\$ --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal linux-2.5.19.15134/include/asm-ia64/smp.h linux-2.5.19.15134.updated/include/asm-ia64/smp.h --- linux-2.5.19.15134/include/asm-ia64/smp.h Thu May 30 11:30:24 2002 +++ linux-2.5.19.15134.updated/include/asm-ia64/smp.h Thu May 30 11:30:29 2002 @@ -34,7 +34,7 @@ int cpu_phys_id[NR_CPUS]; } smp_boot_data __initdata; -extern char no_int_routing __initdata; +extern char no_int_routing __devinitdata; extern volatile unsigned long cpu_online_map; extern unsigned long ipi_base_addr;