Commit 3068891
committed
orchestrator: lock the saturation flag set from worker threads
ORCH_SAT_COMPONENT_LINES_DROPPED was OR'd into orchestrator_saturation
from the per-thread component read path without the result mutex, while
the other writers hold it — a non-atomic read-modify-write racing across
worker threads (a set bit could be lost). C99 cross builds rule out
_Atomic, so collect a local flag during the lock-free per-thread clog
allocation and set the shared flag once under RESULT_LOCK.1 parent 509c5b2 commit 3068891
1 file changed
Lines changed: 11 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1212 | 1212 | | |
1213 | 1213 | | |
1214 | 1214 | | |
1215 | | - | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
1216 | 1218 | | |
| 1219 | + | |
1217 | 1220 | | |
1218 | 1221 | | |
1219 | 1222 | | |
| |||
1222 | 1225 | | |
1223 | 1226 | | |
1224 | 1227 | | |
1225 | | - | |
| 1228 | + | |
1226 | 1229 | | |
1227 | 1230 | | |
1228 | 1231 | | |
| |||
1231 | 1234 | | |
1232 | 1235 | | |
1233 | 1236 | | |
1234 | | - | |
| 1237 | + | |
1235 | 1238 | | |
1236 | 1239 | | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
1237 | 1245 | | |
1238 | 1246 | | |
1239 | 1247 | | |
| |||
0 commit comments