#ifndef _LUSTRE_HA_H
#define _LUSTRE_HA_H
-#include <linux/lustre_net.h>
-
-#define MGR_STOPPING 1
-#define MGR_RUNNING 2
-#define MGR_STOPPED 4
-#define MGR_KILLED 8
-#define MGR_EVENT 16
-#define MGR_WORKING 32
-#define MGR_SIGNAL 64
-
#define LUSTRE_HA_NAME "ptlrpc"
-#define CONNMGR_CONNECT 1
-
-extern struct recovd_obd *ptlrpc_connmgr;
-
-struct connmgr_thread {
- struct recovd_obd *mgr;
- char *name;
+struct recovd_data {
+ struct list_head rd_managed_chain;
+ int (*rd_recover)(struct recovd_data *);
};
-struct connmgr_body {
- __u64 conn;
- __u64 conn_token;
- __u32 generation;
- __u8 conn_uuid[37];
-};
+struct recovd_obd;
+struct ptlrpc_connection;
-int connmgr_connect(struct recovd_obd *mgr, struct ptlrpc_connection *conn);
-int connmgr_handle(struct obd_device *dev, struct ptlrpc_service *svc,
- struct ptlrpc_request *req);
-void connmgr_cli_fail(struct ptlrpc_client *cli);
-void connmgr_cli_manage(struct recovd_obd *mgr, struct ptlrpc_client *cli);
+void recovd_conn_fail(struct ptlrpc_connection *conn);
+void recovd_conn_manage(struct recovd_obd *mgr, struct ptlrpc_connection *conn);
+void recovd_conn_fixed(struct ptlrpc_connection *conn);
int recovd_setup(struct recovd_obd *mgr);
int recovd_cleanup(struct recovd_obd *mgr);