- while lock handling, the flags obtained on the enqueue
request are set here.
- while stats, the flags used for control delay/resend.
+ - while setattr, the flags used for distinguish punch operation
*/
int oi_flags;
/* Lock handle specific for every OSC lock. */
struct ost_server_data;
+struct osd_properties {
+ size_t osd_max_ea_size;
+};
+
#define OBT_MAGIC 0xBDDECEAE
/* hold common fields for "target" device */
struct obd_device_target {
cfs_rw_semaphore_t obt_rwsem;
struct vfsmount *obt_vfsmnt;
struct file *obt_health_check_filp;
+ struct osd_properties obt_osd_properties;
};
/* llog contexts */
obd_size fo_readcache_max_filesize;
cfs_spinlock_t fo_flags_lock;
- int fo_read_cache:1, /**< enable read-only cache */
+ unsigned int fo_read_cache:1, /**< enable read-only cache */
fo_writethrough_cache:1,/**< read cache writes */
fo_mds_ost_sync:1, /**< MDS-OST orphan recovery*/
fo_raid_degraded:1;/**< RAID device degraded */
cfs_waitq_t cl_destroy_waitq;
struct mdc_rpc_lock *cl_rpc_lock;
- struct mdc_rpc_lock *cl_setattr_lock;
struct mdc_rpc_lock *cl_close_lock;
struct osc_creator cl_oscc;
/* */
struct echo_obd {
- struct obdo eo_oa;
- cfs_spinlock_t eo_lock;
- __u64 eo_lastino;
- struct lustre_handle eo_nl_lock;
- cfs_atomic_t eo_prep;
+ struct obd_device_target eo_obt;
+ struct obdo eo_oa;
+ cfs_spinlock_t eo_lock;
+ __u64 eo_lastino;
+ struct lustre_handle eo_nl_lock;
+ cfs_atomic_t eo_prep;
};
struct ost_obd {
struct md_op_data mi_data;
struct lookup_intent mi_it;
struct lustre_handle mi_lockh;
- struct dentry *mi_dentry;
struct inode *mi_dir;
md_enqueue_cb_t mi_cb;
+ __u64 mi_cbdata;
unsigned int mi_generation;
- void *mi_cbdata;
};
struct obd_ops {
struct ptlrpc_request *);
int (*m_clear_open_replay_data)(struct obd_export *,
struct obd_client_handle *);
- int (*m_set_lock_data)(struct obd_export *, __u64 *, void *, __u32 *);
+ int (*m_set_lock_data)(struct obd_export *, __u64 *, void *, __u64 *);
ldlm_mode_t (*m_lock_match)(struct obd_export *, int,
const struct lu_fid *, ldlm_type_t,
struct ldlm_enqueue_info *);
int (*m_revalidate_lock)(struct obd_export *, struct lookup_intent *,
- struct lu_fid *);
+ struct lu_fid *, __u64 *bits);
/*
* NOTE: If adding ops, add another LPROCFS_MD_OP_INIT() line to