From b44eaddb2957ce51db41e2b846df4e44c90b1ade Mon Sep 17 00:00:00 2001 From: Cyrill Gorcunov Date: Thu, 30 Aug 2018 14:00:27 +0300 Subject: [PATCH] x86: cpu -- Require compatibility on instruction level by default For a long time we've been demanding from cpus to be compatible on fpu frame level, but growing list of cpu features triggers inability for restored programs to proceed after restore due to specific intructions execution (such as avx2). Note the fpu frame may carry same size but not on instruction level where SIGILL may happen after the restore. Thus lets require instruction mode to be set and verified by default. Still one can drop this option via command line or rpc request. Signed-off-by: Cyrill Gorcunov Reviewed-by: Dmitry Safonov <0x7f454c46@gmail.com> Signed-off-by: Andrei Vagin --- Documentation/criu.txt | 2 +- criu/include/cr_options.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/criu.txt b/Documentation/criu.txt index 4fc623b20..003d748ce 100644 --- a/Documentation/criu.txt +++ b/Documentation/criu.txt @@ -322,7 +322,7 @@ For example, the command line for the above example should look like this: - *all* for all above set. + -By default the option is set to the combination of *fpu* and *cpu*. +By default the option is set to *fpu* and *ins*. *--cgroup-root* ['controller':]/'newroot':: Change the root for the controller that will be dumped. By default, *criu* diff --git a/criu/include/cr_options.h b/criu/include/cr_options.h index 92a2d364d..c722e3ae2 100644 --- a/criu/include/cr_options.h +++ b/criu/include/cr_options.h @@ -30,7 +30,7 @@ #define CPU_CAP_INS (1u << 2) /* Instructions CPU capability */ #define CPU_CAP_IMAGE (1u << 3) /* Write capability on dump and read on restore*/ #define CPU_CAP_ALL (CPU_CAP_FPU | CPU_CAP_CPU | CPU_CAP_INS) -#define CPU_CAP_DEFAULT (CPU_CAP_FPU | CPU_CAP_CPU) +#define CPU_CAP_DEFAULT (CPU_CAP_FPU | CPU_CAP_INS) struct cg_root_opt { struct list_head node;