2.5.50 / compiling with frame pointers doesn't
As near as I can tell, compiling with frame pointers turned on doesn't do anything. I had a quick look around in the Makefiles and found that the test for CONFIG_FRAME_POINTER happens -before- the .config is actually loaded, thereby resulting in it never being defined and so -fomit-frame-pointer is always included.
Now I'm not too sure as the whole Makefile structure in the linux kernel but the way I fixed this was by moving the test block down to be below .config getting loaded rather then moving the .config load section up. Not sure which is preferrable but here's my patch.
Makefile renamed from Makefile.old +4 -3
@@ -169,9 +169,6 @@ CPPFLAGS := -D__KERNEL__ -Iinclude CFLAGS := $(CPPFLAGS) -Wall -Wstrict-prototypes -Wno-trigraphs -O2 \ -fno-strict-aliasing -fno-common -ifndef CONFIG_FRAME_POINTER -CFLAGS += -fomit-frame-pointer -endif AFLAGS := -D__ASSEMBLY__ $(CPPFLAGS) export VERSION PATCHLEVEL SUBLEVEL EXTRAVERSION KERNELRELEASE ARCH \
@@ -221,6 +218,10 @@ -include .config +endif + +ifndef CONFIG_FRAME_POINTER +CFLAGS += -fomit-frame-pointer endif include arch/$(ARCH)/Makefile
Signature · 4 lines
All people are equal,
But some are more equal then others.
- George W. Bush Jr, President of the United States
September 21, 2002 (Abridged version of security speech)