summaryrefslogtreecommitdiff
path: root/linker/linker.cpp
diff options
context:
space:
mode:
authorEvgenii Stepanov <eugenis@google.com>2020-07-06 22:18:45 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2020-07-06 22:18:45 +0000
commitb5f301eaafdc23f05fe5558fb0406a0ab04fc807 (patch)
treee24d261c90573eb0bc9fc4a83d44d89461b7dc19 /linker/linker.cpp
parent9963adb9755c71dbf5b6d2df2e40febecf73db58 (diff)
parent474f2f5c8b5dbc23ee7b5542ac6df47016efe1c3 (diff)
Merge "Revert "Add randomized padding around shared library mappings.""
Diffstat (limited to 'linker/linker.cpp')
-rw-r--r--linker/linker.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/linker/linker.cpp b/linker/linker.cpp
index e5450c7b9..10608f46f 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -301,14 +301,13 @@ static void soinfo_free(soinfo* si) {
return;
}
- void* start = reinterpret_cast<void*>(si->has_min_version(6) ? si->get_map_start() : si->base);
- size_t size = si->has_min_version(6) ? si->get_map_size() : si->size;
- if (start != nullptr && size != 0) {
+ if (si->base != 0 && si->size != 0) {
if (!si->is_mapped_by_caller()) {
- munmap(start, size);
+ munmap(reinterpret_cast<void*>(si->base), si->size);
} else {
// remap the region as PROT_NONE, MAP_ANONYMOUS | MAP_NORESERVE
- mmap(start, size, PROT_NONE, MAP_FIXED | MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0);
+ mmap(reinterpret_cast<void*>(si->base), si->size, PROT_NONE,
+ MAP_FIXED | MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0);
}
}
@@ -600,8 +599,6 @@ class LoadTask {
si_->load_bias = elf_reader.load_bias();
si_->phnum = elf_reader.phdr_count();
si_->phdr = elf_reader.loaded_phdr();
- si_->set_map_start(elf_reader.map_start());
- si_->set_map_size(elf_reader.map_size());
return true;
}