summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSpade Lee <spadelee@google.com>2024-03-05 04:25:34 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-03-05 04:25:34 +0000
commita46b5666a25a212a52f9fa3e40ca74723d9fa092 (patch)
tree0ee4a23a7241341131d5c0b7235c35e2c9a9f481
parent2af52f657b6b4f218d43472fa3d3a224cd1f1f2e (diff)
parent3e11fbce6336e9ffc25ef864ee19b72bb3517e90 (diff)
downloadgs-a46b5666a25a212a52f9fa3e40ca74723d9fa092.tar.gz
gvotable: get result lock before iterating the entries am: 3e11fbce63
Original change: https://partner-android-review.googlesource.com/c/kernel/private/gs-google/+/2736372 Change-Id: I0c339e8fe38201c4ede9ab6d9b7d78c450194a0c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--drivers/misc/gvotable.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/misc/gvotable.c b/drivers/misc/gvotable.c
index 2f245965a81e..947393b174fc 100644
--- a/drivers/misc/gvotable.c
+++ b/drivers/misc/gvotable.c
@@ -422,7 +422,8 @@ int gvotable_election_for_each(struct gvotable_election *el,
return ret;
}
- /* TODO: LOCK list? */
+ gvotable_lock_result(el);
+
list_for_each_entry(ballot, &el->votes, list) {
if (!ballot->enabled)
continue;
@@ -433,6 +434,8 @@ int gvotable_election_for_each(struct gvotable_election *el,
break;
}
+ gvotable_unlock_result(el);
+
return ret;
}
EXPORT_SYMBOL_GPL(gvotable_election_for_each);