[RTEMS Project] #3748: libdl uses a linear symbol search on object file symbols
RTEMS trac
trac at rtems.org
Tue May 14 00:32:24 UTC 2019
#3748: libdl uses a linear symbol search on object file symbols
--------------------------+----------------------
Reporter: Chris Johns | Owner: (none)
Type: defect | Status: assigned
Priority: normal | Milestone: 5.1
Component: lib/dl | Version: 5
Severity: normal | Keywords:
Blocked By: | Blocking:
--------------------------+----------------------
Symbol searching has two parts, searching the object file and searching
the global symbol table. Currently the object file search is linear and
the global table search uses a hash table.
A large incrementally linked object file can have a large local and global
set of symbols and this can slow the loading process. This issue does not
show up for small object files with a few symbols which is typically how
our libraries are made.
Change the object file symbol search to a binary search (`bsearch`). A
hash table for each object file would increase the in memory object file
footprint by a significant amount and would harm the small object file use
case that only have a few symbols. A binary search is a suitable
compromise.
--
Ticket URL: <http://devel.rtems.org/ticket/3748>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list