static void ll_close_done_writing(struct inode *inode)
{
struct ll_inode_info *lli = ll_i2info(inode);
- struct ldlm_extent extent = { .start = 0, .end = OBD_OBJECT_EOF };
+ ldlm_policy_data_t policy = { .l_extent = {0, OBD_OBJECT_EOF } };
struct lustre_handle lockh = { 0 };
struct obdo obdo;
obd_flag valid;
goto rpc;
rc = ll_extent_lock_no_validate(NULL, inode, lli->lli_smd, LCK_PW,
- &extent, &lockh, ast_flags);
+ &policy, &lockh, ast_flags);
if (rc != ELDLM_OK) {
CERROR("lock acquisition failed (%d): unable to send "
"DONE_WRITING for inode %lu/%u\n", rc, inode->i_ino,
mdc_get_rpc_lock(obddev->u.cli.cl_rpc_lock, it);
rc = ldlm_cli_enqueue(exp, req, obddev->obd_namespace, res_id,
- lock_type, NULL, 0, lock_mode, &flags,
- cb_completion, cb_blocking, NULL, cb_data, 0,
- NULL, lockh);
+ lock_type, NULL, lock_mode, &flags, cb_completion,
+ cb_blocking, NULL, cb_data, NULL, 0, NULL, lockh);
mdc_put_rpc_lock(obddev->u.cli.cl_rpc_lock, it);
/* Similarly, if we're going to replay this request, we don't want to
mode = LCK_PR;
rc = ldlm_lock_match(exp->exp_obd->obd_namespace, flags,
- &res_id, LDLM_PLAIN, NULL, 0, LCK_PR,
- &lockh);
+ &res_id, LDLM_PLAIN, NULL, LCK_PR, &lockh);
if (!rc) {
mode = LCK_PW;
rc = ldlm_lock_match(exp->exp_obd->obd_namespace, flags,
- &res_id, LDLM_PLAIN, NULL, 0,
- LCK_PW, &lockh);
+ &res_id, LDLM_PLAIN, NULL, LCK_PW,
+ &lockh);
}
if (rc) {
memcpy(&it->d.lustre.it_lock_handle, &lockh,
LDLM_LOCK_PUT(lock);
memcpy(&old_lock, &lockh, sizeof(lockh));
if (ldlm_lock_match(NULL, LDLM_FL_BLOCK_GRANTED, NULL,
- LDLM_PLAIN, NULL, 0, LCK_NL, &old_lock)) {
+ LDLM_PLAIN, NULL, LCK_NL, &old_lock)) {
ldlm_lock_decref_and_cancel(&lockh,
it->d.lustre.it_lock_mode);
memcpy(&lockh, &old_lock, sizeof(old_lock));