Thread (22 messages) 22 messages, 4 authors, 2024-11-21

Re: [PATCH v8 2/3] modpost: Produce extended MODVERSIONS information

From: Matthew Maurer <hidden>
Date: 2024-11-07 19:38:02
Also in: linux-kbuild, linux-modules, lkml, rust-for-linux

On Wed, Nov 6, 2024 at 10:27 PM Lucas De Marchi
[off-list ref] wrote:
On Wed, Nov 06, 2024 at 02:19:38PM -0800, Matthew Maurer wrote:
quoted
quoted
quoted
If booted against an old kernel, it will
behave as though there is no modversions information.
Huh? This I don't get. If you have the new libkmod and boot
an old kernel, that should just not break becauase well, long
symbols were not ever supported properly anyway, so no regression.
Specifically, if you set NO_BASIC_MODVERSIONS, build a module, and
how are you setting NO_BASIC_MODVERSIONS and loading it in a kernel
that still doesn't have that, i.e. before EXTENDED_MODVERSIONS?
That action would involve e.g. building a module against a 6.13 series
kernel with NO_BASIC_MODVERSIONS and trying insmod it on a 6.12 series
kernel. I know it's not supported, I was just trying to describe the
full matrix of what would happen differently with the proposed
additional config flag.
Please Cc me on the format change and if possible submit the libkmod
support.
It seems awkward to adjust kmod to support a format that still hasn't
been accepted to the kernel. I can send kmod patches to support it,
but since this patch series hasn't been accepted yet, it seemed a bit
premature.

I'll explicitly add you to the format change (patch before this in the
series) and add you to the whole series in v9
thanks
Lucas De Marchi
quoted
then load said module with a kernel *before* EXTENDED_MODVERSIONS
existed, it will see no modversion info on the module to check. This
will be true regardless of symbol length.
quoted
I'm not quite sure I understood your last comment here though,
can you clarify what you meant?

Anyway, so now that this is all cleared up, the next question I have
is, let's compare a NO_BASIC_MODVERSIONS world now, given that the
userspace requirements aren't large at all, what actual benefits does
using this new extended mod versions have? Why wouldn't a distro end
up preferring this for say a future release for all modules?
I think a distro will end up preferring using this for all modules,
but was intending to put both in for a transitional period until the
new format was more accepted.
quoted
  Luis
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help