[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAK7LNARAMXmoWw=ZUSRSYoH=gCsHhXiN9m_yPoH+mMMhW93bxw@mail.gmail.com>
Date: Wed, 3 Apr 2019 20:30:55 +0900
From: Masahiro Yamada <yamada.masahiro@...ionext.com>
To: Alexey Gladkov <gladkov.alexey@...il.com>
Cc: Jessica Yu <jeyu@...nel.org>,
Michal Marek <michal.lkml@...kovi.net>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
linux-api@...r.kernel.org,
"Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>,
Gleb Fotengauer-Malinovskiy <glebfm@...linux.org>,
"Dmitry V. Levin" <ldv@...linux.org>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Rusty Russell <rusty@...tcorp.com.au>,
Lucas De Marchi <lucas.de.marchi@...il.com>
Subject: Re: [RESEND PATCH v1] moduleparam: Save information about built-in
modules in separate file
On Thu, Mar 28, 2019 at 1:04 AM Alexey Gladkov <gladkov.alexey@...il.com> wrote:
>
> On Wed, Mar 27, 2019 at 04:40:25PM +0100, Jessica Yu wrote:
> > +++ Alexey Gladkov [26/03/19 18:24 +0100]:
> > >On Fri, Mar 22, 2019 at 02:34:12PM +0900, Masahiro Yamada wrote:
> > >> Hi.
> > >>
> > >> (added some people to CC)
> >
> > (Thanks Masahiro for the CC!)
> >
> > >>
> > >> On Fri, Mar 15, 2019 at 7:10 PM Alexey Gladkov <gladkov.alexey@...il.com> wrote:
> > >> >
> > >> > Problem:
> > >> >
> > >> > When a kernel module is compiled as a separate module, some important
> > >> > information about the kernel module is available via .modinfo section of
> > >> > the module. In contrast, when the kernel module is compiled into the
> > >> > kernel, that information is not available.
> > >>
> > >>
> > >> I might be missing something, but
> > >> vmlinux provides info of builtin modules
> > >> in /sys/module/.
> > >
> > >No. There are definitely not all modules. I have a builtin sha256_generic,
> > >but I can't find him in the /sys/module.
> >
> > Yeah, you'll only find builtin modules under /sys/module/ if it has any module
> > parameters, otherwise you won't find it there. As Masahiro already mentioned,
> > if a builtin module has any parameters, they would be accessible under /sys/module/.
> >
> > >> (Looks like currently only module_param and MODULE_VERSION)
> > >>
> > >> This patch is not exactly the same, but I see a kind of overwrap.
> > >> I'd like to be sure if we want this new scheme.
> > >
> > >The /sys/module is only for running kernel. One of my use cases is
> > >to create an initrd for a new kernel.
> > >
> > >>
> > >> > Information about built-in modules is necessary in the following cases:
> > >> >
> > >> > 1. When it is necessary to find out what additional parameters can be
> > >> > passed to the kernel at boot time.
> > >>
> > >>
> > >> Actually, /sys/module/<module>/parameters/
> > >> exposes this information.
> > >>
> > >> Doesn't it work for your purpose?
> > >
> > >No, since creating an initrd needs to know all the modalias before
> > >I get the sysfs for new kernel. Also there are no modalias at all.
> > >
> > >> > 2. When you need to know which module names and their aliases are in
> > >> > the kernel. This is very useful for creating an initrd image.
> > >> >
> >
> > Hm, I do see one possible additional use-case for preserving module alias
> > information for built-in modules - modprobe will currently error (I think,
> > correct me if I'm wrong) if we try invoking modprobe with an alias of a
> > built-in module, simply because this information is not in modules.builtin or
> > modules.alias.
>
> Yes. Patch for modprobe in my todo list. The reason I didn’t do it was
> because I wasn’t sure that the file format was final.
>
> > Since kbuild already outputs modules.builtin, I would suggest outputting
> > something like a modules.builtin.alias file (and I guess maybe a modules.builtin.param
> > file too if that's deemed useful), in a format that is consumable by kmod/modprobe,
> > so that modprobing an alias of a built-in module doesn't produce an error. I
> > think this should be easy to do if we keep and parse the resulting .modinfo for
> > builtin modules. This is just an idea, opinions welcome. I've added Lucas to CC
> > in case he has any thoughts.
>
> You don't like kernel.builtin.modinfo ?
Naming is often the most difficult thing. :)
IMHO, 'kernel' and 'builtin' have a similar meaning here.
Is 'kernel.builtin' unnecessarily too long?
Perhaps, another idea is:
'builtin.alias' instead of 'modules.builtin.alias'
if we want a separate file in the same format.
In hindsight, 'modules.builtin' should have been
'builtin.order', I think.
> It is much easier to create and it has almost the same format as the
> modules. So I think it will be easier to parse in kmod.
--
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists