X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Fmdd%2Fmdd_object.c;h=2ae3f5347e1badb48a7669c4475b43f2ac3425ff;hp=ecfe82bb7d0bd63ef4bbb149476b03f065399849;hb=383f5453a8c3a903b0fd2239dd3922c75d9a76b2;hpb=97941a4de15d8b2939a7b8c8460dbe39e4dff0d8 diff --git a/lustre/mdd/mdd_object.c b/lustre/mdd/mdd_object.c index ecfe82b..2ae3f53 100644 --- a/lustre/mdd/mdd_object.c +++ b/lustre/mdd/mdd_object.c @@ -1680,8 +1680,13 @@ static int mdd_xattr_set(const struct lu_env *env, struct md_object *obj, rc = mdd_xattr_set_txn(env, mdd_obj, buf, name, fl, handle); - /* Only record user xattr changes */ - if ((rc == 0) && (strncmp("user.", name, 5) == 0)) + /* Only record system & user xattr changes */ + if ((rc == 0) && (strncmp(XATTR_USER_PREFIX, name, + sizeof(XATTR_USER_PREFIX) - 1) == 0 || + strncmp(POSIX_ACL_XATTR_ACCESS, name, + sizeof(POSIX_ACL_XATTR_ACCESS) - 1) == 0 || + strncmp(POSIX_ACL_XATTR_DEFAULT, name, + sizeof(POSIX_ACL_XATTR_DEFAULT) - 1) == 0)) rc = mdd_changelog_data_store(env, mdd, CL_XATTR, 0, mdd_obj, handle); mdd_trans_stop(env, mdd, rc, handle); @@ -1716,8 +1721,13 @@ int mdd_xattr_del(const struct lu_env *env, struct md_object *obj, mdd_object_capa(env, mdd_obj)); mdd_write_unlock(env, mdd_obj); - /* Only record user xattr changes */ - if ((rc == 0) && (strncmp("user.", name, 5) != 0)) + /* Only record system & user xattr changes */ + if ((rc == 0) && (strncmp(XATTR_USER_PREFIX, name, + sizeof(XATTR_USER_PREFIX) - 1) == 0 || + strncmp(POSIX_ACL_XATTR_ACCESS, name, + sizeof(POSIX_ACL_XATTR_ACCESS) - 1) == 0 || + strncmp(POSIX_ACL_XATTR_DEFAULT, name, + sizeof(POSIX_ACL_XATTR_DEFAULT) - 1) == 0)) rc = mdd_changelog_data_store(env, mdd, CL_XATTR, 0, mdd_obj, handle);