mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-24 19:08:11 +00:00
This patch introduces ThreadCoreEntry protobuf structure which is to carry thread-specific arch-independent information. Now put there the c/r futex robust lists. Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
87 lines
2.1 KiB
Protocol Buffer
87 lines
2.1 KiB
Protocol Buffer
message user_x86_regs_entry {
|
|
required uint64 r15 = 1;
|
|
required uint64 r14 = 2;
|
|
required uint64 r13 = 3;
|
|
required uint64 r12 = 4;
|
|
required uint64 bp = 5;
|
|
required uint64 bx = 6;
|
|
required uint64 r11 = 7;
|
|
required uint64 r10 = 8;
|
|
required uint64 r9 = 9;
|
|
required uint64 r8 = 10;
|
|
required uint64 ax = 11;
|
|
required uint64 cx = 12;
|
|
required uint64 dx = 13;
|
|
required uint64 si = 14;
|
|
required uint64 di = 15;
|
|
required uint64 orig_ax = 16;
|
|
required uint64 ip = 17;
|
|
required uint64 cs = 18;
|
|
required uint64 flags = 19;
|
|
required uint64 sp = 20;
|
|
required uint64 ss = 21;
|
|
required uint64 fs_base = 22;
|
|
required uint64 gs_base = 23;
|
|
required uint64 ds = 24;
|
|
required uint64 es = 25;
|
|
required uint64 fs = 26;
|
|
required uint64 gs = 27;
|
|
}
|
|
|
|
message user_x86_fpregs_entry {
|
|
required uint32 cwd = 1;
|
|
required uint32 swd = 2;
|
|
required uint32 twd = 3;
|
|
required uint32 fop = 4;
|
|
required uint64 rip = 5;
|
|
required uint64 rdp = 6;
|
|
required uint32 mxcsr = 7;
|
|
required uint32 mxcsr_mask = 8;
|
|
repeated uint32 st_space = 9;
|
|
repeated uint32 xmm_space = 10;
|
|
repeated uint32 padding = 11;
|
|
}
|
|
|
|
message task_core_entry {
|
|
required uint32 task_state = 1;
|
|
required uint32 exit_code = 2;
|
|
|
|
required uint32 personality = 3;
|
|
required uint32 flags = 4;
|
|
required uint64 blk_sigset = 5;
|
|
|
|
required string comm = 6;
|
|
}
|
|
|
|
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;
|
|
}
|
|
|
|
message thread_info_x86 {
|
|
required uint64 clear_tid_addr = 1;
|
|
required user_x86_regs_entry gpregs = 2;
|
|
required user_x86_fpregs_entry fpregs = 3;
|
|
}
|
|
|
|
message thread_core_entry {
|
|
required uint64 futex_rla = 1;
|
|
required uint32 futex_rla_len = 2;
|
|
}
|
|
|
|
message core_entry {
|
|
enum march {
|
|
UNKNOWN = 0;
|
|
X86_64 = 1;
|
|
}
|
|
|
|
required march mtype = 1;
|
|
optional thread_info_x86 thread_info = 2;
|
|
|
|
optional task_core_entry tc = 3;
|
|
optional task_kobj_ids_entry ids = 4;
|
|
optional thread_core_entry thread_core = 5;
|
|
}
|