Description of problem: Linking DSOs with g++ --Wl,--filter=someDSO.so, and DSO produced can't be dlopened or feeded to ldd $ ldd someDSO.so Inconsistency detected by ld.so: dl-deps.c: 553: _dl_map_object_deps: Assertion `map->l_searchlist.r_list[0] == map' failed! Version-Release number of selected component (if applicable): glibc-2.28 How reproducible: Always Steps to Reproduce: 1. Set DT_FILTER to a shared library as below: $ g++ --Wl,--filter=someDSO.so 2. Load the library using dlopen or just do ldd on it: $ ldd someDSO.so Inconsistency detected by ld.so: dl-deps.c: 553: _dl_map_object_deps: Assertion `map->l_searchlist.r_list[0] == map' failed! Actual results: Crashes with Assertion message as below: Inconsistency detected by ld.so: dl-deps.c: 553: _dl_map_object_deps: Assertion `map->l_searchlist.r_list[0] == map' failed! Expected results: Library should load without any error/problem with DT_FILTER set to it. Additional info: Issue is reported in upstream at https://sourceware.org/bugzilla/show_bug.cgi?id=16272. I had provided a test package to the customer including fix from the upstream bugzilla and customer has confirmed that it fixes the issue.
*** This bug has been marked as a duplicate of bug 1812756 ***