[CRIU] [PATCH] autofs: use temporary value for virtual pgrp on dump
Pavel Emelyanov
xemul at virtuozzo.com
Fri Apr 22 06:34:21 PDT 2016
On 04/20/2016 07:31 PM, Stanislav Kinsburskiy wrote:
> Otherwise information about real pid is lost in case of pid_to_virt returned
> zero.
But if pid_to_virt returns zero, the autofs_create_entry returns -1 and dump
gets aborted, so why do we care?
> Signed-off-by: Stanislav Kinsburskiy <skinsbursky at virtuozzo.com>
> ---
> criu/autofs.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/criu/autofs.c b/criu/autofs.c
> index 8befc62..816a386 100644
> --- a/criu/autofs.c
> +++ b/criu/autofs.c
> @@ -290,7 +290,7 @@ static int autofs_create_entry(struct mount_info *pm, AutofsEntry *entry)
> entry->has_gid = true;
>
> if (entry->fd != AUTOFS_CATATONIC_FD) {
> - int found, read_fd;
> + int found, read_fd, virt_pgrp;
>
> read_fd = autofs_find_read_fd(entry->pgrp, pipe_ino);
> if (read_fd < 0)
> @@ -310,13 +310,14 @@ static int autofs_create_entry(struct mount_info *pm, AutofsEntry *entry)
> }
>
> /* We need to get virtual pgrp to restore mount */
> - entry->pgrp = pid_to_virt(entry->pgrp);
> - if (!entry->pgrp) {
> + virt_pgrp = pid_to_virt(entry->pgrp);
> + if (!virt_pgrp) {
> pr_err("failed to find pstree item with pid %d\n",
> entry->pgrp);
> pr_err("Non-catatonic mount without master?\n");
> return -1;
> }
> + entry->pgrp = virt_pgrp;
> }
> return 0;
> }
>
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> https://lists.openvz.org/mailman/listinfo/criu
> .
>
More information about the CRIU
mailing list