diff --git a/arch/x86/lib/delay.c b/arch/x86/lib/delay.c
index fc45ba887d051e504dd592be40ec2e78d70eea33..e395693abdb16068cd2b268f258d9c79d3d0f3f3 100644
--- a/arch/x86/lib/delay.c
+++ b/arch/x86/lib/delay.c
@@ -48,9 +48,9 @@ static void delay_loop(unsigned long loops)
 }
 
 /* TSC based delay: */
-static void delay_tsc(unsigned long loops)
+static void delay_tsc(unsigned long __loops)
 {
-	unsigned long bclock, now;
+	u32 bclock, now, loops = __loops;
 	int cpu;
 
 	preempt_disable();