Make thread_saved_pc take a task_struct ptr.
diff --git a/include/asm-i386/processor.h b/include/asm-i386/processor.h index 9fdc376..ec48a38 100644 --- a/include/asm-i386/processor.h +++ b/include/asm-i386/processor.h
@@ -439,9 +439,9 @@ /* * Return saved PC of a blocked thread. */ -static inline unsigned long thread_saved_pc(struct thread_info *ti) +static inline unsigned long thread_saved_pc(struct task_struct *tsk) { - return ((unsigned long *)ti->task->thread->esp)[3]; + return ((unsigned long *)tsk->thread->esp)[3]; } unsigned long get_wchan(struct task_struct *p);
diff --git a/include/asm-sparc64/processor.h b/include/asm-sparc64/processor.h index dbeacf2..4e8cbdf 100644 --- a/include/asm-sparc64/processor.h +++ b/include/asm-sparc64/processor.h
@@ -1,4 +1,4 @@ -/* $Id: processor.h,v 1.82 2002-02-09 19:49:31 davem Exp $ +/* $Id: processor.h,v 1.83 2002-02-10 06:04:33 davem Exp $ * include/asm-sparc64/processor.h * * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) @@ -79,8 +79,8 @@ #ifndef __ASSEMBLY__ /* Return saved PC of a blocked thread. */ -struct thread_info; -extern unsigned long thread_saved_pc(struct thread_info *); +struct task_struct; +extern unsigned long thread_saved_pc(struct task_struct *); /* On Uniprocessor, even in RMO processes see TSO semantics */ #ifdef CONFIG_SMP
diff --git a/kernel/sched.c b/kernel/sched.c index acda87e..6fc59ef 100644 --- a/kernel/sched.c +++ b/kernel/sched.c
@@ -1209,12 +1209,12 @@ if (p == current) printk(" current "); else - printk(" %08lX ", thread_saved_pc(p->thread_info)); + printk(" %08lX ", thread_saved_pc(p)); #else if (p == current) printk(" current task "); else - printk(" %016lx ", thread_saved_pc(p->thread_info)); + printk(" %016lx ", thread_saved_pc(p)); #endif { unsigned long * n = (unsigned long *) (p+1);