Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean up lockorder data of destroyed mutexes #7846

Merged
merged 1 commit into from
Apr 14, 2016
Merged

Commits on Apr 10, 2016

  1. Clean up lockorder data of destroyed mutexes

    The lockorder potential deadlock detection works by remembering for each
    lock A that is acquired while holding another B the pair (A,B), and
    triggering a warning when (B,A) already exists in the table.
    
    A and B in the above text are represented by pointers to the CCriticalSection
    object that is acquired. This does mean however that we need to clean up the
    table entries that refer to any critical section which is destroyed, as it
    memory address can potentially be used for another unrelated lock in the future.
    
    Implement this clean up by remembering not only the pairs in forward direction,
    but also backward direction. This allows for fast iteration over all pairs that
    use a deleted CCriticalSection in either the first or the second position.
    sipa committed Apr 10, 2016
    Configuration menu
    Copy the full SHA
    5eeb913 View commit details
    Browse the repository at this point in the history