Generic System for Safe Rootfs/Kernel Upgrades without Single-Point of Failure
Channel: The Linux Foundation
Date: 04/04/2017

Generic System for Safe Rootfs/Kernel Upgrades without Single-Point of Failure - Andreas Fenkart, digitalSTROM

The possibility of powerfail is the threat that puts thrill into FW upgrades. This talk will present a minimal kexec/initramfs system that solves the problems of fetching, verification(crypto) and actual upgrade in a machine/product agnostic way. In case of failure the system will retry, in the worst case fetch a default image from a known location. At no point a single failure will cause the loss of the device.

All major code paths are covered by unit tests. It works on legacy systems where space is scarce and the upgrade has to be streamed via https. Flashing time in the factory can be reduced by parallelizing easily. We also propose safe kernel upgrades by using drop-in-files based on the freedesktop boot loader spec. We learned to love that system to fine regressions during beta testing. Kernel up-/downgrades can be safely performed by anybody who knows to rename a file.

About Andreas Fenkart

I am an embedded software engineer and work as an application programmer for digitalSTROM. I also help with the BSP and maintain our delta against Linux kernel. I contributed to Linux drivers (omap_hsmmc/mwifiex) and prepared Linux for custom ARM boards (board startup).