#endif
if (eprc != EP_SUCCESS) {
CERROR("ep_rpc_get failed: %d\n", eprc);
- /* don't attempt RPC completion */
- krx->krx_rpc_reply_needed = 0;
rc = -ECONNABORTED;
}
break;
krx->krx_state = KRX_PARSE;
krx->krx_rxd = rxd;
krx->krx_nob = nob;
-
- /* RPC reply iff rpc request received without error */
- krx->krx_rpc_reply_needed = ep_rxd_isrpc(rxd) &&
- !(status == EP_SUCCESS ||
- status == EP_MSG_TOO_BIG);
-
+#if MULTIRAIL_EKC
+ krx->krx_rpc_reply_needed = (status != EP_SHUTDOWN) && ep_rxd_isrpc(rxd);
+#else
+ krx->krx_rpc_reply_needed = ep_rxd_isrpc(rxd);
+#endif
/* Default to failure if an RPC reply is requested but not handled */
krx->krx_rpc_reply_status = -EPROTO;
atomic_set (&krx->krx_refcount, 1);