You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My bug detector tool found a concurrency issue in axel version 2.17.11, where a thread that has already been joined is attempted to be joined again. Below please find the detailed report.
However, in axel.c line 643, it is still possible to call the pthread_join on the same thread that was joined before.
...
if (!axel->conn[i].state) {
// Wait for termination of this thread
pthread_join(*(axel->conn[i].setup_thread),
NULL);
}
This behavior is non-deterministic and is not always present. However, I can reproduce this behavior deterministically by putting a short sleep statement before the lock acquire event in axel.c line 835. I presumed that this is not an intended behavior. Would you be able to confirm the validity of this issue?
Thank you.
The text was updated successfully, but these errors were encountered:
Hello,
My bug detector tool found a concurrency issue in axel version 2.17.11, where a thread that has already been joined is attempted to be joined again. Below please find the detailed report.
At axel.c line 672 the first join occurs.
However, in axel.c line 643, it is still possible to call the
pthread_join
on the same thread that was joined before.This behavior is non-deterministic and is not always present. However, I can reproduce this behavior deterministically by putting a short sleep statement before the lock acquire event in axel.c line 835. I presumed that this is not an intended behavior. Would you be able to confirm the validity of this issue?
Thank you.
The text was updated successfully, but these errors were encountered: