Warning fixes
PATCH 1/1 Warning fixes
Hello!
I've fixed the trivial stuff, but this may require comments. I'll be mostly offline for the next 3 weeks, so if it's OK, please apply it for me.
ChangeLog:
* disk/ata.c (grub_ata_pciinit): Mark pciid unused.
* commands/i386/pc/pxecmd.c (grub_cmd_pxe): Mark argc and args unused.
* include/grub/i386/pc/pxe.h (grub_pxenv_tftp_open): Use char instead of grub_uint8_t for strings. (grub_pxenv_tftp_get_fsize): Likewise.
ata.c +2 -1
@@ -429,7 +429,8 @@ }static int -grub_ata_pciinit (int bus,int device,int func,grub_pci_id_t pciid) +grub_ata_pciinit (int bus,int device,int func, +grub_pci_id_t pciid __attribute__ ((unused))) {static int compat_use[2 ] = {0 };grub_pci_address_t addr;
grub/i386/pc/pxe.h +2 -2
@@ -236,7 +236,7 @@grub_uint16_t status;grub_uint32_t server_ip;grub_uint32_t gateway_ip; -grub_uint8_t filename[128 ]; +char filename[128 ];grub_uint16_t tftp_port;grub_uint16_t packet_size; } __attribute__ ((packed));
@@ -259,7 +259,7 @@grub_uint16_t status;grub_uint32_t server_ip;grub_uint32_t gateway_ip; -grub_uint8_t filename[128 ]; +char filename[128 ];grub_uint32_t file_size; } __attribute__ ((packed));
i386/pc/pxecmd.c +3 -1
@@ -46,7 +46,9 @@ }static grub_err_t -grub_cmd_pxe (struct grub_arg_list *state,int argc,char **args) +grub_cmd_pxe (struct grub_arg_list *state, +int argc __attribute__ ((unused)), +char **args __attribute__ ((unused))) {if (! grub_pxe_pxenv)return grub_error (GRUB_ERR_FILE_NOT_FOUND ,"no pxe environment" );
Signature · 2 lines
Regards, Pavel Roskin
Quoted 5 lines · On Wed, 06 Aug 2008 09:39:02 -0400 Pavel Roskin <[email protected]> wrote:
Hello!
I've fixed the trivial stuff, but this may require comments. I'll be mostly offline for the next 3 weeks, so if it's OK, please apply it for me.
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.
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.)
Regards,
Colin
Quoting Colin D Bennett <[email protected]>:
Quoted 3 lines
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.
Quoted 4 lines
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.)
Yes, either we should make the build less noisy by default, or we should treat warnings as errors. Or maybe both.
Signature · 2 lines
Regards, Pavel Roskin
Quoted 9 lines · On Wed, 06 Aug 2008 10:32:26 -0400 Pavel Roskin <[email protected]> wrote:
Quoting Colin D Bennett <[email protected]>:
Quoted 4 lines
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).
Quoted 4 lines
Quoted 4 lines
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.
Quoted 2 lines
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)
Hi,
Quoted 7 lines · Pavel Roskin
I've fixed the trivial stuff, but this may require comments. I'll be mostly offline for the next 3 weeks, so if it's OK, please apply it for me.
ChangeLog:
*
disk/ata.c(grub_ata_pciinit): Mark pciid unused.
Oh, I changed this, so this might not apply anymore...
Quoted 5 lines
*
commands/i386/pc/pxecmd.c(grub_cmd_pxe): Mark argc and args unused.
*include/grub/i386/pc/pxe.h(grub_pxenv_tftp_open): Use char instead ofgrub_uint8_tfor strings. (grub_pxenv_tftp_get_fsize): Likewise.
--
Marco