On Sun, Nov 3, 2019 at 10:43 PM Dan Williams <dan.j.williams@xxxxxxxxx> wrote: > > On Sun, Nov 3, 2019 at 7:12 PM Masahiro Yamada > <yamada.masahiro@xxxxxxxxxxxxx> wrote: > > > > On Sat, Nov 2, 2019 at 3:52 AM Jeff Moyer <jmoyer@xxxxxxxxxx> wrote: > > > > > > Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> writes: > > > > > > > On Fri, Nov 1, 2019 at 1:51 AM Jeff Moyer <jmoyer@xxxxxxxxxx> wrote: > > > >> > > > >> Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> writes: > > > >> > > > >> > Now that there is no overwrap between symbols from ELF files and > > > >> > ones from Module.symvers. > > > >> > > > > >> > So, the 'exported twice' warning should be reported irrespective > > > >> > of where the symbol in question came from. Only the exceptional case > > > >> > is when __crc_<sym> symbol appears before __ksymtab_<sym>. This > > > >> > typically occurs for EXPORT_SYMBOL in .S files. > > > >> > > > >> Hi, Masahiro, > > > >> > > > >> After apply this patch, I get the following modpost warnings when doing: > > > >> > > > >> $ make M=tools/tesing/nvdimm > > > >> ... > > > >> Building modules, stage 2. > > > >> MODPOST 12 modules > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'nvdimm_bus_lock' exported > > > >> twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'nvdimm_bus_unlock' > > > >> exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'is_nvdimm_bus_locked' > > > >> exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'devm_nvdimm_memremap' > > > >> exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'nd_fletcher64' exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'to_nd_desc' exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> WARNING: tools/testing/nvdimm/libnvdimm: 'to_nvdimm_bus_dev' > > > >> exported twice. Previous export was in drivers/nvdimm/libnvdimm.ko > > > >> ... > > > >> > > > >> There are a lot of these warnings. :) > > > > > > > > These warnings are correct since > > > > drivers/nvdimm/Makefile and > > > > tools/testing/nvdimm/Kbuild > > > > compile the same files. > > > > > > Yeah, but that's by design. Is there a way to silence these warnings? > > > > > > -Jeff > > > > > > > "rm -f Module.symvers; make M=tools/testing/nvdimm" ? > > > > I'd like the _design_ fixed though. > > This design is deliberate. The goal is to re-build the typical nvdimm > modules, but link them against mocked version of core kernel symbols. > This enables the nvdimm unit tests which have been there for years and > pre-date Kunit. That said, deleting Module.symvers seems a simple > enough workaround. This workaround triggers: WARNING: Symbol version dump ./Module.symvers is missing; modules will have no dependencies and modversions. Which is a regression from the previous working state.