DynamoRIO / dynamorio

Dynamic Instrumentation Tool Platform
Other
2.63k stars 557 forks source link

Hang in scheduler when parallel analysis tool reports an error #6666

Closed derekbruening closed 7 months ago

derekbruening commented 7 months ago

If a parallel analysis tool reports an error, that analyzer worker thread just exits. But its input is not in the scheduler's ready queue as it's assigned to that output stream: so the scheduler hangs at the end waiting for that input.

One solution is for the analyzer to call set_active(false) when returning early from a worker.