]> err.no Git - linux-2.6/blobdiff - arch/x86/kernel/time_32.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6] / arch / x86 / kernel / time_32.c
index 2dcbb81b4cd38bafbd5d3598fdcc154550852379..2ff21f398934b049975a427e463b046e9226d079 100644 (file)
@@ -49,15 +49,15 @@ unsigned long profile_pc(struct pt_regs *regs)
        unsigned long pc = instruction_pointer(regs);
 
 #ifdef CONFIG_SMP
-       if (!v8086_mode(regs) && SEGMENT_IS_KERNEL_CODE(regs->xcs) &&
+       if (!v8086_mode(regs) && SEGMENT_IS_KERNEL_CODE(regs->cs) &&
            in_lock_functions(pc)) {
 #ifdef CONFIG_FRAME_POINTER
-               return *(unsigned long *)(regs->ebp + 4);
+               return *(unsigned long *)(regs->bp + 4);
 #else
-               unsigned long *sp = (unsigned long *)&regs->esp;
+               unsigned long *sp = (unsigned long *)&regs->sp;
 
                /* Return address is either directly at stack pointer
-                  or above a saved eflags. Eflags has bits 22-31 zero,
+                  or above a saved flags. Eflags has bits 22-31 zero,
                   kernel addresses don't. */
                if (sp[0] >> 22)
                        return sp[0];
@@ -115,7 +115,6 @@ irqreturn_t timer_interrupt(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 
-extern void (*late_time_init)(void);
 /* Duplicate of time_init() below, with hpet_enable part added */
 void __init hpet_time_init(void)
 {