summaryrefslogtreecommitdiffstats
path: root/libexec/rtld-elf/rtld.1
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2010-12-25 08:51:20 +0000
committerkib <kib@FreeBSD.org>2010-12-25 08:51:20 +0000
commitcefd8b2a41e4b4bf7a16e2dea1e0c719a30d56a3 (patch)
tree487c080e0cb090d960945a4f112301253d4a6e9f /libexec/rtld-elf/rtld.1
parent377233e6cca2d48c8ecba755aa46304a8ae7731b (diff)
downloadFreeBSD-src-cefd8b2a41e4b4bf7a16e2dea1e0c719a30d56a3.zip
FreeBSD-src-cefd8b2a41e4b4bf7a16e2dea1e0c719a30d56a3.tar.gz
Implement support for ELF filters in rtld. Both normal and auxillary
filters are implemented. Filtees are loaded on demand, unless LD_LOADFLTR environment variable is set or -z loadfltr was specified during the linking. This forces rtld to upgrade read-locked rtld_bind_lock to write lock when it encounters an object with filter during symbol lookup. Consolidate common arguments of the symbol lookup functions in the SymLook structure. Track the state of the rtld locks in the RtldLockState structure. Pass local RtldLockState through the rtld symbol lookup calls to allow lock upgrades. Reviewed by: kan Tested by: Mykola Dzham <i levsha me>, nwhitehorn (powerpc)
Diffstat (limited to 'libexec/rtld-elf/rtld.1')
-rw-r--r--libexec/rtld-elf/rtld.18
1 files changed, 8 insertions, 0 deletions
diff --git a/libexec/rtld-elf/rtld.1 b/libexec/rtld-elf/rtld.1
index 592cb95..f77b150 100644
--- a/libexec/rtld-elf/rtld.1
+++ b/libexec/rtld-elf/rtld.1
@@ -221,6 +221,14 @@ If set,
.Nm
will log events such as the loading and unloading of shared objects via
.Xr utrace 2 .
+.Pp
+.It Ev LD_LOADFLTR
+If set,
+.Nm
+will process the filtee dependencies of the loaded objects immediately,
+instead of postponing it until required.
+Normally, the filtees are opened at the time of the first symbol resolution
+from the filter object.
.El
.Sh FILES
.Bl -tag -width ".Pa /var/run/ld-elf32.so.hints" -compact
OpenPOWER on IntegriCloud