Messages in this thread | | | Date | Thu, 16 Apr 2015 23:21:56 +0800 | From | Chen Gang <> | Subject | [Consult] blackfin: About one building break issue for STACKTRACE |
| |
Hello Maintainers:
I want to consult one building issue about blackfin, the related issue is:
CC arch/blackfin/kernel/stacktrace.o arch/blackfin/kernel/stacktrace.c: In function 'save_stack_trace': arch/blackfin/kernel/stacktrace.c:23:6: error: frame pointer required, but reserved void save_stack_trace(struct stack_trace *trace) ^ arch/blackfin/kernel/stacktrace.c:13:24: note: for 'current_frame_pointer' register unsigned long current_frame_pointer asm("FP"); ^
For me:
- Originally, I treated it as gcc's issue, but after think of, for me, gcc is OK:
"-fomit-frame-pointer" is needed by extern "FP" pointer.
"-fomit-frame-pointer" is against "-pg" (they can not be together).
- For kernel:
STACKTRACE needs "-fomit-frame-pointer", and FUNCTION_TRACER will enable "-pg",
FUNCTION_TRACER and STACKTRACE are related.
The related commit: "1c873be Blackfin: initial support for ftrace" (the commit time point is Jun 9 2009).
- After this related commit, it never can pass building by upstream blackfin gcc5:
make defconfig && make menuconfig
enable FUNCTION_TRACER (which also enable STACKTRACE)
make (which will cause building break)
So I want to consult:
- Is it OK to use upstream gcc5 for blackfin? (or which gcc version is suitable for building blackfin Linux kernel?)
- Did the original commit pass building ? (e.g. by one of old gcc version).
- How to fix this issue, next?
Welcome any members ideas, suggestions and completions.
Thanks. -- Chen Gang
Open, share, and attitude like air, water, and life which God blessed
| |