From: Sage Weil Date: Fri, 4 Mar 2011 20:25:05 +0000 (-0800) Subject: libceph: fix msgr standby handling X-Git-Tag: v2.6.38-rc8~9^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e00de341fdb76c955703b4438100f9933c452b7f;p=pandora-kernel.git 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 --- Reading git-diff-tree failed