diff --git a/criu/include/pstree.h b/criu/include/pstree.h index 55615fffc..880c926ad 100644 --- a/criu/include/pstree.h +++ b/criu/include/pstree.h @@ -2,6 +2,7 @@ #define __CR_PSTREE_H__ #include "common/list.h" +#include "common/lock.h" #include "pid.h" #include "images/core.pb-c.h" @@ -24,8 +25,14 @@ struct pstree_item { struct pid *threads; /* array of threads */ CoreEntry **core; TaskKobjIdsEntry *ids; + futex_t task_st; }; +enum { + FDS_EVENT_BIT = 0, +}; +#define FDS_EVENT (1 << FDS_EVENT_BIT) + struct pstree_item *current; struct rst_info; diff --git a/criu/pstree.c b/criu/pstree.c index 7d57d09ab..4711ff948 100644 --- a/criu/pstree.c +++ b/criu/pstree.c @@ -219,6 +219,7 @@ struct pstree_item *__alloc_pstree_item(bool rst) item->pid->real = -1; item->born_sid = -1; item->pid->item = item; + futex_init(&item->task_st); return item; }