[CRIU] [PATCH 1/7] Adding --pre-dump-mode option
Dmitry Safonov
0x7f454c46 at gmail.com
Wed Aug 28 19:44:24 MSK 2019
Hi Abhishek,
Thanks for doing this work,
On 8/25/19 2:58 AM, Abhishek Dubey wrote:
[..]
> +*--pre-dump-mode*='mode'::
> + There are two 'mode' to operate pre-dump algorithm. The 'splice' mode
> + is parasite based, whereas 'read' mode is based on process_vm_readv
> + syscall. The 'read' mode incurs reduced frozen time and reduced
> + memory pressure as compared to 'splice' mode. Default is 'splice' mode.
> +
It seems from the code that it's safe to do:
pre-dump-1: splice-based
pre-dump-2: read-based
...
Could you add in doc that it's safe to mix those modes?
Also, could you add a zdtm.py launch with this mode to cover it with
Travis-CI? I think, the proper place would be in:
scripts/travis/travis-tests
And another line that will run "mixed" old-new predumps.
That will make sure that further improvements don't break your work on
new pre-dump mechanism.
[..]
> /*
> + * Pre-dump variants
> + */
> +#define PRE_DUMP_SPLICE 1 /* Pre-dump using parasite */
> +#define PRE_DUMP_READ 2 /* Pre-dump using process_vm_readv syscall */
> +
> +/*
> * Cgroup management options.
> */
> #define CG_MODE_IGNORE (0u << 0) /* Zero is important here */
> @@ -81,6 +87,7 @@ struct cr_options {
> int evasive_devices;
> int link_remap_ok;
> int log_file_per_pid;
> + int pre_dump_mode;
Minor stilistic nit: Could we make it enum?
enum pre_dump_mode {
PRE_DUMP_MODE_SPLICE = 0,
PRE_DUMP_MODE_READ,
};
Might be my preference, so not insisting.
Thanks,
Dmitry
More information about the CRIU
mailing list