Re: git: 8b83d7e0ee54 - main - Make -Wunused-but-set-variable a fatal error for clang 13+ for kernel builds.

From: Rodney W. Grimes <freebsd_at_gndrsh.dnsmgr.net>
Date: Wed, 20 Apr 2022 00:17:53 UTC
> Looks like this needs a pass on a kernel without AUDIT, MAC,
> CAPABILITIES, dtrace and probably some other default stuff which also
> happens to be enabled in all kernel built with tinderbox.

You might want to contact Michael Dexter and ask if he could
run a "Build Option Survey" with and without these changes
to see how much fallout that shows.


> On 4/19/22, Stefan Esser <se@freebsd.org> wrote:
> > Am 19.04.22 um 01:11 schrieb John Baldwin:
> >> The branch main has been updated by jhb:
> >>
> >> URL:
> >> https://cgit.FreeBSD.org/src/commit/?id=8b83d7e0ee54416b0ee58bd85f9c0ae7fb3357a1
> >>
> >> commit 8b83d7e0ee54416b0ee58bd85f9c0ae7fb3357a1
> >> Author:     John Baldwin <jhb@FreeBSD.org>
> >> AuthorDate: 2022-04-18 23:06:27 +0000
> >> Commit:     John Baldwin <jhb@FreeBSD.org>
> >> CommitDate: 2022-04-18 23:06:27 +0000
> >>
> >>     Make -Wunused-but-set-variable a fatal error for clang 13+ for kernel
> >> builds.
> >>
> >>     Reviewed by:    imp, emaste
> >>     Differential Revision:  https://reviews.freebsd.org/D34949
> >
> > I'm seeing kernel build issues in several drivers (at commit f2edc9155721).
> >
> > The first one could be fixed this way:
> >
> > diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c
> > index 4c8b1fa27579..470f03313b72 100644
> > --- a/sys/dev/cxgbe/tom/t4_cpl_io.c
> > +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c
> > @@ -2192,7 +2192,7 @@ static void
> >  t4_aiotx_process_job(struct toepcb *toep, struct socket *so, struct kaiocb
> > *job)
> >  {
> >         struct sockbuf *sb;
> > +#ifdef MAC
> >         struct file *fp;
> > +#endif
> >         struct inpcb *inp;
> >         struct tcpcb *tp;
> >         struct mbuf *m;
> > @@ -2201,10 +2201,10 @@ t4_aiotx_process_job(struct toepcb *toep, struct
> > socket
> > *so, struct kaiocb *job)
> >
> >         sb = &so->so_snd;
> >         SOCKBUF_UNLOCK(sb);
> > -       fp = job->fd_file;
> >         m = NULL;
> >
> >  #ifdef MAC
> > +       fp = job->fd_file;
> >         error = mac_socket_check_send(fp->f_cred, so);
> >         if (error != 0)
> >                 goto out;
> >
> > But then the build failed again at:
> >
> > /usr/src/sys/fs/ext2fs/ext2_extents.c:452:8: error: variable 'error_msg'
> > set
> > but not used [-Werror,-Wunused-but-set-variable]
> > Building /usr/obj/usr-14/git/src/amd64.amd64/sys/SE/vdev_mirror.o
> >
> > I have stopped trying to fix this and (any remaining) issues and have
> > locally reverted the commit that made this warning fatal ...
> >
> > Regards, STefan
> >
> 
> 
> -- 
> Mateusz Guzik <mjguzik gmail.com>
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org