diff --git a/restorer.c b/restorer.c index 4e2bba700..5154ee2fc 100644 --- a/restorer.c +++ b/restorer.c @@ -220,18 +220,6 @@ self_len_end: if (final_vma_entry(vma_entry)) break; - if (vma_entry_is(vma_entry, VMA_AREA_VDSO)) { - ret = sys_prctl(PR_SETUP_VDSO_AT, vma_entry->start, - 0, 0, 0); - if (ret) { - write_num_n(__LINE__); - write_hex_n(vma_entry->start); - write_num_n(ret); - goto core_restore_end; - } - continue; - } - if (!vma_entry_is(vma_entry, VMA_AREA_REGULAR)) continue; diff --git a/util.c b/util.c index 93150599c..fae11ad54 100644 --- a/util.c +++ b/util.c @@ -322,7 +322,7 @@ int parse_maps(pid_t pid, struct list_head *vma_area_list, bool use_map_files) } else if (strstr(big_buffer, "[vsyscall]")) { vma_area->vma.status |= VMA_AREA_VSYSCALL; } else if (strstr(big_buffer, "[vdso]")) { - vma_area->vma.status |= VMA_AREA_VDSO; + vma_area->vma.status |= VMA_AREA_REGULAR | VMA_AREA_VDSO; } else if (strstr(big_buffer, "[heap]")) { vma_area->vma.status |= VMA_AREA_REGULAR | VMA_AREA_HEAP; } else {