[CRIU] [PATCH v2] filemap: collect mapped file fs type

Andrew Vagin avagin at virtuozzo.com
Fri Jul 29 10:40:28 PDT 2016


On Fri, Jul 29, 2016 at 11:33:43AM +0200, Stanislav Kinsburskiy wrote:
> 
> 
> 29.07.2016 04:37, Andrew Vagin пишет:
> > On Thu, Jul 28, 2016 at 12:06:41PM +0300, Stanislav Kinsburskiy wrote:
> > > This is essential to define whether this file is located on NFS (and thus has
> > > to be "link-remapped") or not (see nfs_silly_renamed).
> > > 
> > > v2:
> > > Compilation issue fixed
> > > 
> > > Signed-off-by: Stanislav Kinsburskiy <skinsbursky at virtuozzo.com>
> > > ---
> > >   criu/cr-dump.c |    8 ++++++++
> > >   1 file changed, 8 insertions(+)
> > > 
> > > diff --git a/criu/cr-dump.c b/criu/cr-dump.c
> > > index 06ff2d7..2288908 100644
> > > --- a/criu/cr-dump.c
> > > +++ b/criu/cr-dump.c
> > > @@ -365,12 +365,20 @@ static int dump_filemap(struct vma_area *vma_area, int fd)
> > >   	struct fd_parms p = FD_PARMS_INIT;
> > >   	VmaEntry *vma = vma_area->e;
> > >   	int ret = 0;
> > > +	struct statfs fst;
> > >   	u32 id;
> > >   	BUG_ON(!vma_area->vmst);
> > >   	p.stat = *vma_area->vmst;
> > >   	p.mnt_id = vma_area->mnt_id;
> > > +	if (fstatfs(fd, &fst)) {
> > > +		pr_perror("Unable to statfs fd %d", fd);
> > > +		return -1;
> > > +	}
> > > +
> > > +	p.fs_type = fst.f_type;
> > Can we get fs_type in handle_vma()? We get vmst and mnt_id there.
> 
> What do you mean?
> Call fstatfs in handle_vma() or use of mnt_id?
> And why we should do it in handle_vma?

There is an optimization when a previous vma and the current one use the
same file.


if (vma_area->file_borrowed) {
...
                vma_area->vmst = prev->vmst;
                vma_area->mnt_id = prev->mnt_id;
} else {
...
}

> 
> > > +
> > >   	/*
> > >   	 * AUFS support to compensate for the kernel bug
> > >   	 * exposing branch pathnames in map_files.
> > > 
> > > _______________________________________________
> > > CRIU mailing list
> > > CRIU at openvz.org
> > > https://lists.openvz.org/mailman/listinfo/criu
> 


More information about the CRIU mailing list