From: Andrew Morton arch/i386/kernel/traps.c: In function 'dump_trace': arch/i386/kernel/traps.c:199: error: 'struct unwind_frame_info' has no member named 'regs' Cc: Andi Kleen Cc: Jan Beulich Signed-off-by: Andrew Morton --- arch/i386/kernel/traps.c | 2 +- include/asm-i386/unwind.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff -puN arch/i386/kernel/traps.c~fix-x86_64-mm-i386-backtrace-ebp-fallback arch/i386/kernel/traps.c --- a/arch/i386/kernel/traps.c~fix-x86_64-mm-i386-backtrace-ebp-fallback +++ a/arch/i386/kernel/traps.c @@ -199,7 +199,7 @@ void dump_trace(struct task_struct *task stack = (void *)UNW_SP(&info); if (!stack) return; - ebp = info.regs.ebp; + ebp = UNW_BP(&info); } else ops->warning(data, "Full inexact backtrace again:\n"); } else if (call_trace >= 1) diff -puN include/asm-i386/unwind.h~fix-x86_64-mm-i386-backtrace-ebp-fallback include/asm-i386/unwind.h --- a/include/asm-i386/unwind.h~fix-x86_64-mm-i386-backtrace-ebp-fallback +++ a/include/asm-i386/unwind.h @@ -22,6 +22,7 @@ struct unwind_frame_info #define UNW_PC(frame) (frame)->regs.eip #define UNW_SP(frame) (frame)->regs.esp +#define UNW_BP(frame) (frame)->regs.ebp #ifdef CONFIG_FRAME_POINTER #define UNW_FP(frame) (frame)->regs.ebp #define FRAME_RETADDR_OFFSET 4 @@ -89,6 +90,7 @@ static inline int arch_unw_user_mode(con #define UNW_PC(frame) ((void)(frame), 0UL) #define UNW_SP(frame) ((void)(frame), 0UL) +#define UNW_BP(frame) ((void)(frame), 0UL) static inline int arch_unw_user_mode(const void *info) { _