Hi Randy, On Thu, May 26, 2022 at 01:04:41PM -0700, Randy Dunlap wrote: > > > On 5/26/22 09:04, Liam Beguin wrote: > > Hi Randy, > > > > On Thu, May 26, 2022 at 08:36:34AM -0700, Randy Dunlap wrote: > >> Liam: > >> > >> Any comment on this? > >> Otherwise I'll just send a formal patch like this (below). > > > > Apologies for not answering earlier. > > > > I wanted to look more into Masahiro's comment and try to fix the > > Makefile, but that can be done after. > > > > IMO your patch improves the current Kconfig, so I'd recommend sending > > the patch. If it can wait a bit, I can look at the Makefile over the > > weekend. > > > > Liam, > > I'll wait until next week to see if you come up with anything. > The following patch fixes the issue while addressing Masahiro's comment. I also considered `select IIO_RESCALE`, but I'm not sure what's usually preferred. diff --git a/drivers/iio/test/Kconfig b/drivers/iio/test/Kconfig index 56ca0ad7e77a..4c66c3f18c34 100644 --- a/drivers/iio/test/Kconfig +++ b/drivers/iio/test/Kconfig @@ -6,7 +6,7 @@ # Keep in alphabetical order config IIO_RESCALE_KUNIT_TEST bool "Test IIO rescale conversion functions" - depends on KUNIT=y && !IIO_RESCALE + depends on KUNIT=y && IIO_RESCALE=y default KUNIT_ALL_TESTS help If you want to run tests on the iio-rescale code say Y here. diff --git a/drivers/iio/test/Makefile b/drivers/iio/test/Makefile index f15ae0a6394f..880360f8d02c 100644 --- a/drivers/iio/test/Makefile +++ b/drivers/iio/test/Makefile @@ -4,6 +4,6 @@ # # Keep in alphabetical order -obj-$(CONFIG_IIO_RESCALE_KUNIT_TEST) += iio-test-rescale.o ../afe/iio-rescale.o +obj-$(CONFIG_IIO_RESCALE_KUNIT_TEST) += iio-test-rescale.o obj-$(CONFIG_IIO_TEST_FORMAT) += iio-test-format.o CFLAGS_iio-test-format.o += $(DISABLE_STRUCTLEAK_PLUGIN) I'll send a patch as soon as you confirm this works for you too. Cheers, Liam > > > > >> > >> Thanks. > >> > >> On 5/20/22 20:51, Randy Dunlap wrote: > >>> Ok, one more. > >>> [also adding Liam here] > >>> > >>> On 5/20/22 20:17, Randy Dunlap wrote: > >>>> > >>>> > >>>> On 5/20/22 20:08, Randy Dunlap wrote: > >>>>> > >>>>> > >>>>> On 5/20/22 19:40, Randy Dunlap wrote: > >>>>>> Hi, > >>>>>> > >>>>>> In March I reported that a randconfig build complained: > >>>>>> > >>>>>> ERROR: modpost: missing MODULE_LICENSE() in drivers/iio/afe/iio-rescale.o > >>>>>> > >>>>>> (https://lore.kernel.org/all/16509fb6-e40c-e31b-2c80-264c44b0beb9@xxxxxxxxxxxxx/) > >>>>>> > >>>>>> I am still seeing this problem so I tried to dig into it a bit. > >>>>>> However, I don't see why get_next_modinfo() and friends don't find the > >>>>>> MODULE_LICENSE() since it is in the iio-rescale.o file. > >>>>>> > >>>>>> (BTW, I see this build error on many different $ARCH [around 15 tested] > >>>>>> and with 2 different versions of GCC.) > >>>>>> > >>>>>> Q1: Is modpost checking both vmlinux and iio-rescale.o for modinfo license > >>>>>> strings? > >>>>>> > >>>>>> It looks like it is, because it appears (?) that modpost is looking at > >>>>>> drivers/iio/test/iio-test-rescale.o (<<<<< a kunit test, which is builtin > >>>>>> in my .config) and at drivers/iio/afe/iio-rescale.o (which is built as a > >>>>>> loadable module). > >>>>>> > >>>>>> Is this confusing modpost? > >>>>>> I renamed drivers/iio/afe/iio-rescale.c to afe-rescale.c and changed its > >>>>>> Makefile entry accordingly and the MODULE_LICENSE error goes away. > >>>>> > >>>>> Oh well. This rename causes drivers/iio/test/iio-test-rescale.c to have > >>>>> build errors, so that's not a solution, just some info... > >>>> > >>>> and that was due to not updating drivers/iio/test/Makefile. > >>>> When that is done, the missing MODULE_LICENSE() is back in afe-rescale.o. > >>>> > >>>>> > >>>>>> Is this a modpost error or is kunit messing things up? > >>>>>> > >>>>>> thanks for looking. > >>> > >>> Does this look OK? It allows afe/iio-rescale.o to build XOR > >>> test/iio-rescale.o (not both of them). > >>> > >>> --- a/drivers/iio/test/Kconfig > >>> +++ b/drivers/iio/test/Kconfig > >>> @@ -6,7 +6,7 @@ > >>> # Keep in alphabetical order > >>> config IIO_RESCALE_KUNIT_TEST > >>> bool "Test IIO rescale conversion functions" > >>> - depends on KUNIT=y && !IIO_RESCALE > >>> + depends on KUNIT=y && IIO_RESCALE=n > >>> default KUNIT_ALL_TESTS > >>> help > >>> If you want to run tests on the iio-rescale code say Y here. > >>> > >>> > >> > >> -- > >> ~Randy > > -- > ~Randy