No description
cpg_mcast_joined (and transitively, cpg_join/leave) are not thread-safe. pmxcfs triggers such operations via FUSE and CPG dispatch callbacks, which are running in concurrent threads. accordingly, we need to protect these operations with a mutex, otherwise they might return CS_OK without actually doing what they were supposed to do (which in turn can lead to the dfsm taking a wrong turn and getting stuck in a supposedly short-lived state, blocking access via FUSE and getting whole clusters fenced). huge thanks to Alexandre Derumier for providing the initial bug report and quite a lot of test runs while debugging this issue. Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com> |
||
|---|---|---|
| data | ||
| debian | ||
| .gitignore | ||
| cpgtest.c | ||
| Makefile | ||