Welcome to mirror list, hosted at ThFree Co, Russian Federation.

core.proto « images - github.com/checkpoint-restore/criu.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: bc8b7a48850aa76b43ef0eed19e9303ed4462254 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
// SPDX-License-Identifier: MIT

syntax = "proto2";

import "core-x86.proto";
import "core-arm.proto";
import "core-aarch64.proto";
import "core-ppc64.proto";
import "core-s390.proto";
import "core-mips.proto";

import "rlimit.proto";
import "timer.proto";
import "creds.proto";
import "sa.proto";
import "siginfo.proto";
import "rseq.proto";

import "opts.proto";

/*
 * These match the SECCOMP_MODE_* flags from <linux/seccomp.h>.
 */
enum seccomp_mode {
	disabled	= 0;
	strict		= 1;
	filter		= 2;
};

message task_core_entry {
	required uint32			task_state	= 1 [(criu).dict = "gen"];
	required uint32			exit_code	= 2;

	required uint32			personality	= 3;
	required uint32			flags		= 4;
	required uint64			blk_sigset	= 5[(criu).hex = true];

	required string			comm		= 6;

	optional task_timers_entry	timers		= 7;
	optional task_rlimits_entry	rlimits		= 8;

	/* This is deprecated, should be per-thread */
	optional uint32			cg_set		= 9;

	optional signal_queue_entry	signals_s	= 10;

	/* These two are deprecated, should be per-thread */
	optional seccomp_mode	old_seccomp_mode	= 11;
	optional uint32		old_seccomp_filter	= 12;

	optional uint32			loginuid	= 13;

	optional int32			oom_score_adj	= 14;
	repeated sa_entry		sigactions	= 15;
	// Reserved for tty inheritance
	//optional int32		tty_nr		= 16;
	//optional int32		tty_pgrp	= 17;

	optional bool			child_subreaper	= 18;
	// Reserved for container relative start time
	//optional uint64		start_time	= 19;
	optional uint64			blk_sigset_extended = 20[(criu).hex = true];

	optional uint32			stop_signo = 21;
}

message task_kobj_ids_entry {
	required uint32			vm_id		= 1;
	required uint32			files_id	= 2;
	required uint32			fs_id		= 3;
	required uint32			sighand_id	= 4;

	optional uint32			pid_ns_id	= 5;
	optional uint32			net_ns_id	= 6;
	optional uint32			ipc_ns_id	= 7;
	optional uint32			uts_ns_id	= 8;
	optional uint32			mnt_ns_id	= 9;
	optional uint32			user_ns_id	= 10;
	optional uint32			cgroup_ns_id	= 11;
	optional uint32			time_ns_id	= 12;
}

message thread_sas_entry {
	required uint64			ss_sp		= 1;
	required uint64			ss_size		= 2;
	required uint32			ss_flags	= 3;
}

message thread_core_entry {
	required uint64			futex_rla	= 1;
	required uint32			futex_rla_len	= 2;
	optional sint32			sched_nice	= 3;
	optional uint32			sched_policy	= 4;
	optional uint32			sched_prio	= 5;
	optional uint64			blk_sigset	= 6;
	optional thread_sas_entry	sas		= 7;
	optional uint32			pdeath_sig	= 8;

	optional signal_queue_entry	signals_p	= 9;
	optional creds_entry		creds		= 10;

	optional seccomp_mode		seccomp_mode	= 11;
	optional uint32			seccomp_filter	= 12;

	optional string			comm		= 13;
	optional uint64			blk_sigset_extended	= 14;
	optional rseq_entry		rseq_entry	= 15;
	required uint32			cg_set		= 16;
}

message task_rlimits_entry {
	repeated rlimit_entry		rlimits		= 1;
};

message core_entry {
	enum march {
		UNKNOWN		= 0;
		X86_64		= 1;
		ARM             = 2;
		AARCH64		= 3;
		PPC64		= 4;
		S390		= 5;
		MIPS		= 6;
	}

	required march			mtype		= 1;
	optional thread_info_x86	thread_info	= 2;
	optional thread_info_arm	ti_arm		= 6;
	optional thread_info_aarch64	ti_aarch64	= 8;
	optional thread_info_ppc64	ti_ppc64	= 9;
	optional thread_info_s390	ti_s390		= 10;
	optional thread_info_mips	ti_mips		= 11;

	optional task_core_entry	tc		= 3;
	optional task_kobj_ids_entry	ids		= 4;
	optional thread_core_entry	thread_core	= 5;
}