[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aHeBo7w-Txmbjjis@example.org>
Date: Wed, 16 Jul 2025 12:40:35 +0200
From: Alexey Gladkov <legion@...nel.org>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: Petr Pavlu <petr.pavlu@...e.com>, Luis Chamberlain <mcgrof@...nel.org>,
Sami Tolvanen <samitolvanen@...gle.com>,
Daniel Gomez <da.gomez@...sung.com>,
Nathan Chancellor <nathan@...nel.org>,
Nicolas Schier <nicolas.schier@...ux.dev>,
linux-kernel@...r.kernel.org, linux-modules@...r.kernel.org,
linux-kbuild@...r.kernel.org, linux-scsi@...r.kernel.org
Subject: Re: [PATCH v4 0/7] Add generated modalias to modules.builtin.modinfo
On Wed, Jul 16, 2025 at 01:23:26AM +0900, Masahiro Yamada wrote:
> Hi, sorry for the delay.
>
> On Mon, Jul 14, 2025 at 10:41 PM Alexey Gladkov <legion@...nel.org> wrote:
> >
> > On Sat, Jun 21, 2025 at 03:57:12PM +0200, Alexey Gladkov wrote:
> > > The modules.builtin.modinfo file is used by userspace (kmod to be specific) to
> > > get information about builtin modules. Among other information about the module,
> > > information about module aliases is stored. This is very important to determine
> > > that a particular modalias will be handled by a module that is inside the
> > > kernel.
> > >
> > > There are several mechanisms for creating modalias for modules:
> > >
> > > The first is to explicitly specify the MODULE_ALIAS of the macro. In this case,
> > > the aliases go into the '.modinfo' section of the module if it is compiled
> > > separately or into vmlinux.o if it is builtin into the kernel.
> > >
> > > The second is the use of MODULE_DEVICE_TABLE followed by the use of the
> > > modpost utility. In this case, vmlinux.o no longer has this information and
> > > does not get it into modules.builtin.modinfo.
> > >
> > > For example:
> > >
> > > $ modinfo pci:v00008086d0000A36Dsv00001043sd00008694bc0Csc03i30
> > > modinfo: ERROR: Module pci:v00008086d0000A36Dsv00001043sd00008694bc0Csc03i30 not found.
> > >
> > > $ modinfo xhci_pci
> > > name: xhci_pci
> > > filename: (builtin)
> > > license: GPL
> > > file: drivers/usb/host/xhci-pci
> > > description: xHCI PCI Host Controller Driver
> > >
> > > The builtin module is missing alias "pci:v*d*sv*sd*bc0Csc03i30*" which will be
> > > generated by modpost if the module is built separately.
> > >
> > > To fix this it is necessary to add the generated by modpost modalias to
> > > modules.builtin.modinfo.
> > >
> > > Fortunately modpost already generates .vmlinux.export.c for exported symbols. It
> > > is possible to use this file to create a '.modinfo' section for builtin modules.
> > > The modules.builtin.modinfo file becomes a composite file. One part is extracted
> > > from vmlinux.o, the other part from .vmlinux.export.o.
> >
> > Masahiro Yamada, does this version of the patchset look better to you ?
>
>
> Looks better, but this may break s390 build:
>
> https://lore.kernel.org/linux-kbuild/202506062053.zbkFBEnJ-lkp@intel.com/
>
> I have not taken a close look at it.
> If we do not find how to fix the warning, we would
> end up with the original solution.
I haven't gotten any messages from kernel test robot about this message
since these patches were published.
I've pushed the patches to my brunch and will wait for test results until
the weekend. I will see what happens.
> > > Notes:
> > > - v4:
> > > * Rework the patchset based on top of Masahiro Yamada's patches.
> > > * Add removal of unnecessary __mod_device_table__* symbols to avoid symbol
> > > table growth in vmlinux.
> > > * rust code takes into account changes in __mod_device_table__*.
> > > * v3: https://lore.kernel.org/all/cover.1748335606.git.legion@kernel.org/
> > >
> > > - v3:
> > > * Add `Reviewed-by` tag to patches from Petr Pavlu.
> > > * Rebase to v6.15.
> > > * v2: https://lore.kernel.org/all/20250509164237.2886508-1-legion@kernel.org/
> > >
> > > - v2:
> > > * Drop patch for mfd because it was already applied and is in linux-next.
> > > * The generation of aliases for builtin modules has been redone as
> > > suggested by Masahiro Yamada.
> > > * Rebase to v6.15-rc5-136-g9c69f8884904
> > > * v1: https://lore.kernel.org/all/cover.1745591072.git.legion@kernel.org/
> > >
> > >
> > > Alexey Gladkov (3):
> > > scsi: Always define blogic_pci_tbl structure
> > > modpost: Add modname to mod_device_table alias
> > > modpost: Create modalias for builtin modules
> > >
> > > Masahiro Yamada (4):
> > > module: remove meaningless 'name' parameter from __MODULE_INFO()
> > > kbuild: always create intermediate vmlinux.unstripped
> > > kbuild: keep .modinfo section in vmlinux.unstripped
> > > kbuild: extract modules.builtin.modinfo from vmlinux.unstripped
> > >
> > > drivers/scsi/BusLogic.c | 2 -
> > > include/asm-generic/vmlinux.lds.h | 2 +-
> > > include/crypto/algapi.h | 4 +-
> > > include/linux/module.h | 21 ++++-----
> > > include/linux/moduleparam.h | 9 ++--
> > > include/net/tcp.h | 4 +-
> > > rust/kernel/device_id.rs | 8 ++--
> > > scripts/Makefile.vmlinux | 74 +++++++++++++++++++++----------
> > > scripts/Makefile.vmlinux_o | 26 +----------
> > > scripts/mksysmap | 6 +++
> > > scripts/mod/file2alias.c | 34 ++++++++++++--
> > > scripts/mod/modpost.c | 17 ++++++-
> > > scripts/mod/modpost.h | 2 +
> > > 13 files changed, 131 insertions(+), 78 deletions(-)
> > >
> > > --
> > > 2.49.0
> > >
> >
> > --
> > Rgrds, legion
> >
>
>
> --
> Best Regards
> Masahiro Yamada
>
--
Rgrds, legion
Powered by blists - more mailing lists