The totally non-controversial parts of my outstanding mds epoch code.
- add I/O epoch fields to the mds_body, mds_obd, and ll_inode_info
- store the epoch in the LLI after a successful open
- add a data structure, which will go into an MDS inode's i_filterdata
#ifndef _MDS_INTERNAL_H
#define _MDS_INTERNAL_H
+
+struct mds_filter_data {
+ __u64 io_epoch;
+};
+
+#define MDS_FILTERDATA(inode) ((struct mds_filter_data *)(inode)->i_filterdata)
+
static inline struct mds_obd *mds_req2mds(struct ptlrpc_request *req)
{
return &req->rq_export->exp_obd->u.mds;