if (!S_ISREG(dt->do_lu.lo_header->loh_attr))
valid &= ~(LA_SIZE | LA_BLOCKS);
+ if (valid & LA_CTIME && la->la_ctime == obj->oo_attr.la_ctime)
+ valid &= ~LA_CTIME;
+
+ if (valid & LA_MTIME && la->la_mtime == obj->oo_attr.la_mtime)
+ valid &= ~LA_MTIME;
+
+ if (valid & LA_ATIME && la->la_atime == obj->oo_attr.la_atime)
+ valid &= ~LA_ATIME;
+
if (valid == 0)
GOTO(out, rc = 0);
LASSERT(osd_invariant(obj));
rc = osd_init_lma(env, obj, fid, oh);
- if (rc) {
+ if (rc != 0)
CERROR("%s: can not set LMA on "DFID": rc = %d\n",
osd->od_svname, PFID(fid), rc);
- /* ignore errors during LMA initialization */
- rc = 0;
- }
out:
up_write(&obj->oo_guard);