> refactor: reduce scope of lock `m_most_recent_block_mutex`
>
> This avoids calling the non-trivial method
> `CConnman::PushMessage` within the critical section.
> refactor: replace RecursiveMutex `m_most_recent_block_mutex` with Mutex
>
> In each of the critical sections, only the the guarded variables are
> accessed, without any chance that within one section another one is
> called. Hence, we can use an ordinary Mutex instead of RecursiveMutex.
This is a backport of core#24062