grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v8 0/6] Update gnulib version and drop most gnulib patches


From: Glenn Washburn
Subject: Re: [PATCH v8 0/6] Update gnulib version and drop most gnulib patches
Date: Mon, 7 Mar 2022 02:15:49 -0600

On Fri, 4 Mar 2022 18:01:10 -0600
Glenn Washburn <development@efficientek.com> wrote:

> On Wed,  2 Mar 2022 14:08:23 -0500
> Robbie Harwood <rharwood@redhat.com> wrote:
> 
> > Changes this version:
> > 
> > - Reorder last two commits so that warning fixes come after the change that
> >   introduces them.
> > - Fix comment formatting to comply with grub2 style.
> 
> Either I missed it before or something changed. But I'm getting this
> build error now for x86_64-efi, and I'm not getting it without this patch
> series.
> 
> In file included from 
> /root/grub-tests.update-gnulib/grub/include/grub/disk.h:31
> ,
>                  from 
> /root/grub-tests.update-gnulib/grub/include/grub/file.h:26
> ,
>                  from 
> /root/grub-tests.update-gnulib/grub/include/grub/loader.h:
> 23,
>                  from 
> /root/grub-tests.update-gnulib/grub/grub-core/loader/i386/
> bsd.c:19:
> /root/grub-tests.update-gnulib/grub/grub-core/loader/i386/bsd.c: In function 
> ‘gr
> ub_freebsd_add_meta_module’:
> /root/grub-tests.update-gnulib/grub/include/grub/misc.h:71:10: error: ‘ptr’ 
> may be used uninitialized in this function [-Werror=maybe-uninitialized]
>    71 |   return grub_memmove (dest, src, n);
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> /root/grub-tests.update-gnulib/grub/grub-core/loader/i386/bsd.c:266:9: note: 
> ‘ptr’ was declared here
>   266 |   void *ptr;
>       |         ^~~
> 
> Reviewing the code it doesn't look like ptr can actually be used
> uninitialized, so it seems like GCC 10.1.0 isn't smart enough to figure
> that out. Initializing to NULL fixes the build issue.

For completeness, I just realized that I wasn't using the compiler I
thought I was using. Turns out this issue is with x86_64 Debian 11's
GCC, which is 10.2.1. I don't think this is relevant to the issue, but
may help in reproducing if needed.

After some more testing, I've narrowed it down to passing -O2 to gcc,
without which the series builds fine.

Glenn

> 
> > 
> > No functional code changes.
> > 
> > Be well,
> > --Robbie
> > 
> > Robbie Harwood (6):
> >   Use visual indentation in config.h.in
> >   Where present, ensure config-util.h precedes config.h
> >   Drop gnulib fix-base64.patch
> >   Drop gnulib no-abort.patch
> >   Update gnulib version and drop most gnulib patches
> >   Handle warnings introduced by updated gnulib
> > 
> >  INSTALL                                       |   4 +-
> >  bootstrap                                     | 319 ++++++++++--------
> >  bootstrap.conf                                |  23 +-
> >  conf/Makefile.extra-dist                      |   8 -
> >  config.h.in                                   | 142 ++++++--
> >  configure.ac                                  |   2 +-
> >  grub-core/Makefile.core.def                   |   3 +
> >  grub-core/disk/host.c                         |   2 +-
> >  grub-core/disk/luks2.c                        |   4 +-
> >  grub-core/gensymlist.sh                       |   1 +
> >  grub-core/kern/emu/argp_common.c              |   2 +-
> >  grub-core/kern/emu/main.c                     |   2 +-
> >  grub-core/lib/gnulib-patches/fix-base64.patch |  21 --
> >  .../lib/gnulib-patches/fix-null-deref.patch   |  13 -
> >  .../gnulib-patches/fix-null-state-deref.patch |  12 -
> >  .../fix-regcomp-uninit-token.patch            |  15 -
> >  .../fix-regexec-null-deref.patch              |  12 -
> >  .../gnulib-patches/fix-uninit-structure.patch |  11 -
> >  .../lib/gnulib-patches/fix-unused-value.patch |  14 -
> >  grub-core/lib/gnulib-patches/no-abort.patch   |  26 --
> >  grub-core/lib/posix_wrap/limits.h             |   6 +-
> >  grub-core/lib/posix_wrap/sys/types.h          |   7 +-
> >  grub-core/lib/xzembed/xz.h                    |   5 +-
> >  grub-core/osdep/aros/config.c                 |   2 +-
> >  grub-core/osdep/basic/emunet.c                |   2 +-
> >  grub-core/osdep/basic/init.c                  |   2 +-
> >  grub-core/osdep/haiku/getroot.c               |   2 +-
> >  grub-core/osdep/linux/emunet.c                |   2 +-
> >  grub-core/osdep/unix/config.c                 |   2 +-
> >  grub-core/osdep/unix/cputime.c                |   2 +-
> >  grub-core/osdep/unix/dl.c                     |   2 +-
> >  grub-core/osdep/unix/emuconsole.c             |   2 +-
> >  grub-core/osdep/unix/getroot.c                |   2 +-
> >  grub-core/osdep/windows/config.c              |   2 +-
> >  grub-core/osdep/windows/cputime.c             |   2 +-
> >  grub-core/osdep/windows/dl.c                  |   2 +-
> >  grub-core/osdep/windows/emuconsole.c          |   2 +-
> >  grub-core/osdep/windows/init.c                |   2 +-
> >  include/grub/compiler.h                       |   4 +-
> >  include/grub/list.h                           |   2 +-
> >  40 files changed, 347 insertions(+), 343 deletions(-)
> >  delete mode 100644 grub-core/lib/gnulib-patches/fix-base64.patch
> >  delete mode 100644 grub-core/lib/gnulib-patches/fix-null-deref.patch
> >  delete mode 100644 grub-core/lib/gnulib-patches/fix-null-state-deref.patch
> >  delete mode 100644 
> > grub-core/lib/gnulib-patches/fix-regcomp-uninit-token.patch
> >  delete mode 100644 
> > grub-core/lib/gnulib-patches/fix-regexec-null-deref.patch
> >  delete mode 100644 grub-core/lib/gnulib-patches/fix-uninit-structure.patch
> >  delete mode 100644 grub-core/lib/gnulib-patches/fix-unused-value.patch
> >  delete mode 100644 grub-core/lib/gnulib-patches/no-abort.patch
> > 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]