Open reberhardt7 opened 4 years ago
Some quick research reveals a few useful things:
EXTRAVERSION
(top of the Makefile) and LOCALVERSION
("General Setup -> Local version - append to kernel release") config flags which may or may not helpI'm taking a poke at this, currently trying to get build-kernel.sh
to consistently succeed. If we have to do much more in terms of kernel patch development it might be worth revisiting the build time and process for the kernel to see if we can improve either, but hopefully that shouldn't be necessarily.
Edit: This link, on how to make a custom "flavour," looks potentially the most useful yet.
For what it's worth, if I try the LOCALVERSION tweak as described above via debian/rules editconfig
, the build seems to go fairly well until this bit:
It looks like it looks for linux-modules-5.3.0-62-generic
in some places where it should be looking for linux-modules-5.3.0-62-generic-cplayground
, which maybe indicates there's another place we need to tweak that string for Debian. The build seems to work - I'm getting a debian/build/build-generic/vmlinux
file - although I haven't done any kernel hacking before, so maybe I'm looking at the wrong thing.
The directory which does exist is debian/linux-modules-5.3.0-62-generic/lib/modules/5.3.0-62-generic-cplayground/
: I still see reference to a -generic
without cplayground
in part of the path; something (a packaging thing for Debian, maybe?) is confused.
build-kernel.sh applies this patch to the kernel code in order to make
get_files_struct
andput_files_struct
available to kernel modules. (I have no idea why these are not exported in the first place; they're pretty important.) However, the compiled kernel ends up being built with the normal version string; if I rununame -r
, it returns5.3.0-42-generic
. It would be nice to have a version suffix added, so that we can see in production that we're running the cplayground kernel (e.g.5.3.0-42+cplayground-generic
).The Ubuntu build instructions say to do this by modifying
debian.master/changelog
, but this didn't work for me. I did a lot of Googling and saw some other possible methods (e.g. editing theMakefile
) but I haven't had time to get anything to work.