commit | 4a5a417a2feb795a069c361fbf0ac564da493428 | [log] [tgz] |
---|---|---|
author | Eli Lipsitz <elipsitz@pigweed.infra.roller.google.com> | Mon Sep 26 23:45:19 2022 +0000 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Sep 26 23:45:19 2022 +0000 |
tree | 82ae3759bf552f7dfb4fcd00ab788e10963d4d37 | |
parent | 4bcce89e25a63ec49661ec55406d541cb5f412d3 [diff] |
[roll third_party/pigweed] pw_software_update: Fix recursive lock acquisition A recent change (I278f16834e95a4020bd7b8586f1878a475b82d60) added a lock acquisition to BundledUpdateService::SetTransferred, because the SET_ERROR macro requires the internal lock. However, it calls NotifyTransferSucceeded, which also acquires the lock. This means that any calls to SetTransferred deadlock on a recursive acquisition. This commit fixes the issue by moving the outer lock acquisition into the if statement that calls SET_ERROR, which is mutually exclusive with the call to NotifyTransferSucceeded. Tested: The SetTransferred RPC method no longer hangs. Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/112170 https://pigweed.googlesource.com/pigweed/pigweed third_party/pigweed Rolled-Commits: 37d9c872d26018b..89056eab62bab00 Roller-URL: https://ci.chromium.org/b/8801916288146397905 GitWatcher: ignore CQ-Do-Not-Cancel-Tryjobs: true Change-Id: I158dfa81c64f2c64cede4aed83208b4208ef3649 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/112145 Bot-Commit: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com> Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed index 37d9c87..89056ea 160000 --- a/third_party/pigweed +++ b/third_party/pigweed
@@ -1 +1 @@ -Subproject commit 37d9c872d26018b4232e12176e760ac7b0f24f78 +Subproject commit 89056eab62bab00fd86835e974004d6259ab2a1f