Previously, libpulp find symbols address by reading the ELF file of
target process/library and used the offset of the symbol there to
compute its address. Now, look at the remote process of these symbols.
This has the advantage of not having to rely on the process binary
in disk, that could be modified in the meanwhile of loading the
process and applying the patch.
However, this comes with a cost: ptracing the remote process seems
to be slower than reading the in disk information. We reduced this
overhead avoiding looking into libraries which name does not contain
"libpulp". However, there are still margin for optimizations here.
Previously, libpulp find symbols address by reading the ELF file of target process/library and used the offset of the symbol there to compute its address. Now, look at the remote process of these symbols. This has the advantage of not having to rely on the process binary in disk, that could be modified in the meanwhile of loading the process and applying the patch.
However, this comes with a cost: ptracing the remote process seems to be slower than reading the in disk information. We reduced this overhead avoiding looking into libraries which name does not contain "libpulp". However, there are still margin for optimizations here.
Signed-off-by: Giuliano Belinassi gbelinassi@suse.de