On 05/30/2013 04:30 PM, Ryan Johnson wrote: > Is there a way for libgcc_s to interpose on dlopen/dlclose if (and only if) > those are present? If so, the wrappers could increment an atomic version > counter, which would be plenty accurate for invalidating an object header > cache, without requiring any changes to glibc.
You'll note that we already have a cache, which gets invalidated by changes to the dlpi_adds and dlpi_subs members of dl_phdr_info. It's a space-limited LRU cache though, so I don't see a way to reduce the set of code that must live under the dl_iterate_phdr mutex. r~