buf->lb_buf = lmu;
buf->lb_len = ma->ma_lmv_size;
- if (le32_to_cpu(lmu->lum_hash_type) ==
- LMV_HASH_TYPE_SPACE) {
+ if (le32_to_cpu(lmu->lum_hash_type) &
+ LMV_HASH_FLAG_SPACE) {
/*
- * only allow setting "space" hash type for
+ * only allow setting "space" hash flag on
* plain directory.
*/
rc = mdt_object_striped(info, mo);
if (!cos_incompat) {
rc = mdt_object_striped(info, mc);
if (rc < 0)
- GOTO(unlock_parent, rc);
+ GOTO(put_child, rc);
cos_incompat = rc;
if (cos_incompat) {
mdt_object_unlock(info, mp, parent_lh, rc);
put_parent:
mdt_object_put(info->mti_env, mp);
+ CFS_RACE_WAKEUP(OBD_FAIL_OBD_ZERO_NLINK_RACE);
return rc;
}