- if (oio->oi_oa.o_valid & OBD_MD_LAYOUT_VERSION)
- dv->dv_layout_version = oio->oi_oa.o_layout_version;
- if (oio->oi_oa.o_valid & OBD_MD_FLDATAVERSION)
- dv->dv_data_version = oio->oi_oa.o_data_version;
+ if (oa->o_valid & OBD_MD_LAYOUT_VERSION)
+ dv->dv_layout_version = oa->o_layout_version;
+ if (oa->o_valid & OBD_MD_FLDATAVERSION)
+ dv->dv_data_version = oa->o_data_version;
+
+ if (dv->dv_flags & LL_DV_SZ_UPDATE) {
+ if (oa->o_valid & OBD_MD_FLSIZE) {
+ attr->cat_size = oa->o_size;
+ cl_valid |= CAT_SIZE;
+ }
+
+ if (oa->o_valid & OBD_MD_FLBLOCKS) {
+ attr->cat_blocks = oa->o_blocks;
+ cl_valid |= CAT_BLOCKS;
+ }
+
+ cl_object_attr_lock(obj);
+ cl_object_attr_update(env, obj, attr, cl_valid);
+ cl_object_attr_unlock(obj);
+ }