Re: Latest kernel on compass distribution


Jeremy McDermond <mcdermj@...>
 

On Nov 19, 2016, at 2:31 PM, Edouard Lafargue <ed@...> wrote:

Hi fellow UDRC users,

I was wondering about the latest plans on the Compass distribution - I recently hit a bad Kernel bug related to the AX25 stack, and would like to upgrade the Linux kernel to the most recent version that supports the UDCR-II soundcard: are there instructions somewhere on how to do this? My understanding is that the raspbian standard command to upgrade the kernel will break the distribution, is that still the case?
It depends on what you mean about the “raspbian standard command to upgrade the kernel.” In the olden days of the original Raspberry Pi, the Foundation released Raspbian where the only way you got a kernel was on your original distribution image. Otherwise, they kept a kernel in a GitHub repository and you could download all the pieces. Some enterprising folks wrote a program called “rpi-update” that would download the new kernel pieces from GitHub for you and replace them out. This wasn’t a great way of upgrading your kernel and was contrary to the normal ways that Linux would upgrade things.

To fix this, the Foundation make proper .deb packages of the kernel, firmware and other goodies. You will see these on Compass as packages like raspberrypi-firmware and such. These will contain the most current stable kernel and such. Compass replaces out these packages with our own that have a kernel with the proper drivers included. Those kernels are built off of the source housed at https://github.com/nwdigitalradio/linux.git repository from the udr/mcdermj branch (this will eventually change to master when I have half a chance to move some things around). There is a Jenkins Continuous Integration instance that will automatically build a kernel package every time a commit happens on the udr/mcdermj branch. If this build is successful, the resulting packages are automatically uploaded to archive.compasslinux.org on the “wilderness” branch for folks to test and destroy.

The upshot of all of this is that the “raspbian standard command” is now “apt-get update && apt-get upgrade” just like Ubuntu, Debian or a lot of other Linuxes.

As far as the state of the kernel, I try to merge in the upstream sources every couple of months and produce a new wilderness kernel. If it looks stable to us, I’ll promote it to the new kernel in our stable branch named “alder”. I hope to one day try to have automatic merging of the upstream Raspbian tree into wilderness by Jenkins.

I realized I hadn’t merged upstream updates in a while, so I got a merge going on the current source. It seems to compile okay, so Jenkins is chewing on it now. There should be a fresh kernel in wilderness in a bit. If you have a specific commit you can point me at, I can try to make sure that the patch gets into the build.

Also note that our eventual solution to this problem is to try to get the changes into the upstream Linux distributions so that a new kernel is no longer necessary. I’m still working on getting more pieces submitted, but my time has become rather limited of late.

Thanks in advance

Ed W6ELA
--
Jeremy McDermond
nh6z@...

Join udrc@nw-digital-radio.groups.io to automatically receive all group messages.