2021-04-20 12:57:50

by Krishna Chaitanya

[permalink] [raw]
Subject: Module versioning + Missing CRC in symvers + export tracepoints

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?


2021-05-04 11:53:37

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: Module versioning + Missing CRC in symvers + export tracepoints

On Tue, Apr 20, 2021 at 6:26 PM Krishna Chaitanya
<[email protected]> 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@mail.gmail.com/
thread to throw some light on non-asm version of the issue.