Automating source code evolutions using Coccinelle

New APIs are continually added to the Linux kernel, to improve functionality, reliability, or performance.  Nevertheless, it is a challenge to update old code to use these new APIs.  Coccinelle is a program matching and transformation tool for C code that has been...

Crosstool-ng A cross-toolchain generator

A toolchain is an essential component in a software development project. It will compile, assemble and link the code that is being  developed, and thus is a very sensitive piece of any build system. Toolchains are made of different, complex pieces of software,...

Deciphering Oopsies How to debug kernel oops

The Linux kernel is a very complex beast living in millions of households and data centers around the world. Normally, you’re not supposed to notice its presence but when it gets cranky because of something not suiting it, it spits crazy messages called colloquially...