[CRIU] [PATCH] mount: validate mounts only once on dump (v2)

Pavel Emelyanov xemul at parallels.com
Fri Sep 12 05:33:56 PDT 2014


On 09/12/2014 04:24 PM, Andrey Vagin wrote:
> mntinfo contains mounts from all namespaces, so we can validate it only
> once after collecting mounts.
> 
> v2: add a comment

What comment??

> Signed-off-by: Andrey Vagin <avagin at openvz.org>
> ---
>  mount.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/mount.c b/mount.c
> index 5e23e9d..bf27052 100644
> --- a/mount.c
> +++ b/mount.c
> @@ -992,9 +992,6 @@ static int dump_mnt_ns(struct ns_id *ns, struct mount_info *pms)
>  	int img_fd = -1, ret = -1;
>  	int ns_id = ns->id;
>  
> -	if (validate_mounts(pms, true))
> -		goto err;
> -
>  	pr_info("Dumping mountpoints\n");
>  	img_fd = open_image(CR_FD_MNTS, O_DUMP, ns_id);
>  	if (img_fd < 0)
> @@ -2095,8 +2092,8 @@ static int walk_mnt_ns(int (*cb)(struct ns_id *, struct mount_info *, void *), v
>  				if (mntinfo == NULL)
>  					goto err;
>  			}
> -
> -			continue;
> +			/* We are not going to dump this tree, so we skip validation */
> +			goto out;
>  		}
>  
>  		pr_info("Dump MNT namespace (mountpoints) %d via %d\n", ns->id, ns->pid);
> @@ -2111,6 +2108,9 @@ static int walk_mnt_ns(int (*cb)(struct ns_id *, struct mount_info *, void *), v
>  	}
>  	if (collect_shared(mntinfo))
>  		goto err;
> +	if (validate_mounts(mntinfo, true))
> +		goto err;
> +out:
>  	ret = 0;
>  err:
>  	return ret;
> 



More information about the CRIU mailing list