-
Notifications
You must be signed in to change notification settings - Fork 38.7k
sync: print proper lock order location when double lock is detected #20507
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
Conversation
Before: ``` Assertion failed: detected double lock at src/sync.cpp:153, details in debug log. ``` After: ``` Assertion failed: detected double lock for 'm' in src/test/sync_tests.cpp:40 (in thread ''), details in debug log. ```
It is not modified in the function, so should be `const`.
`HasReason()` is shorter than a lambda function.
|
To force printing of the message: --- i/src/test/sync_tests.cpp
+++ w/src/test/sync_tests.cpp
@@ -46,5 +46,4 @@ void TestDoubleLock(bool should_throw)
{
const bool prev = g_debug_lockorder_abort;
- g_debug_lockorder_abort = false;
MutexType m;and run |
|
Concept ACK |
hebasto
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK db058ef, tested on Linux Mint 20 (x86_64).
Thanks for fixing 👍
|
Thanks for fixing! |
|
ACK db058ef |
promag
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code review ACK db058ef.
…le lock is detected db058ef sync: use HasReason() in double lock tests (Vasil Dimov) a21dc46 sync: const-qualify the argument of double_lock_detected() (Vasil Dimov) 6d3689f sync: print proper lock order location when double lock is detected (Vasil Dimov) Pull request description: Before: ``` Assertion failed: detected double lock at src/sync.cpp:153, details in debug log. ``` After: ``` Assertion failed: detected double lock for 'm' in src/test/sync_tests.cpp:40 (in thread ''), details in debug log. ``` ACKs for top commit: jonasschnelli: utACK db058ef ajtowns: ACK db058ef hebasto: ACK db058ef, tested on Linux Mint 20 (x86_64). Tree-SHA512: 452ddb9a14e44bb174135b39f2219c76eadbb8a6c0e80d64a25f995780d6dbc7b570d9902616db94dbfabaee197b5828ba3475171a68240ac0958fb203a7acdb
Before:
After: