Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -15,9 +15,9 @@
 * with the NMI mode driver.
 */
 
extern int nmi_init(struct oprofile_operations * ops);
extern int nmi_timer_init(struct oprofile_operations * ops);
extern void nmi_exit(void);
extern int op_nmi_init(struct oprofile_operations * ops);
extern int op_nmi_timer_init(struct oprofile_operations * ops);
extern void op_nmi_exit(void);
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)
	ret = -ENODEV;

#ifdef CONFIG_X86_LOCAL_APIC
	ret = nmi_init(ops);
	ret = op_nmi_init(ops);
#endif
#ifdef CONFIG_X86_IO_APIC
	if (ret < 0)
		ret = nmi_timer_init(ops);
		ret = op_nmi_timer_init(ops);
#endif
	ops->backtrace = x86_backtrace;

@@ -43,6 +43,6 @@ int __init oprofile_arch_init(struct oprofile_operations * ops)
void oprofile_arch_exit(void)
{
#ifdef CONFIG_X86_LOCAL_APIC
	nmi_exit();
	op_nmi_exit();
#endif
}
+2 −2
Original line number Diff line number Diff line
@@ -355,7 +355,7 @@ static int __init ppro_init(char ** cpu_type)
/* in order to get driverfs right */
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 family = boot_cpu_data.x86;
@@ -420,7 +420,7 @@ int __init nmi_init(struct oprofile_operations *ops)
}


void nmi_exit(void)
void op_nmi_exit(void)
{
	if (using_nmi)
		exit_driverfs();
+1 −1
Original line number Diff line number Diff line
@@ -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;