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

From: Mateusz Guzik <mjguzik_at_gmail.com>
Date: Tue, 19 Apr 2022 11:34:49 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.

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>