]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
libproc: Cache ELF handles for loaded objects.
authormarkj <markj@FreeBSD.org>
Tue, 6 Dec 2016 04:19:08 +0000 (04:19 +0000)
committermarkj <markj@FreeBSD.org>
Tue, 6 Dec 2016 04:19:08 +0000 (04:19 +0000)
commite039d5c9e3f147a42b99d1365f3c557e274469a0
tree8c4d207e88011c6e05f5c8ad8690038eabfeb3b1
parent55a213f57bf8facfa8b1c54e2f07e12f0bc87683
libproc: Cache ELF handles for loaded objects.

libproc previously created a new handle for each symbol lookup, which
gives rather egregious performance for DTrace's ustack() action. With
this change libproc will cache the libelf descriptor upon access, making
lookups much faster in the common case.
lib/libproc/_libproc.h
lib/libproc/libproc.h
lib/libproc/proc_create.c
lib/libproc/proc_rtld.c
lib/libproc/proc_sym.c