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

From: Stefan Esser <se_at_FreeBSD.org>
Date: Tue, 19 Apr 2022 11:08:20 UTC
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