MINOR: thread: only use atomic ops to touch the flags
The thread flags are touched a little bit by other threads, e.g. the STUCK
flag may be set by other ones, and they're watched a little bit. As such
we need to use atomic ops only to manipulate them. Most places were already
using them, but here we generalize the practice. Only ha_thread_dump() does
not change because it's run under isolation.
diff --git a/src/wdt.c b/src/wdt.c
index 6bb7d85..dc5c1dd 100644
--- a/src/wdt.c
+++ b/src/wdt.c
@@ -99,7 +99,7 @@
* If it's already set, then it's our second call with no
* progress and the thread is dead.
*/
- if (!(ha_thread_ctx[thr].flags & TH_FL_STUCK)) {
+ if (!(_HA_ATOMIC_LOAD(&ha_thread_ctx[thr].flags) & TH_FL_STUCK)) {
_HA_ATOMIC_OR(&ha_thread_ctx[thr].flags, TH_FL_STUCK);
goto update_and_leave;
}