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@infradead.o...) > > 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