Added - Added metric for throttled block device events. - Added metrics for counting rate limiter throttling events. - Added metric for counting MAC address updates. - Added metrics for counting TAP read and write errors. - Added metrics for counting RX and TX partial writes. - Added metrics that measure the duration of pausing and resuming the microVM, from the VMM perspective. - Added metric for measuring the duration of the last full snapshot created, from the VMM perspective. - Added metric for measuring the duration of loading a snapshot, from the VMM perspective. - Added metrics that measure the duration of pausing and resuming the microVM, from the API (user) perspective. - Added metric for measuring the duration of the last full snapshot created, from the API (user) perspective. - Added metric for measuring the duration of loading a snapshot, from the API (user) perspective. - Added `track_dirty_pages` field to `machine-config`. If enabled, Firecracker can create incremental guest memory snapshots by saving the dirty guest pages in a sparse file. - Added a new API call, `PATCH /vm`, for changing the microVM state (to `Paused` or `Resumed`). - Added a new API call, `PUT /snapshot/create`, for creating a full snapshot. - Added a new API call, `PUT /snapshot/load`, for loading a snapshot. - Added new jailer command line argument `--cgroup` which allow the user to specify the cgroups that are going to be set by the Jailer. - Added full support for AMD CPUs (General Availability). More details [here](README.md#supported-platforms). Fixed - Boot time on AMD achieves the desired performance (i.e under 150ms). Changed - The logger `level` field is now case-insensitive. - Disabled boot timer device after restoring a snapshot. - Enabled boot timer device only when specifically requested, by using the `--boot-timer` dedicated cmdline parameter. - firecracker and jailer `--version` now gets updated on each devtool build to the output of `git describe --dirty`, if the git repo is available. - MicroVM process is only attached to the cgroups defined by using `--cgroups` or the ones defined indirectly by using `--node`.