Add kexec-tools functionality to busybox


 * Summary: Add kexec-tools functionality to busybox


 * Proposer: Simon Horman

Description
This project was suggested to me by Magnus Damm who in turn suggested that I propose it here. I believe that he has already spoken about it with Tim Bird in person.

kexec-tools is the user-space portion of kexec. It is a not entirely small code-base with support for a wide range of architectures and features. For example, it includes support for kdump (kexec on panic) as well as regular run-in-place kexec. It seems that there is ample scope to create a trimmed down version of kexec-tools targeting the use of kexec with ROMs that use kexec as part of a boot loader.

The proposal is for an implementation in the form of an addition to busybox. A cortex v8 based ARM is the proposed initial target.

The existing kexec-tools code is licensed under the GPLv2, the same license as busybox, so it seems unlikely that there will be any licensing issues.

Related work

 * kexec-tools - http://kernel.org/pub/linux/utils/kernel/kexec/
 * kexec ML - http://lists.infradead.org/mailman/listinfo/kexec

Scope
I estimate that this will take about 6 weeks to bring up to a standard where it can be submitted for merging into busybox. I anticipate an actual merge would take some more time.

Contractor Candidates
As the maintainer of the existing kexec-tools code I feel well placed to implement this proposal. As such I would like to nominate myself to write this code.

Comments
Greg Ungerer writes: In every case where I use kexec in a linux-as-bootloader setup I also have busybox. (On the platforms where I do this there is generally a small amount of NOR flash (~4MB) for the boot loader, so a busybox user space is a must to keep it small).