Re: drivers/comedi/drivers/tests/../ni_stc.h:1140:35: warning: 'range_ni_E_ao_ext' defined but not used

From: Yujie Liu
Date: Mon Nov 06 2023 - 20:32:10 EST


On Mon, Nov 06, 2023 at 10:48:57AM +0100, Greg Kroah-Hartman wrote:
> On Mon, Nov 06, 2023 at 05:31:26PM +0800, Yujie Liu wrote:
> > Hi Greg,
> >
> > On Mon, Nov 06, 2023 at 10:00:14AM +0100, Greg Kroah-Hartman wrote:
> > > On Mon, Nov 06, 2023 at 04:49:17PM +0800, kernel test robot wrote:
> > > > Hi Greg,
> > > >
> > > > kernel test robot noticed the following build warnings:
> > > >
> > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > > > head: 1c41041124bd14dd6610da256a3da4e5b74ce6b1
> > > > commit: 8ffdff6a8cfbdc174a3a390b6f825a277b5bb895 staging: comedi: move out of staging directory
> > > > date: 2 years, 7 months ago
> > >
> > > Have you tested a newer kernel? Testing a 2 1/2 year old commit feels
> > > odd to me, was this intentional?
> >
> > We did test new kernels with W=1, and the issue was captured by the
> > bot, then bisected to this 2 years 7 months ago commit that was likely
> > to introduce this issue initially.
>
> This commit is a "move files around" commit, so it obviously was not the
> original problem commit here :)
>
> > We have no intention of directly
> > testing a very old commit, and we're sorry that the date info may
> > cause some misunderstanding.
> >
> > This can be reproduced by allyesconfig build on v6.6 with W=1:
> >
> > $ git checkout v6.6
> > HEAD is now at ffc253263a13 Linux 6.6
> >
> > $ make ARCH=x86_64 allyesconfig
> >
> > $ make W=1 ARCH=x86_64 drivers/comedi/drivers/tests/ni_routes_test.o
> > ...
> > CC drivers/comedi/drivers/tests/ni_routes_test.o
> > In file included from drivers/comedi/drivers/tests/ni_routes_test.c:22:
> > drivers/comedi/drivers/tests/../ni_stc.h:1140:35: error: ‘range_ni_E_ao_ext’ defined but not used [-Werror=unused-const-variable=]
> > 1140 | static const struct comedi_lrange range_ni_E_ao_ext;
> > | ^~~~~~~~~~~~~~~~~
> > cc1: all warnings being treated as errors
>
> This is odd in that a static constant is being defined in a .h file, so
> anything that happens to include it, like this test, will then need to
> use it in order to silence this warning. I don't think that's going to
> happen any time soon, so it's good that we don't really care aobut W=1
> just yet :)

Thanks a lot for the information. We will learn from this case and be
more careful when handling similar reports on "old commits", thus to
reduce false positives.

Best Regards,
Yujie