aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ceph
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2011-03-04 12:25:05 -0800
committerSage Weil <sage@newdream.net>2011-03-04 12:25:05 -0800
commite00de341fdb76c955703b4438100f9933c452b7f (patch)
treeab776a5e46f1cb5acaa6b26484763259040f470c /fs/ceph
parente76661d0a59e53e5cc4dccbe4b755d1dc8a968ec (diff)
downloadkernel_samsung_smdk4412-e00de341fdb76c955703b4438100f9933c452b7f.zip
kernel_samsung_smdk4412-e00de341fdb76c955703b4438100f9933c452b7f.tar.gz
kernel_samsung_smdk4412-e00de341fdb76c955703b4438100f9933c452b7f.tar.bz2
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 'fs/ceph')
0 files changed, 0 insertions, 0 deletions