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, andhow 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 Marchiquoted
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