[CRIU] [PATCH] fsmptify: Filter out internal inotify bits when restoring marks
Cyrill Gorcunov
gorcunov at gmail.com
Tue Sep 22 06:36:28 PDT 2015
On Tue, Sep 22, 2015 at 04:15:43PM +0300, Andrew Vagin wrote:
> > >
> > > I think we need only exclude FS_EVENT_ON_CHILD. Otherwise we will skip a
> > > new flags, when they will add into the kernel.
> >
> > New flags are gonna be defined in uapi/ as well so criu is depending on which
>
> If you will exclude only FS_EVENT_ON_CHILD, the code will work for all
> kernel. The current version depends on IN_ALL_EVENTS, which can be
> changed in the next kernel.
You miss the point. It was a bug in the kernel that it has been exporting
internal bit into userspace. The kernel has _all_ rights to
#define IN_SOME_NEW_BIT 0x08000000
and export it into userspace as a valid one which would serve some
new purpose and meaning. So we simply can't rip it off. That's
why I propose to mask it with IN_ALL_EVENTS which is a part of
userspace.
Another option -- don't modify criu at all but rip off the
FS_EVENT_ON_CHILD in the test itself? As far as I understand
the main problem is the tests are failing since the kernel
masks the agrumens passing in with IN_ALL_EVENTS internally.
More information about the CRIU
mailing list