summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/link_elf.c2
-rw-r--r--sys/kern/link_elf_obj.c2
2 files changed, 0 insertions, 4 deletions
diff --git a/sys/kern/link_elf.c b/sys/kern/link_elf.c
index 5679cbf..db3de57 100644
--- a/sys/kern/link_elf.c
+++ b/sys/kern/link_elf.c
@@ -704,7 +704,6 @@ link_elf_load_file(linker_class_t cls, const char* filename,
error = ENOMEM;
goto out;
}
- vm_object_reference(ef->object);
ef->address = (caddr_t) vm_map_min(kernel_map);
error = vm_map_find(kernel_map, ef->object, 0,
(vm_offset_t *) &ef->address,
@@ -884,7 +883,6 @@ link_elf_unload_file(linker_file_t file)
vm_map_remove(kernel_map, (vm_offset_t) ef->address,
(vm_offset_t) ef->address
+ (ef->object->size << PAGE_SHIFT));
- vm_object_deallocate(ef->object);
}
#else
if (ef->address)
diff --git a/sys/kern/link_elf_obj.c b/sys/kern/link_elf_obj.c
index ad4ea35..da3ea77 100644
--- a/sys/kern/link_elf_obj.c
+++ b/sys/kern/link_elf_obj.c
@@ -640,7 +640,6 @@ link_elf_load_file(linker_class_t cls, const char *filename,
error = ENOMEM;
goto out;
}
- vm_object_reference(ef->object);
ef->address = (caddr_t) vm_map_min(kernel_map);
error = vm_map_find(kernel_map, ef->object, 0, &mapbase,
round_page(mapsize), TRUE, VM_PROT_ALL, VM_PROT_ALL, FALSE);
@@ -828,7 +827,6 @@ link_elf_unload_file(linker_file_t file)
vm_map_remove(kernel_map, (vm_offset_t) ef->address,
(vm_offset_t) ef->address +
(ef->object->size << PAGE_SHIFT));
- vm_object_deallocate(ef->object);
}
if (ef->e_shdr)
free(ef->e_shdr, M_LINKER);
OpenPOWER on IntegriCloud