Thread (60 messages) 60 messages, 13 authors, 2023-02-10

Re: [PATCH 11/18] platform/x86: int3472: fix object shared between several modules

From: Alexander Lobakin <hidden>
Date: 2022-11-23 00:08:59
Also in: linux-kbuild, lkml

From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date: Sun, 20 Nov 2022 15:55:21 +0200
On Sat, Nov 19, 2022 at 11:08:17PM +0000, Alexander Lobakin wrote:
quoted
common.o is linked to both intel_skl_int3472_{discrete,tps68470}:
quoted
scripts/Makefile.build:252: ./drivers/platform/x86/intel/int3472/Makefile:
common.o is added to multiple modules: intel_skl_int3472_discrete
intel_skl_int3472_tps68470
Although both drivers share one Kconfig option
(CONFIG_INTEL_SKL_INT3472), it's better to not link one object file
into several modules (and/or vmlinux).
Under certain circumstances, such can lead to the situation fixed by
commit 637a642f5ca5 ("zstd: Fixing mixed module-builtin objects").

Introduce the new module, intel_skl_int3472_common, to provide the
functions from common.o to both discrete and tps68470 drivers. This
adds only 3 exports and doesn't provide any changes to the actual
code.
...
quoted
+MODULE_IMPORT_NS(INTEL_SKL_INT3472);
+
Redundant blank line. You may put it to be last MODULE_*() in the file, if you
think it would be more visible.
My intention was that it's not "standard" module info like license
or description, rather something like exports or initcalls, that's
why I did separate them.
But I haven't been using module namespaces a lot previously, so if
it should be in one block with the rest MODULE_*(), sure, I'll fix.
quoted
 MODULE_DESCRIPTION("Intel SkyLake INT3472 ACPI Discrete Device Driver");
 MODULE_AUTHOR("Daniel Scally [off-list ref]");
 MODULE_LICENSE("GPL v2");
...
quoted
+MODULE_IMPORT_NS(INTEL_SKL_INT3472);
+
 MODULE_DESCRIPTION("Intel SkyLake INT3472 ACPI TPS68470 Device Driver");
 MODULE_AUTHOR("Daniel Scally [off-list ref]");
 MODULE_LICENSE("GPL v2");
Ditto. And the same to all your patches.

-- 
With Best Regards,
Andy Shevchenko
Thanks,
Olek
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help