All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Warning fixes
@ 2008-08-06 13:39 Pavel Roskin
  2008-08-06 13:58 ` Colin D Bennett
  2008-08-13 10:18 ` Marco Gerards
  0 siblings, 2 replies; 5+ messages in thread
From: Pavel Roskin @ 2008-08-06 13:39 UTC (permalink / raw)
  To: The development of GRUB 2

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.

Index: disk/ata.c
===================================================================
--- disk/ata.c	(revision 1784)
+++ disk/ata.c	(working copy)
@@ -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;
Index: include/grub/i386/pc/pxe.h
===================================================================
--- include/grub/i386/pc/pxe.h	(revision 1784)
+++ include/grub/i386/pc/pxe.h	(working copy)
@@ -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));
 
Index: commands/i386/pc/pxecmd.c
===================================================================
--- commands/i386/pc/pxecmd.c	(revision 1784)
+++ commands/i386/pc/pxecmd.c	(working copy)
@@ -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");

-- 
Regards,
Pavel Roskin



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] Warning fixes
  2008-08-06 13:39 [PATCH] Warning fixes Pavel Roskin
@ 2008-08-06 13:58 ` Colin D Bennett
  2008-08-06 14:32   ` Pavel Roskin
  2008-08-13 10:18 ` Marco Gerards
  1 sibling, 1 reply; 5+ messages in thread
From: Colin D Bennett @ 2008-08-06 13:58 UTC (permalink / raw)
  To: grub-devel

On Wed, 06 Aug 2008 09:39:02 -0400
Pavel Roskin <proski@gnu.org> 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



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] Warning fixes
  2008-08-06 13:58 ` Colin D Bennett
@ 2008-08-06 14:32   ` Pavel Roskin
  2008-08-06 15:08     ` Colin D Bennett
  0 siblings, 1 reply; 5+ messages in thread
From: Pavel Roskin @ 2008-08-06 14:32 UTC (permalink / raw)
  To: The development of GRUB 2

Quoting Colin D Bennett <colin@gibibit.com>:

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

-- 
Regards,
Pavel Roskin



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] Warning fixes
  2008-08-06 14:32   ` Pavel Roskin
@ 2008-08-06 15:08     ` Colin D Bennett
  0 siblings, 0 replies; 5+ messages in thread
From: Colin D Bennett @ 2008-08-06 15:08 UTC (permalink / raw)
  To: grub-devel

On Wed, 06 Aug 2008 10:32:26 -0400
Pavel Roskin <proski@gnu.org> wrote:

> Quoting Colin D Bennett <colin@gibibit.com>:
> 
> > 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)



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] Warning fixes
  2008-08-06 13:39 [PATCH] Warning fixes Pavel Roskin
  2008-08-06 13:58 ` Colin D Bennett
@ 2008-08-13 10:18 ` Marco Gerards
  1 sibling, 0 replies; 5+ messages in thread
From: Marco Gerards @ 2008-08-13 10:18 UTC (permalink / raw)
  To: The development of GRUB 2

Hi,

Pavel Roskin <proski@gnu.org> writes:

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

> 	* 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.


--
Marco




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-08-13 10:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-06 13:39 [PATCH] Warning fixes Pavel Roskin
2008-08-06 13:58 ` Colin D Bennett
2008-08-06 14:32   ` Pavel Roskin
2008-08-06 15:08     ` Colin D Bennett
2008-08-13 10:18 ` Marco Gerards

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.