summaryrefslogtreecommitdiff
path: root/libexec/ld.so/dlfcn.c
diff options
context:
space:
mode:
authorDale Rahn <drahn@cvs.openbsd.org>2011-05-22 22:43:48 +0000
committerDale Rahn <drahn@cvs.openbsd.org>2011-05-22 22:43:48 +0000
commit1332dfd77b30e91e262383d878389419b5706128 (patch)
tree855cb6367fc2fac91294e0bd8f3509377b938097 /libexec/ld.so/dlfcn.c
parent44f96cec27921325881829c52b084ed9b5f78668 (diff)
Dynamic linker speed improvement diff. tested by several sinc k2k11.
get it in tree now deraadt@, ok by several ports folks. Thanks for the testing.
Diffstat (limited to 'libexec/ld.so/dlfcn.c')
-rw-r--r--libexec/ld.so/dlfcn.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libexec/ld.so/dlfcn.c b/libexec/ld.so/dlfcn.c
index f975f61603e..74b2a587e4d 100644
--- a/libexec/ld.so/dlfcn.c
+++ b/libexec/ld.so/dlfcn.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dlfcn.c,v 1.82 2010/07/01 19:25:44 drahn Exp $ */
+/* $OpenBSD: dlfcn.c,v 1.83 2011/05/22 22:43:47 drahn Exp $ */
/*
* Copyright (c) 1998 Per Fogelstrom, Opsycon AB
@@ -108,6 +108,7 @@ dlopen(const char *libname, int flags)
_dl_unload_shlib(object);
_dl_exit(0);
}
+ _dl_search_list_valid = 0;
err = _dl_rtld(object);
if (err != 0) {
_dl_real_close(object);
@@ -263,6 +264,7 @@ dlclose(void *handle)
retval = _dl_real_close(handle);
+ _dl_search_list_valid = 0;
if (_dl_debug_map->r_brk) {
_dl_debug_map->r_state = RT_CONSISTENT;