I am working on a fairly complex closed source kernel module and am unable to compile it using some toolchains without setting the license to GPL.
modpost complains about the use of a specific GPL symbol ‘lockdep_init_map_type’. Greping the modules source shows no hits and I am unable to determine how this symbol is used. (I don’t even know what it is usually used for)
- I can compile the module as “Proprietery” for linux-6.1.42
- I can compile the module as “GPL” for linux-6.1.87
- I can NOT compile the module as “Proprietery” for linux-6.1.87
The corresponding toolchain for linux-6.1.42 is a buildroot toolchain.
The one for the linux-6.1.87 is a crosstools-ng one.
How can I find out why the same source does not build for both kernel versions as “Proprietery”?
How can I tell which symbols changes from not GPL to GPL between two kernel versions?
If I do not use a GPL symbol directly why does modpost complain?