From: Sage Weil Date: Thu, 13 May 2010 18:19:06 +0000 (-0700) Subject: ceph: clean up mds reply, error handling X-Git-Tag: v2.6.35-rc1~419^2~58 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e1518c7c0a67a75727f7285780dbef0ca7121cc9;p=pandora-kernel.git ceph: clean up mds reply, error handling We would occasionally BUG out in the reply handler because r_reply was nonzero, due to a race with ceph_mdsc_do_request temporarily setting r_reply to an ERR_PTR value. This is unnecessary, messy, and also wrong in the EIO case. Clean up by consistently using r_err for errors and r_reply for messages. Also fix the abort logic to trigger consistently for all errors that return to the caller early (e.g., EIO from timeout case). If an abort races with a reply, use the result from the reply. Also fix locking for r_err, r_reply update in the reply handler. Signed-off-by: Sage Weil --- Reading git-diff-tree failed