diff options
| author | Sage Weil <sage@newdream.net> | 2011-03-04 12:25:05 -0800 | 
|---|---|---|
| committer | Sage Weil <sage@newdream.net> | 2011-03-04 12:25:05 -0800 | 
| commit | e00de341fdb76c955703b4438100f9933c452b7f (patch) | |
| tree | ab776a5e46f1cb5acaa6b26484763259040f470c /kernel/rtmutex-debug.h | |
| parent | e76661d0a59e53e5cc4dccbe4b755d1dc8a968ec (diff) | |
libceph: fix msgr standby handling
The standby logic used to be pretty dependent on the work requeueing
behavior that changed when we switched to WQ_NON_REENTRANT.  It was also
very fragile.
Restructure things so that:
 - We clear WRITE_PENDING when we set STANDBY.  This ensures we will
   requeue work when we wake up later.
 - con_work backs off if STANDBY is set.  There is nothing to do if we are
   in standby.
 - clear_standby() helper is called by both con_send() and con_keepalive(),
   the two actions that can wake us up again.  Move the connect_seq++
   logic here.
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'kernel/rtmutex-debug.h')
0 files changed, 0 insertions, 0 deletions
