This patch implements the probes-based runtime linker interface. It works as follows: - On inferior startup, GDB searches the dynamic linker for a number of named probes. - If all probes are found, GDB sets a breakpoint on each one. Otherwise, the standard function _dl_debug_state is used. - When using probes, a per-pspace list is maintained of all libraries currently loaded by the inferior. It's updated as necessary every time a solib event stop occurs. - When using probes, svr4_current_sos will return a copy of the cached list. When not using probes the entire list will be fetched from the inferior as before. - If any error occurs, GDB will print a warning and revert to the standard interface.