-
Notifications
You must be signed in to change notification settings - Fork 13
Build testing kernels in Vagrant #30
Comments
Here's an interesting conversation from the Debian #debian-kernel IRC about the (lack of) difference between kernels built with
|
The primary benefit of using
|
Resolved by #36. |
* Since bento boxes more closely reproduce a HW SD install environment than official Ubuntu Vagrant images, it is preferred to use them (freedomofpress/securedrop#1344 (comment)). Also, #30 was resolved, so we should be able to build in kernels in Trusty again, ensuring we'll be building stable kernels against the exact same version of glibc as is present on live SD instances. * We confirmed that Vagrant always uses https, so the `box_url` parameter is not needed.
* Since bento boxes more closely reproduce a HW SD install environment than official Ubuntu Vagrant images, it is preferred to use them (freedomofpress/securedrop#1344 (comment)). Also, #30 was resolved, so we should be able to build in kernels in Trusty again, ensuring we'll be building stable kernels against the exact same version of glibc as is present on live SD instances. * We confirmed that Vagrant always uses https, so the `box_url` parameter is not needed.
The
build-grsec-kernel
role currently usesmake-kpkg
, provided by the packagekernel-package
in Debian-based systems, to build the kernel. I have come to believe this package may be unnecessary, and it has some downsides that are annoying to work around.I discovered the issues with this package while trying to build a grsec testing kernel in Vagrant. My process:
vagrant up && vagrant ssh
,make menuconfig
to turn on grsec (automatic configuration for server with security priority), build it with themake-kpkg
command fromcompile.yml
. This lead to an error (which annoyingly occurred after all the compilation and linking was done, so I had to wait about 1.5 hours before I saw it):Some Googling lead me to a Launchpad issue, which explained that this was a bug in trusty's version of
kernel-package
(12.036+nmu3). The issue was triggered by an upstream kernel change, but that change only exposed the underlying bug in the Debian package (lmkl), which was fixed in 13.003.The upshot is that you cannot build a Linux kernel with version >= 3.15-rc1 in Ubuntu trusty due to this bug in
kernel-package
. We didn't notice this bug earlier because we've been building stable grsecurity kernels (based on 3.14.x) for SecureDrop. I only noticed it when I tried to build a testing kernel (based on 4.2.x). In addition, Conor and Kevin have mostly been testing on DigitalOcean with Debian Jessie VM's, and Debian Jessie contains a sufficiently up-to-date version ofkernel-package
such that they hadn't encountered this problem before.Ok, but I still want to be able to build a testing kernel in Vagrant. So what are my options?
kernel-package
kernel-package
.make-kpkg
with themake deb-pkg
target provided in the vanilla kernel sources.The text was updated successfully, but these errors were encountered: