diff --git a/lustre/ChangeLog b/lustre/ChangeLog index 6f37274505155de88619bd0e21ca8fc085a0098d..bf7ad76e94272fed8b17c2e7d320f3c4f10541ba 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -38,6 +38,14 @@ tbd Sun Microsystems, Inc. * Output of lfs quota has been made less detailed by default, old (verbose) output can be obtained by using -v option. +Severity : normal +Bugzilla : 16839 +Frequency : rare, on restart ost +Description: llog_receptor_accept() ASSERTION(ctxt) +Details : if ost is restarted before set_info(KEY_MDS_CONN) finished, this + request will resend before finished ost llog init and this produce + access to non init llog context. + Severity : normal Bugzilla : 15927 Frequency : rare diff --git a/lustre/osc/osc_request.c b/lustre/osc/osc_request.c index 1555d61f0437bb1a3ab8575e915a4d2348817cea..a439d01fd478e21852614062ce2aa306321ded9d 100644 --- a/lustre/osc/osc_request.c +++ b/lustre/osc/osc_request.c @@ -3477,6 +3477,7 @@ static int osc_get_info(struct obd_export *exp, obd_count keylen, RETURN(-ENOMEM); size[REPLY_REC_OFF] = *vallen; + req->rq_no_delay = req->rq_no_resend = 1; ptlrpc_req_set_repsize(req, 2, size); rc = ptlrpc_queue_wait(req); if (rc) @@ -3623,8 +3624,10 @@ static int osc_set_info_async(struct obd_export *exp, obd_count keylen, if (req == NULL) RETURN(-ENOMEM); - if (KEY_IS(KEY_MDS_CONN)) + if (KEY_IS(KEY_MDS_CONN)) { req->rq_interpret_reply = osc_setinfo_mds_conn_interpret; + req->rq_no_delay = req->rq_no_resend = 1; + } ptlrpc_req_set_repsize(req, 1, NULL); ptlrpc_set_add_req(set, req);