Re: [PATCH v3 3/6] modpost: Make mod_device_table aliases more unique
From: Alexey Gladkov
Date: Mon Jun 02 2025 - 10:19:20 EST
On Mon, Jun 02, 2025 at 07:58:41PM +0900, Masahiro Yamada wrote:
> On Mon, Jun 2, 2025 at 5:07 PM Alexey Gladkov <legion@xxxxxxxxxx> wrote:
> >
> > On Mon, Jun 02, 2025 at 04:45:36PM +0900, Masahiro Yamada wrote:
> > > On Tue, May 27, 2025 at 6:08 PM Alexey Gladkov <legion@xxxxxxxxxx> wrote:
> > > >
> > > > In order to avoid symbol conflicts if they appear in the same binary, a
> > > > more unique alias identifier can be generated.
> > >
> > > Why must this be unique?
> > >
> > > What problem would happen if the same symbol names
> > > appear in MODULE_DEVICE_TABLE()?
> >
> > Before these patches this was not a problem as non-unique characters are
> > in separate object files when the module is compiled separately.
> >
> > But when the modules are compiled into the kernel, there is a symbol
> > conflict when linking vmlinuz. We have modules that export multiple device
> > tables from different object files.
>
> This is because the __mod_device_table__* symbols are global, but
> I suspect they do not need to be.
>
> Let's test this
> https://lore.kernel.org/lkml/20250602105539.392362-1-masahiroy@xxxxxxxxxx/T/#u
I tested this patch with the config:
make allmodconfig
make mod2yesconfig
and it works.
--
Rgrds, legion