ptlrpc_request_set_replen(req);
- CLASSERT(sizeof(*aa) <= sizeof(req->rq_async_args));
- aa = ptlrpc_req_async_args(req);
+ aa = ptlrpc_req_async_args(aa, req);
aa->aa_exp = exp;
aa->aa_qqi = qqi;
aa->aa_arg = (void *)lqe;
struct qsd_async_args *aa = (struct qsd_async_args *)arg;
struct ldlm_reply *lockrep;
__u64 flags = LDLM_FL_HAS_INTENT;
+ struct ldlm_enqueue_info einfo = {
+ .ei_type = LDLM_PLAIN,
+ .ei_mode = LCK_CR,
+ };
ENTRY;
LASSERT(aa->aa_exp);
req_qbody = req_capsule_client_get(&req->rq_pill, &RMF_QUOTA_BODY);
req_capsule_client_get(&req->rq_pill, &RMF_LDLM_INTENT);
- rc = ldlm_cli_enqueue_fini(aa->aa_exp, req, LDLM_PLAIN, 0, LCK_CR,
- &flags, (void *)aa->aa_lvb,
- sizeof(struct lquota_lvb), lockh, rc);
+ rc = ldlm_cli_enqueue_fini(aa->aa_exp, req, &einfo, 0, &flags,
+ aa->aa_lvb, sizeof(*(aa->aa_lvb)),
+ lockh, rc);
if (rc < 0) {
/* the lock has been destroyed, forget about the lock handle */
memset(lockh, 0, sizeof(*lockh));
break;
}
- CLASSERT(sizeof(*aa) <= sizeof(req->rq_async_args));
- aa = ptlrpc_req_async_args(req);
+ aa = ptlrpc_req_async_args(aa, req);
aa->aa_exp = exp;
aa->aa_qqi = qqi;
aa->aa_arg = arg;
/* allocate bulk descriptor */
desc = ptlrpc_prep_bulk_imp(req, npages, 1,
- PTLRPC_BULK_PUT_SINK | PTLRPC_BULK_BUF_KIOV,
+ PTLRPC_BULK_PUT_SINK,
MDS_BULK_PORTAL,
&ptlrpc_bulk_kiov_pin_ops);
- if (desc == NULL) {
- ptlrpc_request_free(req);
- RETURN(-ENOMEM);
- }
+ if (desc == NULL)
+ GOTO(out, rc = -ENOMEM);
/* req now owns desc and will free it when it gets freed */
for (i = 0; i < npages; i++)