Race in db_close_events()

Bug #1730982 reported by mdavidsaver on 2017-11-08
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
EPICS Base
Status tracked in 7.0
3.14
Low
Ralph Lange
3.15
Undecided
Unassigned
3.16
Undecided
Unassigned
7.0
Low
mdavidsaver

Bug Description

valgrind reports a data race in db_close_events(). This is the pattern of:

> epicsEventMustWait(...)
> epicsEventDestroy(...)

Where the working calling 'epicsEventSignal(...)' may not have returned before the event is destroy'd.

I introduced this race in d2b0e920012d4c9bc0eaecc0e092cedd776db578 prior to 3.15.0.1 to fix a similar race (the worker was calling epicsEventDestroy() ).

We need a safe pattern for joining worker threads (cf. lp:1699229).

Related branches

Andrew Johnson (anj) on 2017-11-16
Changed in epics-base:
status: Triaged → Fix Committed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers