-
Notifications
You must be signed in to change notification settings - Fork 165
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
get module_compressed_suffix from .config #402
Conversation
I only tested by building/installing/removing a driver and verifying that compression was properly detected and applied to the module. I'm also not 1000% sure that the |
The old method of parsing modules.dep fails to detect compression if none of the currently installed modules are compressed, causing newly built modules to also be uncompressed, even if the kernel supports compression. Based on 07de929, which already added this new behavior to run_test.sh.
159f0b8
to
37515ed
Compare
Generally I'm in favour. More so, we should probably remove this in the long run - see #319 for more. I'm inclined to merge this, just a couple of questions. In you test/example above:
And to answer your question:
I think that in the early days it was not guaranteed - with distro packaging varying greatly. These days, it's a hard-requirement for dkms and all the distros in our CI have it. |
On second thought, I don't think we can do this yet. Namely: Lines 246 to 266 in c1c2986
So as-is this will cause a regression and there won't be an easy way for user/distro to reinstate the original behaviour. There's some ideas to have this as config toggle - see #328. If you'd like to add a config for compression override type, then we can have this on top. |
The output I showed was from a Ubuntu 22.04 machine. The relevant installed packages for this kernel version are |
If I'm understanding right, doesn't the use of the |
Are you suggesting like a |
Nice - I believe most distros are doing this aka ship the required RO files.
All the packager tools out there (that I've seen) have specific methods to trigger post-install hooks. Debian/Ubuntu are using the |
It's a log story, so you might want to grab a drink:
In particular: There are two(?) ways to load modules - kmod or busybox, which vary in a few ways.
Taking the above into account, the CONFIG toggle indicates (at least) two things:
Most if not all the above vary across kernel/kmod/busybox version and do not (yet) have a hard requirement for specific minimal versions. So what happens when we take everything into consideration is ... unclear. Abstracting ourselves from all of this - the key premise is that this will change the behaviour. Before we'll install uncompressed modules when compressed ones are expected or vice-versa. |
A little more - a "module_compression" field in Ideally we'll also have 1-2 tests in the CI. |
Yea I can see how promoting/relying more on So, should I close this PR? Leave it open to maybe get merged in the distant future? I don't think I'm gonna have time to implement a new |
Unwrapping/removing IMHO Thanks for your time bearing with this behemoth :-P |
I'm sorry but I've merged something different than getting the compression from the
On top of that, the kernel modules are not part of the kernel package, the base kernel package ( I've changed the code and added some comment so the next person looking at this does not step into the same issue: https://github.com/dell/dkms/blob/master/dkms.in#L261-L274 Thanks. |
The old (current) method of parsing
modules.dep
fails to detect compression if none of the currently installed modules are compressed, causing newly built modules to also be uncompressed, even if the kernel supports compression.Based on 07de929, which already added this new behavior to run_test.sh.
Script demonstrating the issue:
Output on my machine: