Re: [RFC] fs,eventpoll: Add ability to install target file by its number

From: Andrew Morton
Date: Wed Feb 15 2017 - 15:33:15 EST


On Wed, 15 Feb 2017 19:14:54 +0300 Cyrill Gorcunov <gorcunov@xxxxxxxxx> wrote:

> When we checkpoint a process we look into /proc/<pid>/fdinfo/<fd> of eventpoll
> file and parse target files list from there. In most situations this is fine
> because target file is present in the /proc/<pid>/fd/ list. But in case if file
> descriptor was dup'ed or transferred via unix socket and closed after,
> it might not be in the list and we can't figure out which file descriptor
> to pass into epoll_ctl call.
>
> To resolve this tie lets add EPOLL_CTL_ITF ("itf" stands for install
> target file) operation which simply takes target file descriptor number
> and installs it into a caller's file table, thus we can use kcmp()
> syscall and figure out which exactly file to be added into
> eventpoll on restore procedure.

Can we please see the proposed manpage update. And Cc linux-api and
Michael Kerrisk.

> --- linux-ml.git.orig/include/uapi/linux/eventpoll.h
> +++ linux-ml.git/include/uapi/linux/eventpoll.h
> @@ -25,6 +25,7 @@
> #define EPOLL_CTL_ADD 1
> #define EPOLL_CTL_DEL 2
> #define EPOLL_CTL_MOD 3
> +#define EPOLL_CTL_ITF 4

Somewhere we should tell the poor reader what "itf" means. A comment
here would suit.