HomeFreeBSD

Fix _mips_rtld_bind() to handle ELF filters.

Description

Fix _mips_rtld_bind() to handle ELF filters.

MIPS does not use the common _rtld_bind() to handle runtime binding.
Instead, it uses a private _mips_rtld_bind(). Update _mips_rtld_bind()
to include the changes made to _rtld_bind() in r216695 and r218476 to
support upgrading the read-locked rtld_bind_lock to a write lock when
an object with a filter is encountered.

While here, add a 'where' variable to track the location of the fixup
in the GOT to make the code flow more closely match _rtld_bind().

Reviewed by: kib
Obtained from: CheriBSD
Sponsored by: DARPA / AFRL
Differential Revision: https://reviews.freebsd.org/D8625

Details

Provenance
jhbAuthored on
Reviewer
kib
Differential Revision
D8625: Fix _mips_rtld_bind() to handle ELF filters.
Parents
rS309067: cache: ensure that the number of bucket locks does not exceed hash size
Branches
Unknown
Tags
Unknown