Decompress the kernel module if it's compressed#202
Decompress the kernel module if it's compressed#202ldzhong wants to merge 2 commits intoSUSE:develfrom
Conversation
currently it supports .xz, .gz and .zst
|
Hi Lidong, currently the modules are already extracted during Regarding the PR, there are three approaches we can have:
If we were to go with option 2, I'd vote to not extract any module during setup, given that we would extract them on demand when needed. This approach should save more space on the disk with respect to option 1. |
|
In the past, when we still supported clang-extract as well, we used to extract them modules in memory, take a look into 804b101. This would be the perfect world, with clang-extract also supporting it. In this way, we could dream of using klp-build even on future upstream kernels, and enable people to extract code in their running systems. Given that we stopped supporting clang-extract, and that klp-ccp is basically in maintenance mode + some efforts, I dropped the code since it wasn't used anymore. @ldzhong a good approach would be make klp-ccp to also extract the modules in memory, using the same approach than clang-extract, so we don't need to extract anymore on disk anymore. Otherwise, everything is like @vmezzela said: we are doing this on setup phase, and whenever a module is not extracted was an interrupted process or a bug somewhere, but lately we only see issues regarding a previously interrupted setup. |
|
As I see it, the simplest solution would be to improve The ideal solution should be the 2. or 3., as @vmezzela noted :) |
|
@ldzhong I would like to check if you would like to reimplement 804b101 on top of the current devel branch. I talked with @vmezzela and @fgyanz and we could also make klp-ccp to extract the modules in memory, instead of doing it manually when downloading new codestreams. We could, for now, hide the new in memory extraction behind an env var, until we have it implemented on klp-ccp. What do you think? |
If the kernel module is present in the compressed format, an error will bail out that said "Module {str(obj_path)} doesn't exists. Aborting" when running the
klp-build setupcommand. In this patch we'll decompress it instead of aborting. Currently it supports .xz, .gz and .zst.