#define OBD_INCOMPAT_FID 0x00000010 /* FID is enabled */
#define OBD_INCOMPAT_SOM 0x00000020 /* Size-On-MDS is enabled */
+#define LR_EXPIRE_INTERVALS 16 /**< number of intervals to track transno */
/* Data stored per server at the head of the last_rcvd file. In le32 order.
This should be common to filter_internal.h, lustre_mds.h */
struct lr_server_data {
__u32 lsd_ost_index; /* index number of OST in LOV */
__u32 lsd_mdt_index; /* index number of MDT in LMV */
__u32 lsd_start_epoch; /* VBR: start epoch from last boot */
- __u8 lsd_padding[LR_SERVER_SIZE - 152];
+ /** transaction values since lsd_trans_table_time */
+ __u64 lsd_trans_table[LR_EXPIRE_INTERVALS];
+ /** start point of transno table below */
+ __u32 lsd_trans_table_time; /* time of first slot in table above */
+ __u32 lsd_expire_intervals; /* LR_EXPIRE_INTERVALS */
+ __u8 lsd_padding[LR_SERVER_SIZE - 288];
};
/* Data stored per client in the last_rcvd file. In le32 order. */
/* VBR: last versions */
__u64 lcd_pre_versions[4];
__u32 lcd_last_epoch;
- __u32 lcd_last_time;
+ /** orphans handling for delayed export rely on that */
+ __u32 lcd_first_epoch;
__u8 lcd_padding[LR_CLIENT_SIZE - 128];
};