__u32 type;
__u32 version;
__u32 opc;
- __u64 last_rcvd;
+ __u64 last_xid;
__u64 last_committed;
__u64 transno;
__u32 status;
#define OBD_FL_INLINEDATA (0x00000001)
#define OBD_FL_OBDMDEXISTS (0x00000002)
-#define OBD_FL_CREATEONOPEN (0x00000004)
#define OBD_INLINESZ 60
__u32 repbuf;
};
+struct mds_fileh_body {
+ struct ll_fid f_fid;
+ struct lustre_handle f_handle;
+};
+
struct mds_conn_status {
struct ll_fid rootfid;
__u64 xid;
__u32 ino;
__u32 nlink;
__u32 generation;
- __u32 last_xid;
+ __u32 last_xidnomore;
};
/* MDS update records */
-struct mds_update_record_hdr {
- __u32 ur_opcode;
-};
+
+
+//struct mds_update_record_hdr {
+// __u32 ur_opcode;
+//};
struct mds_rec_setattr {
__u32 sa_opcode;
- struct ll_fid sa_fid;
__u32 sa_valid;
+ struct ll_fid sa_fid;
__u32 sa_mode;
__u32 sa_uid;
__u32 sa_gid;
+ __u32 sa_attr_flags;
__u64 sa_size;
__u64 sa_atime;
__u64 sa_mtime;
__u64 sa_ctime;
- __u32 sa_attr_flags;
};
struct mds_rec_create {
__u32 cr_opcode;
+ __u32 cr_mode;
struct ll_fid cr_fid;
__u32 cr_uid;
__u32 cr_gid;
__u64 cr_time;
- __u32 cr_mode;
__u64 cr_rdev;
};
struct mds_rec_link {
__u32 lk_opcode;
+ __u32 lk_reserved;
struct ll_fid lk_fid1;
struct ll_fid lk_fid2;
};
struct mds_rec_unlink {
__u32 ul_opcode;
+ __u32 ul_mode;
struct ll_fid ul_fid1;
struct ll_fid ul_fid2;
};
struct mds_rec_rename {
__u32 rn_opcode;
+ __u32 rn_reserved;
struct ll_fid rn_fid1;
struct ll_fid rn_fid2;
};
#define LDLM_ENQUEUE 101
#define LDLM_CONVERT 102
#define LDLM_CANCEL 103
-#define LDLM_CALLBACK 104
+#define LDLM_BL_CALLBACK 104
+#define LDLM_CP_CALLBACK 105
#define RES_NAME_SIZE 3
#define RES_VERSION_SIZE 4
__u64 opc;
};
+/* Note this unaligned structure; as long as it's only used in ldlm_request
+ * below, we're probably fine. */
struct ldlm_resource_desc {
__u32 lr_type;
__u64 lr_name[RES_NAME_SIZE];
struct ldlm_reply {
__u32 lock_flags;
+ __u32 lock_mode;
__u64 lock_resource_name[RES_NAME_SIZE];
struct lustre_handle lock_handle;
struct ldlm_extent lock_extent; /* XXX make this policy 1 &2 */