if (opc == OST_READ)
pa.lpa_mode |= LCK_PR;
- DEBUG_REQ(D_RPCTRACE, req, "%s %s: refresh rw locks: "DFID"\n",
+ DEBUG_REQ(D_RPCTRACE, req, "%s %s: refresh rw locks for " DFID,
tgt_name(tsi->tsi_tgt), current->comm, PFID(&tsi->tsi_fid));
mdt_prolong_dom_lock(tsi, &pa);
if (pa.lpa_blocks_cnt > 0) {
CDEBUG(D_DLMTRACE,
- "%s: refreshed %u locks timeout for req %p.\n",
+ "%s: refreshed %u locks timeout for req %p",
tgt_name(tsi->tsi_tgt), pa.lpa_blocks_cnt, req);
RETURN(1);
}
{
struct dt_object *dob;
int i, j, rc, tot_bytes = 0;
+ int maxlnb = *nr_local;
int level;
ENTRY;
dob = mdt_obj2dt(mo);
/* parse remote buffers to local buffers and prepare the latter */
for (i = 0, j = 0; i < niocount; i++) {
- rc = dt_bufs_get(env, dob, rnb + i, lnb + j, 0);
+ rc = dt_bufs_get(env, dob, rnb + i, lnb + j, maxlnb, 0);
if (unlikely(rc < 0))
GOTO(buf_put, rc);
/* correct index for local buffers to continue with */
j += rc;
+ maxlnb -= rc;
*nr_local += rc;
tot_bytes += rnb[i].rnb_len;
}
{
struct dt_object *dob;
int i, j, k, rc = 0, tot_bytes = 0;
+ int maxlnb = *nr_local;
ENTRY;
dob = mdt_obj2dt(mo);
/* parse remote buffers to local buffers and prepare the latter */
for (i = 0, j = 0; i < obj->ioo_bufcnt; i++) {
- rc = dt_bufs_get(env, dob, rnb + i, lnb + j, 1);
+ rc = dt_bufs_get(env, dob, rnb + i, lnb + j, maxlnb, 1);
if (unlikely(rc < 0))
GOTO(err, rc);
/* correct index for local buffers to continue with */
lnb[j + k].lnb_rc = -ENOSPC;
}
j += rc;
+ maxlnb -= rc;
*nr_local += rc;
tot_bytes += rnb[i].rnb_len;
}
ENTRY;
/* check that we do support OBD_CONNECT_TRUNCLOCK. */
- CLASSERT(OST_CONNECT_SUPPORTED & OBD_CONNECT_TRUNCLOCK);
+ BUILD_BUG_ON(!(OST_CONNECT_SUPPORTED & OBD_CONNECT_TRUNCLOCK));
if ((oa->o_valid & (OBD_MD_FLSIZE | OBD_MD_FLBLOCKS)) !=
(OBD_MD_FLSIZE | OBD_MD_FLBLOCKS))
if (lnb == NULL)
GOTO(unlock, rc = -ENOMEM);
- rc = dt_bufs_get(env, mo, rnb, lnb, 0);
+ rc = dt_bufs_get(env, mo, rnb, lnb, lnbs, 0);
if (unlikely(rc < 0))
GOTO(free, rc);
LASSERT(rc <= lnbs);