This is an archive of the discontinued LLVM Phabricator instance.

[tsan] Synchronize leaving a GCD group with notifications
ClosedPublic

Authored by kubamracek on Jul 1 2016, 7:09 AM.

Details

Summary

In the patch that introduced support for GCD barrier blocks, I removed releasing a group when leaving it (in dispatch_group_leave). However, this is necessary to synchronize leaving a group and a notification callback (dispatch_group_notify). Adding this back, simplifying dispatch_group_notify_f and adding a test case.

Diff Detail

Repository
rL LLVM

Event Timeline

kubamracek updated this revision to Diff 62492.Jul 1 2016, 7:09 AM
kubamracek retitled this revision from to [tsan] Synchronize leaving a GCD group with notifications.
kubamracek updated this object.
kubamracek added reviewers: dvyukov, kcc, glider.
kubamracek added a project: Restricted Project.
dvyukov accepted this revision.Jul 5 2016, 6:40 AM
dvyukov edited edge metadata.
This revision is now accepted and ready to land.Jul 5 2016, 6:40 AM
This revision was automatically updated to reflect the committed changes.