Branch: refs/heads/thaines/main_breakpoint
Home: https://github.com/dyninst/dyninst
Commit: d3c4e8b6d8ceac9a92d41aa6fef18bf0f30e188a
https://github.com/dyninst/dyninst/commit/d3c4e8b6d8ceac9a92d41aa6fef18bf0f30e188a
Author: Tim Haines <[email protected]>
Date: 2026-02-03 (Tue, 03 Feb 2026)
Changed paths:
M dyninstAPI/src/dynProcess.C
M proccontrol/src/handler.C
Log Message:
-----------
Use a synchronized breakpoint for 'main'
If a thread is spawned before reaching main (e.g., in a .ctor entry),
proccontrol does not observe events from it and so assumes it is safe
to remove the breakpoint at 'main'. It is unclear at this time why no
events are observed. Particularly becuase there is a check that _should_
catch this case:
BPatch::processCreate
V
BPatch_process::BPatch_process
V
PCProcess::createProcess
V
Process::createProcess
V
int_process::createProcess
V
PCProcess::bootstrapProcess()
V
assert( pcProc_->allThreadsStopped() );
co-authored by Kian Cossettini @ AMD
Commit: 55567979d45d8b4f9344cacc3f348c103900ca2d
https://github.com/dyninst/dyninst/commit/55567979d45d8b4f9344cacc3f348c103900ca2d
Author: Tim Haines <[email protected]>
Date: 2026-02-03 (Tue, 03 Feb 2026)
Changed paths:
M dyninstAPI/src/pcEventHandler.C
M proccontrol/src/event.C
Log Message:
-----------
Ignore events for destroyed threads launched before main
If a thread is launched and destroyed before main is reached, there
could be events in the queue that belong to that dead thread. We should
ignore them. This seems at odds with proccontrol's failure to detect
that there are threads alive before main is reached, but there is a
user-reported crash that is fixed by these changes.
Compare: https://github.com/dyninst/dyninst/compare/03dc4aec228b...55567979d45d
To unsubscribe from these emails, change your notification settings at
https://github.com/dyninst/dyninst/settings/notifications
_______________________________________________
Dyninst-api mailing list
[email protected]
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api