obd_flag flag;
};
+struct lov_oinfo { /* per-child structure */
+ __u64 loi_id;
+ __u64 loi_size;
+};
+
+struct lov_stripe_md {
+ __u32 lmd_magic;
+ __u32 lmd_easize; /* packed size for MDS of ea */
+ __u64 lmd_object_id; /* lov object id */
+ __u64 lmd_stripe_offset; /* offset of the stripe */
+ __u64 lmd_stripe_size; /* size of the stripe */
+ __u32 lmd_stripe_count; /* how many objects are being striped */
+ __u32 lmd_stripe_pattern; /* per-lov object stripe pattern */
+ struct lov_oinfo lmd_oinfo[0];
+};
+
+struct lov_stripe_md_one {
+ __u32 lmd_magic;
+ __u32 lmd_easize; /* packed size for MDS of ea */
+ __u64 lmd_object_id; /* lov object id */
+ __u64 lmd_stripe_offset; /* offset of the stripe */
+ __u64 lmd_stripe_size; /* size of the stripe */
+ __u32 lmd_stripe_count; /* how many objects are being striped */
+ __u32 lmd_stripe_pattern; /* per-lov object stripe pattern */
+ struct lov_oinfo lmd_oinfo[1];
+};
+
/* Individual type definitions */
struct ext2_obd {
struct recovd_obd {
time_t recovd_waketime;
time_t recovd_timeout;
- struct ptlrpc_service *recovd_service;
- struct ptlrpc_client *recovd_client;
- __u32 recovd_flags;
- __u32 recovd_wakeup_flag;
- spinlock_t recovd_lock;
- struct list_head recovd_clients_lh; /* clients managed */
- struct list_head recovd_troubled_lh; /* clients in trouble */
+ __u32 recovd_flags;
+ __u32 recovd_wakeup_flag;
+ spinlock_t recovd_lock;
+ struct list_head recovd_managed_items; /* items managed */
+ struct list_head recovd_troubled_items; /* items in trouble */
wait_queue_head_t recovd_recovery_waitq;
wait_queue_head_t recovd_ctl_waitq;
wait_queue_head_t recovd_waitq;
int (*o_cancel)(struct lustre_handle *, struct lov_stripe_md *md, __u32 mode, struct lustre_handle *);
};
+/* FIXME: for 64-bit arch */
+#define LPU64 "%Lu"
+#define LPD64 "%Ld"
+#define LPX64 "%Lx"
+
#endif