File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff 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
You can’t perform that action at this time.
0 commit comments