files: Move epoll into files image

Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
This commit is contained in:
Pavel Emelyanov 2017-06-30 14:00:26 +03:00
parent 8208e5a5ab
commit fe0b08ef4f
5 changed files with 14 additions and 5 deletions

View file

@ -258,8 +258,6 @@ static struct collect_image_info *cinfos[] = {
&pipe_cinfo,
&fifo_cinfo,
&unix_sk_cinfo,
&epoll_cinfo,
&epoll_tfd_cinfo,
&signalfd_cinfo,
&inotify_cinfo,
&inotify_mark_cinfo,
@ -279,6 +277,8 @@ static struct collect_image_info *cinfos_files[] = {
&packet_sk_cinfo,
&netlink_sk_cinfo,
&eventfd_cinfo,
&epoll_cinfo,
&epoll_tfd_cinfo,
};
/* These images are requered to restore namespaces */

View file

@ -53,6 +53,7 @@ static void pr_info_eventpoll(char *action, EventpollFileEntry *e)
static int dump_one_eventpoll(int lfd, u32 id, const struct fd_parms *p)
{
FileEntry fe = FILE_ENTRY__INIT;
EventpollFileEntry e = EVENTPOLL_FILE_ENTRY__INIT;
int i, ret = -1;
@ -63,9 +64,12 @@ static int dump_one_eventpoll(int lfd, u32 id, const struct fd_parms *p)
if (parse_fdinfo(lfd, FD_TYPES__EVENTPOLL, &e))
goto out;
fe.type = FD_TYPES__EVENTPOLL;
fe.id = e.id;
fe.epfd = &e;
pr_info_eventpoll("Dumping ", &e);
ret = pb_write_one(img_from_set(glob_imgset, CR_FD_EVENTPOLL_FILE),
&e, PB_EVENTPOLL_FILE);
ret = pb_write_one(img_from_set(glob_imgset, CR_FD_FILES), &fe, PB_FILE);
out:
for (i = 0; i < e.n_tfd; i++) {
if (!ret)

View file

@ -1704,6 +1704,9 @@ static int collect_one_file(void *o, ProtobufCMessage *base, struct cr_img *i)
case FD_TYPES__EVENTFD:
ret = collect_one_file_entry(fe, fe->efd->id, &fe->efd->base, &eventfd_cinfo);
break;
case FD_TYPES__EVENTPOLL:
ret = collect_one_file_entry(fe, fe->epfd->id, &fe->epfd->base, &epoll_cinfo);
break;
}
return ret;

View file

@ -66,7 +66,6 @@ enum {
CR_FD_TTY_INFO,
CR_FD_TTY_DATA,
CR_FD_REMAP_FPATH,
CR_FD_EVENTPOLL_FILE,
CR_FD_SIGNALFD,
CR_FD_INOTIFY_FILE,
CR_FD_FANOTIFY_FILE,
@ -106,6 +105,7 @@ enum {
CR_FD_PACKETSK,
CR_FD_NETLINK_SK,
CR_FD_EVENTFD_FILE,
CR_FD_EVENTPOLL_FILE,
CR_FD_AUTOFS,

View file

@ -6,6 +6,7 @@ import "ns.proto";
import "packet-sock.proto";
import "sk-netlink.proto";
import "eventfd.proto";
import "eventpoll.proto";
enum fd_types {
UND = 0;
@ -44,4 +45,5 @@ message file_entry {
optional packet_sock_entry psk = 6;
optional netlink_sk_entry nlsk = 7;
optional eventfd_file_entry efd = 8;
optional eventpoll_file_entry epfd = 9;
}