Dear All,
I would like to build my kernel module with Koji. - kmod : it works except that the builder need to run the latest kernel version built within koji. It seems mock always set "kver" to running kernel version. Can this be changed ? We don't want to reboot the builder each time there is a new kernel. - For modules that need a rebuild, what would be a good approach to build the module for last two kernels (current and previous). Does Anyone have experience with this kind of setup ?
cheers, -- Thomas
On Wed, Jul 25, 2012 at 6:59 AM, Thomas alphacc@gmail.com wrote:
- kmod : it works except that the builder need to run the latest
kernel version built within koji. It seems mock always set "kver" to running kernel version. Can this be changed ? We don't want to reboot the builder each time there is a new kernel.
A little about RPM Fusion's method:
RPM Fusion BuildRequires a "buildsys-build-rpmfusion-kerneldevpkgs-current". This program provides a template to kmodtool.
Their kmodtool also allows for multiple kernels to be defined with "--kernels", which builds multiple eg. kmod-openafs-*.rpm packages at once. However, when there is no "--kernels" argument during a build, (for example, in Plague, or Koji) then buildsys-build-rpmfusion-kerneldevpkgs-current contains a list of kernel versions to build against.
buildsys-build-rpmfusion-kerneldevpkgs-current contains a text file [1] that lists kernel version numbers, and the RPM Fusion devs bump these numbers every time Fedora releases a new kernel to updates-testing. After bumping the numbers in the text file, they rebuild buildsys-build-rpmfusion-kerneldevpkgs-current [2].
[1] http://cvs.rpmfusion.org/viewvc/rpms/buildsys-build-rpmfusion/F-17/buildsys-... [2] http://cvs.rpmfusion.org/viewvc/rpms/buildsys-build-rpmfusion/F-17/buildsys-...
On Thu, Jul 26, 2012 at 7:18 AM, Thomas alphacc@gmail.com wrote:
Thanks for the details I didn't find it in my google quest. It would be nice to be able to pass mock some parameter with Koji for specific use cases.
Yeah, I remember thinking the same thing when I was first looking at building kmods in Koji :) Mock's configuration is very flexible so it would be possible to hack your builder configurations to do this...
However I don't prefer to do that now for two reasons. The first is that I ended up having to bump the kernel version numbers in the mock configs on the Koji builders every time I wanted to rebuild a kmod. The second reason is that the point of mock is that the build is 100% reproducible for everyone, everywhere. If my Koji setup uses a secret mock configuration, then everyone who tries to mock locally must remember to include my "secret sauce", and it's more complicated in the long run.
The advantage to using a "kerneldevpkgs" package is that all the "magic" is legitimate - it's just a package in the buildroot, just like everything else that could influence the build.
- Ken
buildsys@lists.fedoraproject.org