From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1KQke8-0000Jd-5V for mharc-grub-devel@gnu.org; Wed, 06 Aug 2008 11:09:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KQke5-0000FE-PS for grub-devel@gnu.org; Wed, 06 Aug 2008 11:09:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KQke4-0000CF-Kw for grub-devel@gnu.org; Wed, 06 Aug 2008 11:09:48 -0400 Received: from [199.232.76.173] (port=46012 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KQke3-0000Bx-VY for grub-devel@gnu.org; Wed, 06 Aug 2008 11:09:48 -0400 Received: from gateway13.websitewelcome.com ([67.18.21.4]:35170) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1KQke3-0003O9-DW for grub-devel@gnu.org; Wed, 06 Aug 2008 11:09:47 -0400 Received: (qmail 27181 invoked from network); 6 Aug 2008 15:16:04 -0000 Received: from gator297.hostgator.com (74.53.228.114) by gateway13.websitewelcome.com with SMTP; 6 Aug 2008 15:16:04 -0000 Received: from c-67-185-142-228.hsd1.wa.comcast.net ([67.185.142.228]:45847 helo=localhost) by gator297.hostgator.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.68) (envelope-from ) id 1KQkdz-0004P7-U7 for grub-devel@gnu.org; Wed, 06 Aug 2008 10:09:44 -0500 Date: Wed, 6 Aug 2008 08:08:26 -0700 From: Colin D Bennett To: grub-devel@gnu.org Message-ID: <20080806080826.4dc6e08d@gibibit.com> In-Reply-To: <20080806103226.5x2ulaom5w84ocko-cebfxv@webmail.spamcop.net> References: <1218029942.27785.3.camel@ct> <20080806065821.0dc2c6a0@gibibit.com> <20080806103226.5x2ulaom5w84ocko-cebfxv@webmail.spamcop.net> X-Mailer: Claws Mail 3.5.0 (GTK+ 2.12.11; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - gator297.hostgator.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - gibibit.com X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Subject: Re: [PATCH] Warning fixes X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Aug 2008 15:09:50 -0000 On Wed, 06 Aug 2008 10:32:26 -0400 Pavel Roskin wrote: > Quoting Colin D Bennett : > > > Along these lines, can we use a gcc option to turn off the > > "trampoline requires executable stack" warnings that are generated > > by the dozens? I looked for the option in the gcc manual and could > > not find it. > > Please quote the exact message. What platform is it? I haven't seen > it. I have been using gcc 4.2.4 on x86 Linux. However, I just upgraded a machine to gcc 4.3.1, and it looks like the trampoline warnings are not produced by gcc 4.3.1... interesting. But they certainly are on 4.2.4: there are 103 trampoline warnings in all (see the end of this message). > > I think that the trampoline warning is the main thing left holding > > us back from a warning-free build. (IIRC there may be some > > strict-aliasing warnings too... but those can be fixed by fixing the > > code.) Ok, I checked and there are no strict aliasing warnings. Good. > Yes, either we should make the build less noisy by default, or we > should treat warnings as errors. Or maybe both. I agree. Regards, Colin system info ----------- x86 Linux; glibc 2.8; gcc 4.2.4; Gentoo. $ gcc -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: /var/tmp/portage/sys-devel/gcc-4.2.4/work/gcc-4.2.4/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.2.4 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.2.4 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.2.4/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.2.4/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/include/g++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --enable-secureplt --disable-multilib --enable-libmudflap --disable-libssp --disable-libgcj --with-arch=i686 --enable-languages=c,c++,treelang,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu Thread model: posix gcc version 4.2.4 (Gentoo 4.2.4 p1.0) trampoline warnings ------------------- ../util/i386/pc/grub-setup.c:93: warning: generating trampoline in object (requires executable stack) ../util/i386/pc/grub-setup.c:93: warning: generating trampoline in object (requires executable stack) ../util/i386/pc/grub-setup.c:93: warning: generating trampoline in object (requires executable stack) ../util/biosdisk.c:748: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:90: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:59: warning: generating trampoline in object (requires executable stack) ../fs/fshelp.c:58: warning: generating trampoline in object (requires executable stack) ../fs/affs.c:460: warning: generating trampoline in object (requires executable stack) ../fs/ext2.c:736: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:509: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:725: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:699: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:886: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:355: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:229: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:466: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:655: warning: generating trampoline in object (requires executable stack) ../fs/udf.c:772: warning: generating trampoline in object (requires executable stack) ../fs/ntfs.c:860: warning: generating trampoline in object (requires executable stack) ../fs/reiserfs.c:1270: warning: generating trampoline in object (requires executable stack) ../fs/sfs.c:531: warning: generating trampoline in object (requires executable stack) ../fs/xfs.c:624: warning: generating trampoline in object (requires executable stack) ../fs/afs.c:566: warning: generating trampoline in object (requires executable stack) ../partmap/pc.c:232: warning: generating trampoline in object (requires executable stack) ../partmap/gpt.c:123: warning: generating trampoline in object (requires executable stack) ../util/biosdisk.c:748: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:90: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:59: warning: generating trampoline in object (requires executable stack) ../fs/affs.c:460: warning: generating trampoline in object (requires executable stack) ../fs/ext2.c:736: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:509: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:725: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:699: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:886: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:355: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:229: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:466: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:655: warning: generating trampoline in object (requires executable stack) ../fs/udf.c:772: warning: generating trampoline in object (requires executable stack) ../fs/ntfs.c:860: warning: generating trampoline in object (requires executable stack) ../fs/reiserfs.c:1270: warning: generating trampoline in object (requires executable stack) ../fs/sfs.c:531: warning: generating trampoline in object (requires executable stack) ../fs/xfs.c:624: warning: generating trampoline in object (requires executable stack) ../fs/afs.c:566: warning: generating trampoline in object (requires executable stack) ../partmap/pc.c:232: warning: generating trampoline in object (requires executable stack) ../partmap/apple.c:182: warning: generating trampoline in object (requires executable stack) ../partmap/gpt.c:123: warning: generating trampoline in object (requires executable stack) ../fs/fshelp.c:58: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/device.c:85: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:90: warning: generating trampoline in object (requires executable stack) ../kern/partition.c:59: warning: generating trampoline in object (requires executable stack) ../normal/main.c:200: warning: generating trampoline in object (requires executable stack) ../normal/menu_entry.c:972: warning: generating trampoline in object (requires executable stack) ../loader/i386/bsd.c:250: warning: generating trampoline in object (requires executable stack) ../fs/fshelp.c:58: warning: generating trampoline in object (requires executable stack) ../fs/ext2.c:736: warning: generating trampoline in object (requires executable stack) ../fs/ntfs.c:860: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:578: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:509: warning: generating trampoline in object (requires executable stack) ../fs/hfs.c:725: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:355: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:229: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:466: warning: generating trampoline in object (requires executable stack) ../fs/iso9660.c:655: warning: generating trampoline in object (requires executable stack) ../fs/xfs.c:624: warning: generating trampoline in object (requires executable stack) ../fs/affs.c:460: warning: generating trampoline in object (requires executable stack) ../fs/sfs.c:531: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:699: warning: generating trampoline in object (requires executable stack) ../fs/hfsplus.c:886: warning: generating trampoline in object (requires executable stack) ../fs/reiserfs.c:1270: warning: generating trampoline in object (requires executable stack) ../fs/udf.c:772: warning: generating trampoline in object (requires executable stack) ../fs/afs.c:566: warning: generating trampoline in object (requires executable stack) ../partmap/amiga.c:146: warning: generating trampoline in object (requires executable stack) ../partmap/apple.c:182: warning: generating trampoline in object (requires executable stack) ../partmap/pc.c:232: warning: generating trampoline in object (requires executable stack) ../partmap/sun.c:149: warning: generating trampoline in object (requires executable stack) ../partmap/gpt.c:123: warning: generating trampoline in object (requires executable stack) ../commands/terminal.c:29: warning: generating trampoline in object (requires executable stack) ../commands/ls.c:45: warning: generating trampoline in object (requires executable stack) ../commands/ls.c:66: warning: generating trampoline in object (requires executable stack) ../commands/ls.c:66: warning: generating trampoline in object (requires executable stack) ../commands/help.c:30: warning: generating trampoline in object (requires executable stack) ../commands/help.c:30: warning: generating trampoline in object (requires executable stack) ../commands/search.c:96: warning: generating trampoline in object (requires executable stack) ../commands/search.c:42: warning: generating trampoline in object (requires executable stack) ../commands/search.c:150: warning: generating trampoline in object (requires executable stack) ../disk/fs_uuid.c:31: warning: generating trampoline in object (requires executable stack) ../commands/blocklist.c:32: warning: generating trampoline in object (requires executable stack) ../commands/loadenv.c:157: warning: generating trampoline in object (requires executable stack) ../kern/elf.c:399: warning: generating trampoline in object (requires executable stack) ../kern/elf.c:355: warning: generating trampoline in object (requires executable stack) ../kern/elf.c:221: warning: generating trampoline in object (requires executable stack) ../kern/elf.c:177: warning: generating trampoline in object (requires executable stack)