LUSTRE_OPC_ANY = 5
};
-enum op_cli_flags {
- CLI_SET_MEA = 1 << 0,
- CLI_RM_ENTRY = 1 << 1,
- CLI_HASH64 = 1 << 2,
- CLI_API32 = 1 << 3,
- CLI_MIGRATE = 1 << 4,
-};
-
#endif /*LCLIENT_H */
#include <linux/proc_fs.h>
#include <linux/mount.h>
-struct ll_iattr {
- struct iattr iattr;
- unsigned int ia_attr_flags;
-};
-
#define CLIENT_OBD_LIST_LOCK_DEBUG 1
typedef struct {
return -EINVAL;
}
+enum md_cli_flags {
+ CLI_SET_MEA = 1 << 0,
+ CLI_RM_ENTRY = 1 << 1,
+ CLI_HASH64 = 1 << 2,
+ CLI_API32 = 1 << 3,
+ CLI_MIGRATE = 1 << 4,
+};
+
struct md_op_data {
struct lu_fid op_fid1; /* operation fid1 (usualy parent) */
struct lu_fid op_fid2; /* operation fid2 (usualy child) */
size_t op_data_size;
/* iattr fields and blocks. */
- struct iattr op_attr;
- __u64 op_valid;
+ struct iattr op_attr;
loff_t op_attr_blocks;
+ unsigned int op_attr_flags; /* LUSTRE_{SYNC,..}_FL */
+ __u64 op_valid; /* OBD_MD_* */
/* Size-on-MDS epoch and flags. */
__u64 op_ioepoch;
- __u32 op_flags;
+ enum md_op_flags op_flags;
/* Capa fields */
struct obd_capa *op_capa1;
enum mds_op_bias op_bias;
/* Used by readdir */
- __u32 op_npages;
+ unsigned int op_max_pages;
/* used to transfer info between the stacks of MD client
* see enum op_cli_flags */
- __u32 op_cli_flags;
+ enum md_cli_flags op_cli_flags;
/* File object data version for HSM release, on client */
__u64 op_data_version;
struct lustre_handle op_lease_handle;
};
-#define op_stripe_offset op_ioepoch
-#define op_max_pages op_valid
-
struct md_callback {
int (*md_blocking_ast)(struct ldlm_lock *lock,
struct ldlm_lock_desc *desc,
op_data->op_attr.ia_ctime = inode->i_ctime;
op_data->op_attr.ia_size = i_size_read(inode);
op_data->op_attr_blocks = inode->i_blocks;
- ((struct ll_iattr *)&op_data->op_attr)->ia_attr_flags =
- ll_inode_to_ext_flags(inode->i_flags);
+ op_data->op_attr_flags = ll_inode_to_ext_flags(inode->i_flags);
op_data->op_ioepoch = ll_i2info(inode)->lli_ioepoch;
if (fh)
op_data->op_handle = *fh;
if (IS_ERR(op_data))
RETURN(PTR_ERR(op_data));
- ((struct ll_iattr *)&op_data->op_attr)->ia_attr_flags = flags;
+ op_data->op_attr_flags = flags;
op_data->op_attr.ia_valid |= ATTR_ATTR_FLAG;
rc = md_setattr(sbi->ll_md_exp, op_data,
NULL, 0, NULL, 0, &req, NULL);
/**
*FIXME choose the start offset of the readdir
*/
- op_data->op_stripe_offset = 0;
op_data->op_max_pages = ll_i2sbi(dir)->ll_md_brw_pages;
ll_dir_chain_init(&chain);
#include <lustre_lmv.h>
#include <lprocfs_status.h>
#include <cl_object.h>
-#include <lclient.h>
#include <lustre_fid.h>
#include <lustre_ioctl.h>
#include "lmv_internal.h"
/* op_data will be shared by each stripe, so we need
* reset these value for each stripe */
- op_data->op_stripe_offset = i;
op_data->op_fid1 = lsm->lsm_md_oinfo[i].lmo_fid;
op_data->op_fid2 = lsm->lsm_md_oinfo[i].lmo_fid;
op_data->op_data = lsm->lsm_md_oinfo[i].lmo_root;
#include <obd_class.h>
#include <obd.h>
#include <cl_object.h>
-#include <lclient.h>
#include "mdc_internal.h"
rec->sa_atime = LTIME_S(op_data->op_attr.ia_atime);
rec->sa_mtime = LTIME_S(op_data->op_attr.ia_mtime);
rec->sa_ctime = LTIME_S(op_data->op_attr.ia_ctime);
- rec->sa_attr_flags =
- ((struct ll_iattr *)&op_data->op_attr)->ia_attr_flags;
+ rec->sa_attr_flags = op_data->op_attr_flags;
if ((op_data->op_attr.ia_valid & ATTR_GID) &&
in_group_p(op_data->op_attr.ia_gid))
rec->sa_suppgid =
#include <lustre_param.h>
#include <lustre_log.h>
#include <cl_object.h>
-#include <lclient.h>
#include "mdc_internal.h"
LU_PAGE_SHIFT;
LASSERT(!(req->rq_bulk->bd_nob_transferred & ~LU_PAGE_MASK));
- CDEBUG(D_INODE, "read %d(%d)/%d pages\n", rd_pgs, lu_pgs,
- op_data->op_npages);
+ CDEBUG(D_INODE, "read %d(%d) pages\n", rd_pgs, lu_pgs);
mdc_adjust_dirpages(page_pool, rd_pgs, lu_pgs);
op_data->op_attr.ia_valid |= ATTR_BLOCKS;
}
if (valid & OBD_MD_FLFLAGS) {
- ((struct ll_iattr *)&op_data->op_attr)->ia_attr_flags =
- oa->o_flags;
+ op_data->op_attr_flags = oa->o_flags;
op_data->op_attr.ia_valid |= ATTR_ATTR_FLAG;
}
}