linux-modules.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nick Alcock <nick.alcock@oracle.com>
To: Luis Chamberlain <mcgrof@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>, Allen Webb <allenwebb@google.com>,
	Zhen Lei <thunder.leizhen@huawei.com>,
	Jeff Mahoney <jeffm@suse.com>, Omar Sandoval <osandov@fb.com>,
	Christoph Hellwig <hch@infradead.org>,
	Guenter Roeck <linux@roeck-us.net>,
	Quentin Perret <qperret@google.com>,
	masahiroy@kernel.org, linux-modules@vger.kernel.org,
	linux-trace-kernel@vger.kernel.org, linux-kernel@vger.kernel.org,
	arnd@arndb.de, akpm@linux-foundation.org, eugene.loh@oracle.com,
	kris.van.hees@oracle.com, elena.zannoni@oracle.com
Subject: Re: [PATCH modules-next v10 00/13] kallsyms: reliable symbol->address lookup with /proc/kallmodsyms
Date: Thu, 09 Feb 2023 16:54:23 +0000	[thread overview]
Message-ID: <87r0uy3hkw.fsf@esperi.org.uk> (raw)
In-Reply-To: <Y8b8TOJzd/RZXR8z@bombadil.infradead.org> (Luis Chamberlain's message of "Tue, 17 Jan 2023 11:51:40 -0800")

On 17 Jan 2023, Luis Chamberlain uttered the following:
[...]
> And please split out the driver conversions to remove module license per
> subsystem, and a new thread. The justification should be simple, commit
> 8b41fc4454e36fbf ("kbuild: create modules.builtin without Makefile.modbuiltin or
> tristate.conf") now relies on the module license tag to do simplify the
> build system. And as part of follow up work to that patch we want to
> correct false positives for modules.builtin where userspace may try to
> load a module which is built-in but such module can never be built in.
> You can add Suggested-by me to that set.

I understand what you are saying, and I have been working on this.

I am going to split this whole series into:

1. A series of patches (123 of them at present) Cc:ed to subsystem
maintainers as well as you, to comment out the MODULE_LICENSE usage.
These patches will have Suggested-by you. This series is rebased against
the latest modules-next and revalidated, and is ready to be mailed out;
will do so shortly.

2. A series of patches adding your new modules.builtin.objs and
kallmodsyms (with revised cover letter, etc, as you request). As part of
the second series I will make sure to involve the tracing maintainers
more and provide an example of usage with perf and hopefully ftrace.
(Note that the name "kallmodsym" is not something I am wedded to. We can
find a better one, if we can come up with one: it's more about
unambiguous symbol resolution now, and maximizing the number of module
names is largely a mechanism to accomplish that, so maybe /proc/ksym?)

This second series is not going out quite yet: I'm working on the perf
support now.

> The same applies to your other Makefile patch (except to the
> Suggested-by as I don't understand the goal there yet), I don't know what it is
> trying to do, but it should be a separate effort. You can feel free to
> Cc me on that too.

I have decided not to submit the tristate checker at this time, as it is
not essential and it made things too confused. The Makefile patch you
refer to and the tristate.conf reintroduction were only needed for the
checker, so are dropped, with nothing more than a reference to a branch
containing the checker in the kallmodsyms cover letter. (The checker
does need periodic rerunning to make sure that spurious MODULE_LICENSE
usages don't creep back in -- reintroductions seem to be running at
about one a month -- but that's easy to do ad-hoc and it doesn't need to
be upstream for that.)

> And lastly users. This cover letter should reflect clearly who are the
> new users who are dying for this feature, Cc them and hope to have them be
> actively engaged during review.

I do hope that adding some proof-of-concept usage of this in perf and
ftrace (emitting symbol names formatted like 'symbol@objname:module'
where possible rather than just unadorned symbols) might show the perf
and ftrace maintainers that this is not useless.

Thanks for your patience and feedback.

  reply	other threads:[~2023-02-09 17:12 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-05 16:31 [PATCH modules-next v10 00/13] kallsyms: reliable symbol->address lookup with /proc/kallmodsyms Nick Alcock
2022-12-05 16:31 ` [PATCH v10 01/13] kbuild: add modules.builtin.objs Nick Alcock
2022-12-05 16:31 ` [PATCH v10 02/13] kbuild: bring back tristate.conf Nick Alcock
2023-03-05  8:10   ` Masahiro Yamada
2022-12-05 16:31 ` [PATCH v10 03/13] kbuild: add tristate checker Nick Alcock
2023-03-05 15:10   ` Masahiro Yamada
2022-12-05 16:31 ` [PATCH v10 04/13] kbuild: fix up substitutions in makefiles to allow for " Nick Alcock
2023-03-05 15:11   ` Masahiro Yamada
2022-12-05 16:31 ` [PATCH v10 05/13] kbuild: remove MODULE_LICENSE/AUTHOR/DESCRIPTION in non-modules Nick Alcock
2022-12-06  9:11   ` Geert Uytterhoeven
2022-12-06 20:03     ` Nick Alcock
2022-12-06 21:02       ` Arnd Bergmann
2022-12-07  5:03         ` Luis Chamberlain
2022-12-07  5:10           ` Luis Chamberlain
2022-12-07  8:21           ` Christoph Hellwig
2023-03-05  8:09           ` Masahiro Yamada
2022-12-05 16:31 ` [PATCH v10 06/13] build: add a simple iterator over modules.builtin.objs Nick Alcock
2022-12-05 16:31 ` [PATCH v10 07/13] kbuild: generate an address ranges map at vmlinux link time Nick Alcock
2022-12-05 16:31 ` [PATCH v10 08/13] kbuild: make address ranges map work with IBT Nick Alcock
2022-12-05 16:31 ` [PATCH v10 09/13] kallsyms: introduce sections needed to map symbols to built-in modules Nick Alcock
2022-12-05 16:31 ` [PATCH v10 10/13] kallsyms: optimize .kallsyms_modules* Nick Alcock
2022-12-05 16:31 ` [PATCH v10 11/13] kallsyms: distinguish text symbols fully using object file names Nick Alcock
2022-12-05 16:31 ` [PATCH v10 12/13] kallsyms: add /proc/kallmodsyms for text symbol disambiguation Nick Alcock
2022-12-05 16:31 ` [PATCH v10 13/13] perf: proof-of-concept kallmodsyms support Nick Alcock
2022-12-16 15:21 ` [PING] [PATCH modules-next v10 00/13] kallsyms: reliable symbol->address lookup with /proc/kallmodsyms Nick Alcock
2023-01-17 19:51 ` Luis Chamberlain
2023-02-09 16:54   ` Nick Alcock [this message]
2023-02-09 23:53     ` Nick Alcock
2023-02-21 21:48       ` Luis Chamberlain
2023-02-22 12:08         ` Nick Alcock
2023-02-22 22:25           ` Luis Chamberlain
2023-04-07 23:21 ` Josh Poimboeuf
2023-04-10 13:08   ` Joe Lawrence
2023-04-24 19:47   ` Luis Chamberlain
2023-04-25  8:27     ` Petr Mladek
2023-05-08 22:06 ` Steven Rostedt
2023-05-19 15:50   ` Alexander Lobakin
2023-05-22 23:21     ` Luis Chamberlain
2023-05-24 15:02     ` Nick Alcock

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r0uy3hkw.fsf@esperi.org.uk \
    --to=nick.alcock@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=allenwebb@google.com \
    --cc=arnd@arndb.de \
    --cc=elena.zannoni@oracle.com \
    --cc=eugene.loh@oracle.com \
    --cc=hch@infradead.org \
    --cc=jeffm@suse.com \
    --cc=kris.van.hees@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-modules@vger.kernel.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=masahiroy@kernel.org \
    --cc=mcgrof@kernel.org \
    --cc=mingo@kernel.org \
    --cc=osandov@fb.com \
    --cc=qperret@google.com \
    --cc=thunder.leizhen@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).