Whamcloud - gitweb
Updating b_narasimd branch.
authornarasimd <narasimd>
Wed, 11 Dec 2002 06:48:16 +0000 (06:48 +0000)
committernarasimd <narasimd>
Wed, 11 Dec 2002 06:48:16 +0000 (06:48 +0000)
lustre/include/linux/lustre_import.h

index 13b39b7..0f0d67d 100644 (file)
 #define IMP_INVALID       1
 #define IMP_REPLAYABLE    2
 
+typedef int (*import_recover_t)(struct obd_import *imp, int phase);
+
 #include <linux/lustre_idl.h>
 struct obd_import {
+        import_recover_t          imp_recover;
         struct ptlrpc_connection *imp_connection;
         struct ptlrpc_client     *imp_client;
         struct lustre_handle      imp_handle;
         struct list_head          imp_chain;
+
+        /* Lists of requests that are retained for replay, waiting for a reply,
+         * or waiting for recovery to complete, respectively.
+         */
+        struct list_head          imp_replay_list;
+        struct list_head          imp_sending_list;
+        struct list_head          imp_delayed_list;
+
         struct obd_device        *imp_obd;
         int                       imp_flags;
-        /* XXX need a UUID here, I think, unless we just use the OBD's UUID */
+        int                       imp_level;
+        __u64                     imp_last_xid;
+        __u64                     imp_max_transno;
+        __u64                     imp_peer_last_xid;
+        __u64                     imp_peer_committed_transno;
+
+        /* Protects flags, level, *_xid, *_list */
+        spinlock_t                imp_lock;
 };
 
 extern struct obd_import *class_conn2cliimp(struct lustre_handle *);