Messages in this thread | | | From | Andi Kleen <> | Subject | Re: [PATCH] Built kernel without -O2 option | Date | Mon, 29 Nov 2010 10:59:40 +0100 |
| |
Hui Zhu <teawater@gmail.com> writes:
> Now, there are a lot of ways to debug the Linux kernel with GDB, like > qemu, kgtp or kgdb and so on. > But the developer more like add a printk. It have a lot of reason, a big one is: > (gdb) p ret > $3 = <value optimized out> > And the code execution order is not right.
Really the right place to fix a lot of this would be gcc (and perhaps gdb). I suspect with some careful work the debugging experience for -O2 could be improved a lot. I also believe the latest gccs already have improvements in this area.
> > This is becuase the Kernel is bult with gcc -O2. Gcc will not > generate enough debug message with file with -O2. > So GDB cannot work very well with Linux kernel. > > So I make a patch that add a option in "Kernel hacking" called "Close > GCC optimization". It will make kernel be built without -O2.
You need to at least keep aggressive inlining for header files, otherwise there will be too much code bloat and bad code.
Like -O1 -finline-functions ?
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |