Skip to content

AthenaServices: Fix potential deadlock in RCUSvc.

When handle() quiesces an object, it's possible to get a call back into remove(). So the mutex we use should be recursive. Also, in the iteration over objects in handle(), protect against m_set being modified during the iteration.

Thanks to Stewart and Rafal for diagnosing.

See ATR-21227.

Merge request reports