The Amazon Linux hibernation agent.
The purpose of this agent is to create a setup for an instance to support hibernation feature. The setup is created only on supported instance types. This agent does several things:
- Upon startup it checks for sufficient swap space to allow hibernate and fails if it's present but there's not enough of it.
- If there's no swap space, it launches a background thread to create it and touch all of its blocks to make sure that EBS volumes are pre-warmed if configured.This is configurable.
- It updates the offset of the swap file in the kernel using SNAPSHOT_SET_SWAP_AREA ioctl.
- It updates the resume offset and resume device in grub file.