diff --git a/criu/include/parasite-vdso.h b/criu/include/parasite-vdso.h index efb282a60..8f7aaf9e0 100644 --- a/criu/include/parasite-vdso.h +++ b/criu/include/parasite-vdso.h @@ -81,7 +81,7 @@ static inline bool is_vdso_mark(void *addr) extern int vdso_do_park(struct vdso_symtable *sym_rt, unsigned long park_at, unsigned long park_size); extern int vdso_map_compat(unsigned long map_at); -extern int vdso_proxify(char *who, struct vdso_symtable *sym_rt, +extern int vdso_proxify(struct vdso_symtable *sym_rt, unsigned long vdso_rt_parked_at, size_t index, VmaEntry *vmas, size_t nr_vmas, bool compat_vdso); diff --git a/criu/pie/parasite-vdso.c b/criu/pie/parasite-vdso.c index df1a985ea..e55c23a07 100644 --- a/criu/pie/parasite-vdso.c +++ b/criu/pie/parasite-vdso.c @@ -103,7 +103,7 @@ int __vdso_fill_symtable(uintptr_t mem, size_t size, } #endif -int vdso_proxify(char *who, struct vdso_symtable *sym_rt, +int vdso_proxify(struct vdso_symtable *sym_rt, unsigned long vdso_rt_parked_at, size_t index, VmaEntry *vmas, size_t nr_vmas, bool compat_vdso) { @@ -197,14 +197,14 @@ int vdso_proxify(char *who, struct vdso_symtable *sym_rt, if (sys_munmap((void *)(uintptr_t)vma_vdso->start, vma_entry_len(vma_vdso))) { - pr_err("Failed to unmap %s\n", who); + pr_err("Failed to unmap dumpee\n"); return -1; } if (vma_vvar) { if (sys_munmap((void *)(uintptr_t)vma_vvar->start, vma_entry_len(vma_vvar))) { - pr_err("Failed to unmap %s\n", who); + pr_err("Failed to unmap dumpee\n"); return -1; } diff --git a/criu/pie/restorer.c b/criu/pie/restorer.c index ccf9dabe5..9ead57199 100644 --- a/criu/pie/restorer.c +++ b/criu/pie/restorer.c @@ -1188,7 +1188,7 @@ long __export_restore_task(struct task_restore_args *args) for (i = 0; i < args->vmas_n; i++) { if (vma_entry_is(&args->vmas[i], VMA_AREA_VDSO) || vma_entry_is(&args->vmas[i], VMA_AREA_VVAR)) { - if (vdso_proxify("dumpee", &args->vdso_sym_rt, + if (vdso_proxify(&args->vdso_sym_rt, args->vdso_rt_parked_at, i, args->vmas, args->vmas_n, args->compatible_mode))