X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=net%2Fsunrpc%2Fclnt.c;h=cbc6af923dd1cb0baabc95161989133150269d4f;hb=dfbafc995304ebb9a9b03f65083e6e9cea143b20;hp=f41ed882ed3cd0d149131cbcf5bc6bdcd3b159e8;hpb=4a06825839889cc1756d0dd8a52d6b1071ee0263;p=firefly-linux-kernel-4.4.55.git diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index f41ed882ed3c..cbc6af923dd1 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -1031,6 +1031,7 @@ struct rpc_task *rpc_run_bc_task(struct rpc_rqst *req) struct xdr_buf *xbufp = &req->rq_snd_buf; struct rpc_task_setup task_setup_data = { .callback_ops = &rpc_default_ops, + .flags = RPC_TASK_SOFTCONN, }; dprintk("RPC: rpc_run_bc_task req= %p\n", req); @@ -1964,10 +1965,15 @@ call_bc_transmit(struct rpc_task *task) switch (task->tk_status) { case 0: /* Success */ - break; case -EHOSTDOWN: case -EHOSTUNREACH: case -ENETUNREACH: + case -ECONNRESET: + case -ECONNREFUSED: + case -EADDRINUSE: + case -ENOTCONN: + case -EPIPE: + break; case -ETIMEDOUT: /* * Problem reaching the server. Disconnect and let the