Commit 96d0821c authored by David Gibson's avatar David Gibson Committed by Linus Torvalds

[PATCH] Fix function/macro name collision on i386 oprofile

The i386 OProfile code has a function named nmi_exit(), which collides with
the nmi_exit() macro in linux/hardirq.h.  At the moment, we get away with
it, because hardirq.h isn't included in the oprofile code.  I hit this as a
bug when working with a patch which (indirectly) adds a #include of
hardirq.h to oprofile.

Regardless, the name collision is probably not a good idea, so this patch
fixes it, renaming the oprofile function to op_nmi_exit().  It also renames
the nmi_init() and nmi_timer_init() functions similarly, for consistency.
Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent f26fdd59
...@@ -15,9 +15,9 @@ ...@@ -15,9 +15,9 @@
* with the NMI mode driver. * with the NMI mode driver.
*/ */
extern int nmi_init(struct oprofile_operations * ops); extern int op_nmi_init(struct oprofile_operations * ops);
extern int nmi_timer_init(struct oprofile_operations * ops); extern int op_nmi_timer_init(struct oprofile_operations * ops);
extern void nmi_exit(void); extern void op_nmi_exit(void);
extern void x86_backtrace(struct pt_regs * const regs, unsigned int depth); extern void x86_backtrace(struct pt_regs * const regs, unsigned int depth);
...@@ -28,11 +28,11 @@ int __init oprofile_arch_init(struct oprofile_operations * ops) ...@@ -28,11 +28,11 @@ int __init oprofile_arch_init(struct oprofile_operations * ops)
ret = -ENODEV; ret = -ENODEV;
#ifdef CONFIG_X86_LOCAL_APIC #ifdef CONFIG_X86_LOCAL_APIC
ret = nmi_init(ops); ret = op_nmi_init(ops);
#endif #endif
#ifdef CONFIG_X86_IO_APIC #ifdef CONFIG_X86_IO_APIC
if (ret < 0) if (ret < 0)
ret = nmi_timer_init(ops); ret = op_nmi_timer_init(ops);
#endif #endif
ops->backtrace = x86_backtrace; ops->backtrace = x86_backtrace;
...@@ -43,6 +43,6 @@ int __init oprofile_arch_init(struct oprofile_operations * ops) ...@@ -43,6 +43,6 @@ int __init oprofile_arch_init(struct oprofile_operations * ops)
void oprofile_arch_exit(void) void oprofile_arch_exit(void)
{ {
#ifdef CONFIG_X86_LOCAL_APIC #ifdef CONFIG_X86_LOCAL_APIC
nmi_exit(); op_nmi_exit();
#endif #endif
} }
...@@ -355,7 +355,7 @@ static int __init ppro_init(char ** cpu_type) ...@@ -355,7 +355,7 @@ static int __init ppro_init(char ** cpu_type)
/* in order to get driverfs right */ /* in order to get driverfs right */
static int using_nmi; static int using_nmi;
int __init nmi_init(struct oprofile_operations *ops) int __init op_nmi_init(struct oprofile_operations *ops)
{ {
__u8 vendor = boot_cpu_data.x86_vendor; __u8 vendor = boot_cpu_data.x86_vendor;
__u8 family = boot_cpu_data.x86; __u8 family = boot_cpu_data.x86;
...@@ -420,7 +420,7 @@ int __init nmi_init(struct oprofile_operations *ops) ...@@ -420,7 +420,7 @@ int __init nmi_init(struct oprofile_operations *ops)
} }
void nmi_exit(void) void op_nmi_exit(void)
{ {
if (using_nmi) if (using_nmi)
exit_driverfs(); exit_driverfs();
......
...@@ -40,7 +40,7 @@ static void timer_stop(void) ...@@ -40,7 +40,7 @@ static void timer_stop(void)
} }
int __init nmi_timer_init(struct oprofile_operations * ops) int __init op_nmi_timer_init(struct oprofile_operations * ops)
{ {
extern int nmi_active; extern int nmi_active;
......
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