Drop process.fixed_libs, enable breakpoints right away
The theory behing fixed_libs was broken from the beginning, we can't tell
dlopened libraries from fixed ones when attaching. We also don't need to
wait for _start to enable breakpoints. We may need this on LS_TOPLT_POINT
architectures, but that was added for PPC, and PPC doesn't need it anymore.
diff --git a/proc.c b/proc.c
index 766f53d..c50236b 100644
--- a/proc.c
+++ b/proc.c
@@ -517,10 +517,7 @@
goto fail;
}
- /* If this is dlopened library, turn on the breakpoint right
- * away. */
- if (proc->fixed_libs != NULL
- && breakpoint_turn_on(bp) < 0) {
+ if (breakpoint_turn_on(bp) < 0) {
proc_remove_breakpoint(proc, bp);
breakpoint_destroy(bp);
goto fail;
@@ -600,8 +597,8 @@
proc->pid, breakpoint_name(bp), bp->addr);
/* XXX We might merge bp->libsym instead of the following
- * assert, but that's not necessary right now. Look into
- * breakpoint_for_symbol. */
+ * assert, but that's not necessary right now. Read the
+ * comment in breakpoint_for_symbol. */
assert(dict_find_entry(leader->breakpoints, bp->addr) == NULL);
if (dict_enter(leader->breakpoints, bp->addr, bp) < 0) {