i=eric.may
i=bzzz
1. access to a wrong page on echo server commit;
2. wrong lock type enqueue in echo client test_brw code;
3. wrong thread offset initialization in lctl test_brw code;
CERROR("cleaning up %d pages (%d obdos)\n",
niocount - pgs - 1, objcount);
CERROR("cleaning up %d pages (%d obdos)\n",
niocount - pgs - 1, objcount);
- while (pgs ++ < niocount) {
- cfs_page_t *page = res[pgs].page;
+ while (pgs < niocount) {
+ cfs_page_t *page = res[pgs++].page;
if (page == NULL)
continue;
if (page == NULL)
continue;
rc = cl_echo_enqueue0(env, eco, offset,
offset + npages * CFS_PAGE_SIZE - 1,
rc = cl_echo_enqueue0(env, eco, offset,
offset + npages * CFS_PAGE_SIZE - 1,
- rw == READ ? LCK_PW : LCK_PW, &lh.cookie,
+ rw == READ ? LCK_PR : LCK_PW, &lh.cookie,
CEF_NEVER);
if (rc < 0)
GOTO(error_lock, rc);
CEF_NEVER);
if (rc < 0)
GOTO(error_lock, rc);
obj_idx = (thread - 1)/nthr_per_obj;
objid += obj_idx;
stride *= nthr_per_obj;
obj_idx = (thread - 1)/nthr_per_obj;
objid += obj_idx;
stride *= nthr_per_obj;
+ if ((thread - 1) % nthr_per_obj == 0)
shared_data->offsets[obj_idx] = stride + thr_offset;
thr_offset += ((thread - 1) % nthr_per_obj) * len;
} else {
shared_data->offsets[obj_idx] = stride + thr_offset;
thr_offset += ((thread - 1) % nthr_per_obj) * len;
} else {