summaryrefslogtreecommitdiff
path: root/src/mongo/transport/session_asio.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/transport/session_asio.h')
-rw-r--r--src/mongo/transport/session_asio.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mongo/transport/session_asio.h b/src/mongo/transport/session_asio.h
index 024fac29a95..6bee5566b98 100644
--- a/src/mongo/transport/session_asio.h
+++ b/src/mongo/transport/session_asio.h
@@ -315,8 +315,11 @@ private:
* operation.
* - Holding the mutex while canceling asynchronous operations guarantees no operation can start
* while cancellation is in progress.
+ *
+ * Opportunistic read and write are implemented as recursive future continuations, so we may
+ * recursively acquire the mutex when the future is readied inline.
*/
- stdx::mutex _asyncOpMutex; // NOLINT
+ stdx::recursive_mutex _asyncOpMutex; // NOLINT
};
} // namespace mongo::transport