Date: Thu, 17 Oct 2019 21:25:50 +0000 (UTC) From: Mark Johnston <markj@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r353699 - head/sys/kern Message-ID: <201910172125.x9HLPoKB065420@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: markj Date: Thu Oct 17 21:25:50 2019 New Revision: 353699 URL: https://svnweb.freebsd.org/changeset/base/353699 Log: Clean up some nits in link_elf_(un)load_file(). - Remove a redundant assignment of ef->address. - Don't return a Mach error number to the caller if vm_map_find() fails. - Use ptoa() and fix style. MFC after: 2 weeks Sponsored by: Netflix Modified: head/sys/kern/link_elf_obj.c Modified: head/sys/kern/link_elf_obj.c ============================================================================== --- head/sys/kern/link_elf_obj.c Thu Oct 17 20:46:33 2019 (r353698) +++ head/sys/kern/link_elf_obj.c Thu Oct 17 21:25:50 2019 (r353699) @@ -779,7 +779,6 @@ link_elf_load_file(linker_class_t cls, const char *fil error = ENOMEM; goto out; } - ef->address = (caddr_t) vm_map_min(kernel_map); /* * In order to satisfy amd64's architectural requirements on the @@ -794,9 +793,10 @@ link_elf_load_file(linker_class_t cls, const char *fil error = vm_map_find(kernel_map, ef->object, 0, &mapbase, round_page(mapsize), 0, VMFS_OPTIMAL_SPACE, VM_PROT_ALL, VM_PROT_ALL, 0); - if (error) { + if (error != KERN_SUCCESS) { vm_object_deallocate(ef->object); - ef->object = 0; + ef->object = NULL; + error = ENOMEM; goto out; } @@ -1084,11 +1084,9 @@ link_elf_unload_file(linker_file_t file) free(ef->relatab, M_LINKER); free(ef->progtab, M_LINKER); - if (ef->object) { - vm_map_remove(kernel_map, (vm_offset_t) ef->address, - (vm_offset_t) ef->address + - (ef->object->size << PAGE_SHIFT)); - } + if (ef->object != NULL) + vm_map_remove(kernel_map, (vm_offset_t)ef->address, + (vm_offset_t)ef->address + ptoa(ef->object->size)); free(ef->e_shdr, M_LINKER); free(ef->ddbsymtab, M_LINKER); free(ef->ddbstrtab, M_LINKER);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201910172125.x9HLPoKB065420>