* cl_object_operations::coo_attr_get() is used.
*/
int (*coo_attr_update)(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned int valid);
+ const struct cl_attr *attr,
+ enum cl_attr_valid valid);
/**
* Mark the inode dirty. By this way, the inode will add into the
* writeback list of the corresponding @bdi_writeback, and then it will
int cl_object_attr_get(const struct lu_env *env, struct cl_object *obj,
struct cl_attr *attr);
int cl_object_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned int valid);
+ const struct cl_attr *attr,
+ enum cl_attr_valid valid);
void cl_object_dirty_for_sync(const struct lu_env *env, struct cl_object *obj);
int cl_object_glimpse(const struct lu_env *env, struct cl_object *obj,
struct ost_lvb *lvb);
int osc_attr_get(const struct lu_env *env, struct cl_object *obj,
struct cl_attr *attr);
int osc_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned int valid);
+ const struct cl_attr *attr, enum cl_attr_valid valid);
int osc_object_glimpse(const struct lu_env *env, const struct cl_object *obj,
struct ost_lvb *lvb);
int osc_object_invalidate(const struct lu_env *env, struct osc_object *osc);
struct cl_object *obj = io->ci_obj;
struct cl_attr *attr = vvp_env_new_attr(env);
int result;
- unsigned int valid = CAT_CTIME;
+ enum cl_attr_valid valid = CAT_CTIME;
cl_object_attr_lock(obj);
attr->cat_ctime = io->u.ci_setattr.sa_attr.lvb_ctime;
}
static int vvp_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned int valid)
+ const struct cl_attr *attr, enum cl_attr_valid valid)
{
struct inode *inode = vvp_object_inode(obj);
}
static int lov_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned valid)
+ const struct cl_attr *attr, enum cl_attr_valid valid)
{
/*
* No dispatch is required here, as no layout implements this.
}
static int lovsub_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned valid)
+ const struct cl_attr *attr,
+ enum cl_attr_valid valid)
{
struct lovsub_object *los = cl2lovsub(obj);
struct lov_object *lov = cl2lovsub(obj)->lso_super;
struct cl_object *obj = osc2cl(osc);
struct lov_oinfo *oinfo = osc->oo_oinfo;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
- unsigned valid = CAT_BLOCKS | CAT_ATIME | CAT_CTIME | CAT_MTIME |
- CAT_SIZE;
+ enum cl_attr_valid valid = CAT_BLOCKS | CAT_ATIME | CAT_CTIME |
+ CAT_MTIME | CAT_SIZE;
unsigned int setkms = 0;
ENTRY;
rc = cl_object_attr_get(env, obj, attr);
if (rc == 0) {
struct ost_lvb *lvb = &io->u.ci_setattr.sa_attr;
- unsigned int cl_valid = 0;
+ enum cl_attr_valid cl_valid = 0;
if (ia_avalid & ATTR_SIZE) {
attr->cat_size = size;
* to top.
*/
int cl_object_attr_update(const struct lu_env *env, struct cl_object *top,
- const struct cl_attr *attr, unsigned v)
+ const struct cl_attr *attr, enum cl_attr_valid v)
{
struct cl_object *obj;
int result = 0;
{
struct lov_oinfo *loi = cl2osc(obj)->oo_oinfo;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
- int valid;
+ enum cl_attr_valid valid;
__u64 kms;
ENTRY;
result = cl_object_attr_get(env, obj, attr);
if (result == 0) {
struct ost_lvb *lvb = &io->u.ci_setattr.sa_attr;
- unsigned int cl_valid = 0;
+ enum cl_attr_valid cl_valid = 0;
if (ia_avalid & ATTR_SIZE) {
attr->cat_size = size;
struct osc_async_cbargs *cbargs = &oio->oi_cbarg;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
struct obdo *oa = &oio->oi_oa;
- unsigned int cl_valid = 0;
+ enum cl_attr_valid cl_valid = 0;
int result = 0;
if (cbargs->opc_rpc_sent) {
struct osc_async_cbargs *cbargs = &oio->oi_cbarg;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
struct obdo *oa = &oio->oi_oa;
- unsigned int cl_valid = 0;
+ enum cl_attr_valid cl_valid = 0;
ENTRY;
wait_for_completion(&cbargs->opc_sync);
struct cl_object *obj = osc2cl(osc);
struct lov_oinfo *oinfo = osc->oo_oinfo;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
- unsigned valid, setkms = 0;
+ unsigned int setkms = 0;
+ enum cl_attr_valid valid;
ENTRY;
EXPORT_SYMBOL(osc_attr_get);
int osc_attr_update(const struct lu_env *env, struct cl_object *obj,
- const struct cl_attr *attr, unsigned valid)
+ const struct cl_attr *attr, enum cl_attr_valid valid)
{
struct lov_oinfo *oinfo = cl2osc(obj)->oo_oinfo;
struct ost_lvb *lvb = &oinfo->loi_lvb;
struct osc_fsync_args *fa = args;
struct ost_body *body;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
- unsigned long valid = 0;
+ enum cl_attr_valid valid = 0;
struct cl_object *obj;
ENTRY;
if (rc == 0) {
struct obdo *oa = aa->aa_oa;
struct cl_attr *attr = &osc_env_info(env)->oti_attr;
- unsigned long valid = 0;
+ enum cl_attr_valid valid = 0;
cl_object_attr_lock(obj);
if (oa->o_valid & OBD_MD_FLBLOCKS) {