Skip to content

Commit 2b0bc4a

Browse files
milantracygvisor-bot
authored andcommitted
Add document for C/R wiht different CPU features.
PiperOrigin-RevId: 822233186
1 parent 1450bd8 commit 2b0bc4a

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

g3doc/user_guide/checkpoint_restore.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,5 +88,29 @@ docker start --checkpoint <checkpoint-name> <container-name>
8888
`--checkpoint-dir` flag but this will be required when restoring from a
8989
checkpoint made in another container.
9090

91+
## Checkpoint & Restore with different CPU features
92+
93+
When restoring a state file, gVisor verifies that the target host machine
94+
possesses all the CPU features enabled on the machine where the checkpoint
95+
snapshot was created.
96+
97+
gVisor allows users to specify a list of *allowed* CPU features using the
98+
annotation `dev.gvisor.internal.cpufeatures`. Only the host CPU features present
99+
in this annotation list will be enabled. By doing this, users are able to
100+
stabilize the list of CPU features that will be exposed to applications in the
101+
sandbox, which makes it possible to checkpoint and restore among machines with
102+
different set of CPU features.
103+
104+
CPU features in the annotation should be comma-separated. A comprehensive list
105+
of all supported CPU features can be found
106+
[here](https://github.com/google/gvisor/blob/61f4c77225e1f5128cad8982f3af0d4278494bd4/pkg/cpuid/features_amd64.go#L457).
107+
108+
The runsc command `runsc cpu-features` lists all CPU features on the current
109+
machine.
110+
111+
### Limitation
112+
113+
It is not supported on the arm64 architecture.
114+
91115
[leave-running]: https://github.com/moby/moby/pull/37360
92116
[checkpoint-dir]: https://github.com/moby/moby/issues/37344

0 commit comments

Comments
 (0)