Re: Module versioning + Missing CRC in symvers + export tracepoints

From: Krishna Chaitanya
Date: Tue May 04 2021 - 07:52:17 EST


On Tue, Apr 20, 2021 at 6:26 PM Krishna Chaitanya
<chaitanya.mgit@xxxxxxxxx> wrote:
>
> Hi,
>
> I am seeing an issue of no CRC being generated in the Module.symvers for a
> driver module even when CONFIG_MODVERSIONS Is enabled, this causes
> modpost warnings about missing versioning.
>
> The module in questions only exports tracepoint related symbols (as
> struct tracepoint is
> part of the module CRC), I have seen this with other modules also e.g.
> iwlwifi with CONFIG_MODVERSIONS.
>
> Though I am trying on 5.12.-rc2, also, seeing this issue with older kernels with
> CONFIG_MODVERSIONS enabled e.g. 4.15.0, Below are a couple of snippets
> to demonstrate the issue.
>
> modpost warnings
> ===============
>
> WARNING: modpost: EXPORT symbol "__tracepoint_iwlwifi_dev_ucode_event"
> [drivers/net/wireless/intel/iwlwifi//iwlwifi.ko] version generation
> failed, symbol will not be versioned.
> WARNING: modpost: EXPORT symbol "iwl_remove_notification"
> [drivers/net/wireless/intel/iwlwifi//iwlwifi.ko] version generation
> failed, symbol will not be versioned.
>
>
> Module.symvers (after modpost)
> ==============
> 0x00000000 iwl_remove_notification
> drivers/net/wireless/intel/iwlwifi//iwlwifi EXPORT_SYMBOL_GPL
> 0x00000000 __tracepoint_iwlwifi_dev_ucode_event
> drivers/net/wireless/intel/iwlwifi//iwlwifi EXPORT_SYMBOL
>
> Any ideas?
Adding people from this
https://patchwork.kernel.org/project/linux-kbuild/patch/CA+55aFxCKgTrh1gS-cMyhBa0QoLW2DL2+DYxOAcA-Bd15H15vg@xxxxxxxxxxxxxx/
thread to throw some light on non-asm version of the issue.