Skip to content

Conversation

@practicalswift
Copy link
Contributor

Assert locking requirements at compile-time (EXCLUSIVE_LOCKS_REQUIRED(foo)) instead of at run-time (AssertLockHeld(…)).

@practicalswift practicalswift force-pushed the move-runtime-checking-to-compile-time-checking branch from 5fe26f8 to 9bc0e80 Compare October 9, 2018 12:27
@DrahtBot
Copy link
Contributor

DrahtBot commented Oct 9, 2018

Reviewers, this pull request conflicts with the following ones:

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@promag
Copy link
Contributor

promag commented Oct 10, 2018

@practicalswift FYI #13783 (comment) maybe you should defer these changes?

@fanquake
Copy link
Member

@practicalswift In a similar vein to my comment here, please remove the AssertLockHeld changes from this PR. Leaving just the EXCLUSIVE_LOCKS_REQUIRED changes.

@maflcko
Copy link
Member

maflcko commented Oct 10, 2018

Agree with the previous feedback, also please squash your commits.

@practicalswift practicalswift force-pushed the move-runtime-checking-to-compile-time-checking branch from 9bc0e80 to 0089905 Compare October 10, 2018 09:28
@practicalswift
Copy link
Contributor Author

@promag @fanquake @MarcoFalke Thanks for the quick review and the clear feedback. Feedback addressed. Please re-review.

@practicalswift practicalswift changed the title Assert locking requirements at compile-time instead of at run-time Add compile time checking for cs_main locks which we assert at run time Oct 10, 2018
@promag
Copy link
Contributor

promag commented Oct 10, 2018

utACK 0089905.

@maflcko
Copy link
Member

maflcko commented Oct 24, 2018

utACK 0089905

@maflcko maflcko merged commit 0089905 into bitcoin:master Oct 24, 2018
maflcko pushed a commit that referenced this pull request Oct 24, 2018
…sert at run time

0089905 Add compile time checking for cs_main locks which we assert at run time (practicalswift)

Pull request description:

  Assert locking requirements at compile-time (`EXCLUSIVE_LOCKS_REQUIRED(foo)`) instead of at run-time (`AssertLockHeld(…)`).

Tree-SHA512: f4965ebf4bb5dbf5e7ed738cacf82c0f6cd55134fb968860bf84a84e29806485617f223910bb8c5461213f1829b0137c64ba1f6d6a2008b3cac3bb3a28df9324
jasonbcox pushed a commit to Bitcoin-ABC/bitcoin-abc that referenced this pull request Oct 25, 2019
…sert at run time

Summary:
0089905361 Add compile time checking for cs_main locks which we assert at run time (practicalswift)

Pull request description:

  Assert locking requirements at compile-time (`EXCLUSIVE_LOCKS_REQUIRED(foo)`) instead of at run-time (`AssertLockHeld(…)`).

Tree-SHA512: f4965ebf4bb5dbf5e7ed738cacf82c0f6cd55134fb968860bf84a84e29806485617f223910bb8c5461213f1829b0137c64ba1f6d6a2008b3cac3bb3a28df9324

Backport of Core PR14444
bitcoin/bitcoin#14444

Test Plan:
  ../configure CXX=clang++ CC=clang
  make check

Run teamcity `build-werror`

Reviewers: deadalnix, Fabien, jasonbcox, O1 Bitcoin ABC, #bitcoin_abc

Reviewed By: deadalnix, O1 Bitcoin ABC, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D4225
jonspock pushed a commit to jonspock/devault that referenced this pull request Dec 27, 2019
…sert at run time

Summary:
0089905361 Add compile time checking for cs_main locks which we assert at run time (practicalswift)

Pull request description:

  Assert locking requirements at compile-time (`EXCLUSIVE_LOCKS_REQUIRED(foo)`) instead of at run-time (`AssertLockHeld(…)`).

Tree-SHA512: f4965ebf4bb5dbf5e7ed738cacf82c0f6cd55134fb968860bf84a84e29806485617f223910bb8c5461213f1829b0137c64ba1f6d6a2008b3cac3bb3a28df9324

Backport of Core PR14444
bitcoin/bitcoin#14444

Test Plan:
  ../configure CXX=clang++ CC=clang
  make check

Run teamcity `build-werror`

Reviewers: deadalnix, Fabien, jasonbcox, O1 Bitcoin ABC, #bitcoin_abc

Reviewed By: deadalnix, O1 Bitcoin ABC, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D4225
jonspock pushed a commit to devaultcrypto/devault that referenced this pull request Dec 29, 2019
…sert at run time

Summary:
0089905361 Add compile time checking for cs_main locks which we assert at run time (practicalswift)

Pull request description:

  Assert locking requirements at compile-time (`EXCLUSIVE_LOCKS_REQUIRED(foo)`) instead of at run-time (`AssertLockHeld(…)`).

Tree-SHA512: f4965ebf4bb5dbf5e7ed738cacf82c0f6cd55134fb968860bf84a84e29806485617f223910bb8c5461213f1829b0137c64ba1f6d6a2008b3cac3bb3a28df9324

Backport of Core PR14444
bitcoin/bitcoin#14444

Test Plan:
  ../configure CXX=clang++ CC=clang
  make check

Run teamcity `build-werror`

Reviewers: deadalnix, Fabien, jasonbcox, O1 Bitcoin ABC, #bitcoin_abc

Reviewed By: deadalnix, O1 Bitcoin ABC, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D4225
@practicalswift practicalswift deleted the move-runtime-checking-to-compile-time-checking branch April 10, 2021 19:36
LarryRuane pushed a commit to LarryRuane/zcash that referenced this pull request Apr 29, 2021
LarryRuane pushed a commit to LarryRuane/zcash that referenced this pull request Jun 1, 2021
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Jul 17, 2021
…h we assert at run time

0089905 Add compile time checking for cs_main locks which we assert at run time (practicalswift)

Pull request description:

  Assert locking requirements at compile-time (`EXCLUSIVE_LOCKS_REQUIRED(foo)`) instead of at run-time (`AssertLockHeld(…)`).

Tree-SHA512: f4965ebf4bb5dbf5e7ed738cacf82c0f6cd55134fb968860bf84a84e29806485617f223910bb8c5461213f1829b0137c64ba1f6d6a2008b3cac3bb3a28df9324
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Aug 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants