Project

General

Profile

Actions

Fix #6965

open

messenger: Pipe should not hold pipe lock while doing message encode and auth

Added by Greg Farnum over 10 years ago. Updated about 5 years ago.

Status:
In Progress
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Right now we hold the pipe lock while running the message encode and cephx steps in Pipe::writer. We don't need to, and holding that lock prevents other threads from adding messages into the Pipe's out_q for the duration of that step (which Yehuda has found to be several hundred microseconds per message). This could slow progress in the main ms_dispatch() loop if all the Pipes are full of messages to send! Move the pipe_lock.Unlock() call up above those steps, see if it makes a difference, and add to mainline if so.

Actions #1

Updated by Greg Farnum about 5 years ago

  • Project changed from Ceph to Messengers
  • Category deleted (msgr)
Actions

Also available in: Atom PDF