[IA64] fix a few section mismatch warnings

Fix the following section mismatch warnings:

WARNING: vmlinux.o(.text+0x41902): Section mismatch: reference to .init.text:__alloc_bootmem (between 'ia64_mca_cpu_init' and 'ia64_do_tlb_purge')
WARNING: vmlinux.o(.text+0x49222): Section mismatch: reference to .init.text:__alloc_bootmem (between 'register_intr' and 'iosapic_register_intr')
WARNING: vmlinux.o(.text+0x62beb2): Section mismatch: reference to .init.text:__alloc_bootmem_node (between 'hubdev_init_node' and 'cnodeid_get_geoid')

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
Sam Ravnborg 2007-07-30 22:50:13 +02:00 committed by Tony Luck
parent 80ba80a9bf
commit 056e6d89aa
3 changed files with 13 additions and 8 deletions

View File

@ -560,7 +560,7 @@ iosapic_reassign_vector (int irq)
} }
} }
static struct iosapic_rte_info *iosapic_alloc_rte (void) static struct iosapic_rte_info * __init_refok iosapic_alloc_rte (void)
{ {
int i; int i;
struct iosapic_rte_info *rte; struct iosapic_rte_info *rte;

View File

@ -1750,8 +1750,17 @@ format_mca_init_stack(void *mca_data, unsigned long offset,
strncpy(p->comm, type, sizeof(p->comm)-1); strncpy(p->comm, type, sizeof(p->comm)-1);
} }
/* Do per-CPU MCA-related initialization. */ /* Caller prevents this from being called after init */
static void * __init_refok mca_bootmem(void)
{
void *p;
p = alloc_bootmem(sizeof(struct ia64_mca_cpu) * NR_CPUS +
KERNEL_STACK_SIZE);
return (void *)ALIGN((unsigned long)p, KERNEL_STACK_SIZE);
}
/* Do per-CPU MCA-related initialization. */
void __cpuinit void __cpuinit
ia64_mca_cpu_init(void *cpu_data) ia64_mca_cpu_init(void *cpu_data)
{ {
@ -1763,11 +1772,7 @@ ia64_mca_cpu_init(void *cpu_data)
int cpu; int cpu;
first_time = 0; first_time = 0;
mca_data = alloc_bootmem(sizeof(struct ia64_mca_cpu) mca_data = mca_bootmem();
* NR_CPUS + KERNEL_STACK_SIZE);
mca_data = (void *)(((unsigned long)mca_data +
KERNEL_STACK_SIZE - 1) &
(-KERNEL_STACK_SIZE));
for (cpu = 0; cpu < NR_CPUS; cpu++) { for (cpu = 0; cpu < NR_CPUS; cpu++) {
format_mca_init_stack(mca_data, format_mca_init_stack(mca_data,
offsetof(struct ia64_mca_cpu, mca_stack), offsetof(struct ia64_mca_cpu, mca_stack),

View File

@ -391,7 +391,7 @@ void sn_bus_free_sysdata(void)
* hubdev_init_node() - Creates the HUB data structure and link them to it's * hubdev_init_node() - Creates the HUB data structure and link them to it's
* own NODE specific data area. * own NODE specific data area.
*/ */
void hubdev_init_node(nodepda_t * npda, cnodeid_t node) void __init hubdev_init_node(nodepda_t * npda, cnodeid_t node)
{ {
struct hubdev_info *hubdev_info; struct hubdev_info *hubdev_info;
int size; int size;