forked from Minki/linux
modules: fold percpu_modcopy into module.c
percpu_modcopy() is defined multiple times in arch files. However, the only user is module.c. Put a static definition into module.c and remove the definitions from the arch files. Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
914c82694c
commit
6ddfee0e79
@ -940,14 +940,3 @@ module_arch_cleanup (struct module *mod)
|
||||
if (mod->arch.core_unw_table)
|
||||
unw_remove_unwind_table(mod->arch.core_unw_table);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
void
|
||||
percpu_modcopy (void *pcpudst, const void *src, unsigned long size)
|
||||
{
|
||||
unsigned int i;
|
||||
for_each_possible_cpu(i) {
|
||||
memcpy(pcpudst + per_cpu_offset(i), src, size);
|
||||
}
|
||||
}
|
||||
#endif /* CONFIG_SMP */
|
||||
|
@ -22,10 +22,6 @@
|
||||
#define DECLARE_PER_CPU(type, name) \
|
||||
extern PER_CPU_ATTRIBUTES __typeof__(type) per_cpu__##name
|
||||
|
||||
/*
|
||||
* Pretty much a literal copy of asm-generic/percpu.h, except that percpu_modcopy() is an
|
||||
* external routine, to avoid include-hell.
|
||||
*/
|
||||
#ifdef CONFIG_SMP
|
||||
|
||||
extern unsigned long __per_cpu_offset[NR_CPUS];
|
||||
@ -38,7 +34,6 @@ DECLARE_PER_CPU(unsigned long, local_per_cpu_offset);
|
||||
#define __get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, __ia64_per_cpu_var(local_per_cpu_offset)))
|
||||
#define __raw_get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, __ia64_per_cpu_var(local_per_cpu_offset)))
|
||||
|
||||
extern void percpu_modcopy(void *pcpudst, const void *src, unsigned long size);
|
||||
extern void setup_per_cpu_areas (void);
|
||||
extern void *per_cpu_init(void);
|
||||
|
||||
|
@ -21,15 +21,6 @@
|
||||
#define __get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, __my_cpu_offset()))
|
||||
#define __raw_get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, local_paca->data_offset))
|
||||
|
||||
/* A macro to avoid #include hell... */
|
||||
#define percpu_modcopy(pcpudst, src, size) \
|
||||
do { \
|
||||
unsigned int __i; \
|
||||
for_each_possible_cpu(__i) \
|
||||
memcpy((pcpudst)+__per_cpu_offset(__i), \
|
||||
(src), (size)); \
|
||||
} while (0)
|
||||
|
||||
extern void setup_per_cpu_areas(void);
|
||||
|
||||
#else /* ! SMP */
|
||||
|
@ -39,15 +39,6 @@ extern unsigned long __per_cpu_offset[NR_CPUS];
|
||||
#define per_cpu(var,cpu) __reloc_hide(var,__per_cpu_offset[cpu])
|
||||
#define per_cpu_offset(x) (__per_cpu_offset[x])
|
||||
|
||||
/* A macro to avoid #include hell... */
|
||||
#define percpu_modcopy(pcpudst, src, size) \
|
||||
do { \
|
||||
unsigned int __i; \
|
||||
for_each_possible_cpu(__i) \
|
||||
memcpy((pcpudst)+__per_cpu_offset[__i], \
|
||||
(src), (size)); \
|
||||
} while (0)
|
||||
|
||||
#else /* ! SMP */
|
||||
|
||||
#define __get_cpu_var(var) __reloc_hide(var,0)
|
||||
|
Loading…
Reference in New Issue
Block a user