]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: use regular dispatch for processing beacons
authorPatrick Donnelly <pdonnell@redhat.com>
Tue, 14 May 2024 17:53:09 +0000 (13:53 -0400)
committerPatrick Donnelly <pdonnell@redhat.com>
Thu, 16 May 2024 01:16:29 +0000 (21:16 -0400)
commit7fc2a65326eeeef4938a9f73be05b6f66358405f
treed11b98e463b9f08e68e2082c462ef4c420c50141
parentb463d93b08f392ebd636c24bf5f0fa4249600256
mds: use regular dispatch for processing beacons

Similar to the issue with MClientMetrics, beacons should also not be handled
via fast dispatch because it's necessary to acquire Beacon::mutex. This is a
big no-no as it may block one of the Messenger threads leading to improbable
deadlocks or DoS.

Instead, use the normal dispatch where acquiring locks is okay to do.

Fixes: 7fc04be9332704946ba6f0e95cfcd1afc34fc0fe
See-also: linux.git/f7c2f4f6ce16fb58f7d024f3e1b40023c4b43ff9
Fixes: https://tracker.ceph.com/issues/65658
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
src/mds/Beacon.cc
src/mds/Beacon.h