- lwi = LWI_TIMEOUT(timeout * HZ, rawrpc_timedout, &request);
- l_wait_event(request.rq_reply_waitq,
- rawrpc_check_reply(&request), &lwi);
-
- ptlrpc_unregister_reply(&request);
-
- if (request.rq_err || request.rq_resend || request.rq_intr ||
- request.rq_timedout || !request.rq_replied) {
- CERROR("secinit rpc error: err %d, resend %d, "
- "intr %d, timedout %d, replied %d\n",
- request.rq_err, request.rq_resend, request.rq_intr,
- request.rq_timedout, request.rq_replied);
- if (request.rq_timedout)
- rc = -ETIMEDOUT;
- else
- rc = -EINVAL;
- } else {
- *replenp = request.rq_nob_received;
+ if (timeout)
+ lwi = LWI_TIMEOUT(timeout * HZ, rawrpc_timedout, request);
+ else
+ lwi = LWI_TIMEOUT(100 * HZ, rawrpc_timedout_wait, request);
+
+ l_wait_event(request->rq_reply_waitq,
+ rawrpc_check_reply(request), &lwi);
+
+ ptlrpc_unregister_reply(request);
+
+ if (request->rq_replied) {
+ *replenp = request->rq_nob_received;