Drain both the sending and resend queues on disconnect. This prevents the client from getting it's self into a dead state when the server disconnects us. Signed-off-by: Peter Leckie <pleckie@xxxxxxxxxxxxxxxxx> Reviewed-by: Greg Banks <gnb@xxxxxxxxxxxxxxxxx> X-Sgi-Pv: 971446 <http://bugworks/query.cgi/971446>--- Index: linux-2.6.25.3/net/sunrpc/xprt.c =================================================================== --- linux-2.6.25.3.orig/net/sunrpc/xprt.c +++ linux-2.6.25.3/net/sunrpc/xprt.c @@ -586,6 +586,8 @@ void xprt_disconnect_done(struct rpc_xpr spin_lock_bh(&xprt->transport_lock); xprt_clear_connected(xprt); xprt_wake_pending_tasks(xprt, -ENOTCONN); + rpc_wake_up_status(&xprt->resend, -ENOTCONN); + rpc_wake_up_status(&xprt->sending, -ENOTCONN); spin_unlock_bh(&xprt->transport_lock); } EXPORT_SYMBOL_GPL(xprt_disconnect_done); -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html