1 /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
2 * vim:expandtab:shiftwidth=8:tabstop=8:
4 * Copyright (C) 2001 Cluster File Systems, Inc.
6 * This code is issued under the GNU General Public License.
7 * See the file COPYING in this distribution
16 #define IMP_REPLAYABLE 2
18 typedef int (*import_recover_t)(struct obd_import *imp, int phase);
20 #include <linux/lustre_idl.h>
23 import_recover_t imp_recover;
24 struct ptlrpc_connection *imp_connection;
25 struct ptlrpc_client *imp_client;
26 struct lustre_handle imp_handle;
27 struct list_head imp_chain;
29 /* Lists of requests that are retained for replay, waiting for a reply,
30 * or waiting for recovery to complete, respectively.
32 struct list_head imp_replay_list;
33 struct list_head imp_sending_list;
34 struct list_head imp_delayed_list;
36 struct obd_device *imp_obd;
40 __u64 imp_last_bulk_xid;
41 __u64 imp_max_transno;
42 __u64 imp_peer_committed_transno;
44 /* Protects flags, level, last_xid, *_list */
48 extern struct obd_import *class_conn2cliimp(struct lustre_handle *);
49 extern struct obd_import *class_conn2ldlmimp(struct lustre_handle *);
51 #endif /* __KERNEL__ */
53 #endif /* __IMPORT_H */