debug problems on ppc 83xx target due to changed struct task_struct
holger.brunck at keymile.com
Sat Aug 13 00:50:38 AEST 2016
we are currently trying to update from kernel 3.10 to latest stable kernel 4.4
and we encounter the following problem.
When I try to debug our multithreaded userspace application with gdb I get
stuck when trying to single step code.
Due to the fact that our ppc 8360 target is mainlined (kmeter1) I was able to
bisect the kernel to check when this problem was introduced. It turns out to be
introduced with commit:
Author: Dave Hansen <dave at sr71.net>
Date: Fri Jul 17 12:28:11 2015 +0200
x86/fpu, sched: Dynamically allocate 'struct fpu'
This patch moves the definition of "struct thread_struct thread;" from the
middle of the "struct task_struct" to the end (include/linux/sched.h). When I
move back the definition to the original place and recompile, everything works
fine. I double-checked this with the latest kernel 4.7 and I have the same
I also tried a different toolchain (I got poky/jethro with gcc 5.2) and tried a
eldk 5.4 with gcc 4.7, as I am not sure if this is really a kernel problem or
related to a gdb or gcc. But I still have the same behaviour with a different
Does anyone have an idea why the change in sched.h break my debug usecase?
Anyone out here who is debugging ppc83xx targets flawlessly with a recent kernel?
Any help is apreciated.
More information about the Linuxppc-dev