Doorgaan naar hoofdcontent

Getting backports to work with recent linux kernel releases

I have been struggling a few days now to get the fantastic "backports" project up and running on my machine (Arch Linux). Here's what I had to do:

First,
make sure you have backport checkout out, and pulled in all the required trees:

# git clone git://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git
# cd backports
# ./devel/backports-update-manager 


Here's what I found out:

- Make sure your PYTHON_PATH does not contain funny stuff
- devel/pycocci expects Python 2. Arch Linux defaults to Python 3. Use a virtualenv2, or change devel/pycocci's first line to "#!/usr/bin/env python2"
- devel/pycocci crashes randomly when using different threads. I have hacked the script to make it single-threaded. EDIT: This seems to be because of Coccinelle 1.0.6. It does not occur using Cocinnele 1.0.4
- Coccinelle 1.0.6 does not work with all patches included in backports, you need version 1.0.4 with python support. (bin can be found here: http://coccinelle.lip6.fr/distrib/coccinelle-1.0.4-bin-x86-python.tgz)

After this, I was able to reproduce the latest release official backports release "backports-20160324".

Steps:
# cd /path/to/coccinelle-1.0.4
# ln -s spatch.opt spatch
# source env.sh
# cd ~/linux-next-history
# git checkout next-20160324
# cd ~/backports
# git checkout backports-20160324
# ./gentree.py --verbose --clean ~/linux-next-history ~/backports/release

Next step is to move to more recent linux-next / wireless-testing revisions:

Using wireless-next, instead of linux-next, I have now successfully built a backports release using following git revisions:
backports: e8ec27f6c9c5554afa00d55b663d81e0b0cebaed
wireless-testing: wt-2017-04-24 (2f0e53b3d84bfb1af171ad8e556875f3bcb6caa2)

# ./gentree.py --verbose --clean ~/wireless-testing ~/backports/backports-wt-20170424


Happy backporting!

Reacties

Populaire posts van deze blog

[RPi4][ Using the PiMoroni Fan Shim on LibreElec including the LEDs!

I recently bought a brand new Raspberry Pi 4, and wanted to try Kodi on it. There is only one Kodi-distribution which has more or less decent support for RPi 4 at the moment, and that's LibreElec (although still Alpha). Since the RPi 4 is famously overheating and throttling without a fan or at least a heatsink, I got a PiMoroni Fan Shim. Nice piece of hardware, but their library cannot run on LibreElec, because they do not support installing python libraries through pip etc... On LibreElec, the whole rootfs is a read-only squashfs image. So there's no way you can install the Pimoroni python library on LibreElec, but I found an alternative: I found Phil Randal's blog at  http://www.philrandal.co.uk/blog/archives/2019/07/entry_214.html , where he described how to get at least the Fan portion of the Fan Shim working on LibreElec. I decided to build on that, and port the LED functionality to LibreElec as well, without the need for "pip install" or a...

Arch Linux: Fixing empty/blank windows for graphical applications that require root

When running applications such as "unetbootin" or "tuxboot", you might get a blank window, instead of the actual application. Even when running it through "gksudo", or having a decent polkit running (e.g. inside Gnome). E.g.: This is because these application use MIT_SHM (Shared memory), which for some reason does not work when running graphical applications as root, while being logged in as a regular user in X. The solution is to disable MIT_SHM. E.g.: $ sudo QT_X11_NO_MITSHM=1 tuxboot

Nice Spectrum Analyser... but does it run DOOM?

There's been quite some talk about the excellent Siglent SS 3021X Spectrum Analyser. It's a great piece of entry-level hardware, especially for the pricepoint. See: https://www.siglent.eu/siglent-ssa3021x-spectrum-analyser.html and: EEVblog's review/comparison: https://www.youtube.com/watch?v=gkLciTsjGZg It's also quite hackable: https://iw0ffk.wordpress.com/2017/01/29/hacking-the-spectrum-analyzer-siglent-ssa-3021x/ You can login over telnet using: root/ding1234 as login/password. ' dmesg ', ' cat /proc/cpuinfo ' and friends tell a lot about this device. It seems it's based on an am335x chipset from TI. http://www.ti.com/processors/sitara/arm-cortex-a8/am335x/overview.html The framebuffer is accesible throught /dev/fb0 Mmm.. let's run DOOM on this thing! Fetch the same toolchain Siglent used to compile software for this spectrum analyser: https://releases.linaro.org/archive/13.03/components/toolchain/binaries/ Compile my m...