From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8154 invoked by alias); 29 Nov 2010 08:11:40 -0000 Received: (qmail 8141 invoked by uid 22791); 29 Nov 2010 08:11:37 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,TW_KG X-Spam-Check-By: sourceware.org Received: from mail-vw0-f41.google.com (HELO mail-vw0-f41.google.com) (209.85.212.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 29 Nov 2010 08:11:32 +0000 Received: by vws10 with SMTP id 10so1434596vws.0 for ; Mon, 29 Nov 2010 00:11:31 -0800 (PST) Received: by 10.220.193.5 with SMTP id ds5mr1551318vcb.85.1291018290582; Mon, 29 Nov 2010 00:11:30 -0800 (PST) Received: from cr0.nay.redhat.com ([60.247.97.98]) by mx.google.com with ESMTPS id h28sm592777vcr.19.2010.11.29.00.11.26 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 29 Nov 2010 00:11:29 -0800 (PST) Date: Mon, 29 Nov 2010 08:11:00 -0000 From: =?utf-8?Q?Am=C3=A9rico?= Wang To: Hui Zhu Cc: linux-kernel@vger.kernel.org, gdb@sourceware.org, hellogcc@freelists.org Subject: Re: [PATCH] Built kernel without -O2 option Message-ID: <20101129081619.GD5218@cr0.nay.redhat.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2010-11/txt/msg00105.txt.bz2 On Mon, Nov 29, 2010 at 11:56:15AM +0800, Hui Zhu wrote: >Hi, > >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 = >And the code execution order is not right. > >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. > >I built and use it in i386 and x86_64. I will try to make it OK in other arch. > The problem is that some functions _have to_ be inlined and gcc without -O2 doesn't inline them. Have check all the cases? I doubt. Also, what is size of vmlinux before applying your patch and after that? Does it increase too much?