Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why didn't it work before? That's because
busybox
expects you will be using theirinit
with theirshutdown
andreboot
. The utilities only signalinit
about the need to shutdown or reboot.This
hardshutdown
is based on the one found in thebusybox
tree, but enhanced to use theRESTART2
type of syscall, allowing "reasons" to be given for the reboot.In turn, those "reasons" are used by the platform, here I'm assuming an android-based device, to "do stuff". With most (all?) android devices you can directly reboot to bootloader using this "reason" by using
reboot bootloader
.It may be possible to reboot to recovery using
reboot recovery
, but this has not been tested successfully on two devices.Note: the
reboot
command fromsystemd
already supports passing a reason to the syscall, so fromstage-2
it already was possible to do this.