Re: [PATCH] Built kernel without -O2 option

From: Hui Zhu
Date: Wed Dec 01 2010 - 07:52:50 EST


On Mon, Nov 29, 2010 at 17:59, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
> Hui Zhu <teawater@xxxxxxxxx> 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.
>

If you think they are OK, go get a new gcc and try. :)

>>
>> 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 ?
>

If I can build OK, why I need add some options?

Thanks,
Hui
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/