From: Chuck Lever Date: Wed, 28 May 2014 14:35:14 +0000 (-0400) Subject: xprtrdma: Disconnect on registration failure X-Git-Tag: omap-for-v3.16/fixes-against-rc1~64^2~5^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c93c62231cf55df4a26bd08937efeea97e6fc5e8;p=pandora-kernel.git xprtrdma: Disconnect on registration failure If rpcrdma_register_external() fails during request marshaling, the current RPC request is killed. Instead, this RPC should be retried after reconnecting the transport instance. The most likely reason for registration failure with FRMR is a failed post_send, which would be due to a remote transport disconnect or memory exhaustion. These issues can be recovered by a retry. Problems encountered in the marshaling logic itself will not be corrected by trying again, so these should still kill a request. Now that we've added a clean exit for marshaling errors, take the opportunity to defang some BUG_ON's. Signed-off-by: Chuck Lever Signed-off-by: Anna Schumaker --- Reading git-diff-tree failed