]> err.no Git - linux-2.6/blobdiff - fs/ocfs2/cluster/tcp_internal.h
ext[234]: use ext[234]_get_group_desc()
[linux-2.6] / fs / ocfs2 / cluster / tcp_internal.h
index 775c911342f4ddaab9444a6f16559e77f03f4e5b..b2e832aca5679cc1bd52d05c826d59cff1954fbb 100644 (file)
  * locking semantics of the file system using the protocol.  It should 
  * be somewhere else, I'm sure, but right now it isn't.
  *
+ * New in version 10:
+ *     - Meta/data locks combined
+ *
+ * New in version 9:
+ *     - All votes removed
+ *
+ * New in version 8:
+ *     - Replace delete inode votes with a cluster lock
+ *
+ * New in version 7:
+ *     - DLM join domain includes the live nodemap
+ *
  * New in version 6:
  *     - DLM lockres remote refcount fixes.
  *
@@ -54,7 +66,7 @@
  *     - full 64 bit i_size in the metadata lock lvbs
  *     - introduction of "rw" lock and pushing meta/data locking down
  */
-#define O2NET_PROTOCOL_VERSION 6ULL
+#define O2NET_PROTOCOL_VERSION 10ULL
 struct o2net_handshake {
        __be64  protocol_version;
        __be64  connector_id;
@@ -152,6 +164,8 @@ struct o2net_sock_container {
        struct timeval          sc_tv_func_stop;
        u32                     sc_msg_key;
        u16                     sc_msg_type;
+
+       struct mutex            sc_send_lock;
 };
 
 struct o2net_msg_handler {
@@ -161,6 +175,8 @@ struct o2net_msg_handler {
        u32                     nh_key;
        o2net_msg_handler_func  *nh_func;
        o2net_msg_handler_func  *nh_func_data;
+       o2net_post_msg_handler_func
+                               *nh_post_func;
        struct kref             nh_kref;
        struct list_head        nh_unregister_item;
 };