Przeglądaj źródła

Checkpoint synchronization patch from Muni Bajpai.

(Logical change 1.146)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@517 fd59a12c-fef9-0310-b244-a6a79926bd2f
Steven Dake 21 lat temu
rodzic
commit
fb67519e32
3 zmienionych plików z 805 dodań i 63 usunięć
  1. 777 60
      exec/ckpt.c
  2. 23 0
      include/ipc_ckpt.h
  3. 5 3
      include/ipc_gen.h

Plik diff jest za duży
+ 777 - 60
exec/ckpt.c


+ 23 - 0
include/ipc_ckpt.h

@@ -37,6 +37,8 @@
 #include "../include/ipc_gen.h"
 #include "../include/ais_types.h"
 #include "../include/saCkpt.h"
+#include "../exec/totemsrp.h"
+#include "../exec/ckpt.h"
 
 enum req_lib_ckpt_checkpoint_types {
 	MESSAGE_REQ_CKPT_CHECKPOINT_CHECKPOINTOPEN = 1,
@@ -326,4 +328,25 @@ struct res_lib_ckpt_checkpointsynchronizeasync {
 	struct res_header header;
 };
 
+struct req_exec_ckpt_synchronize_state {
+	struct req_header header;
+	struct memb_ring_id previous_ring_id;
+	SaNameT checkpointName;
+	SaCkptCheckpointCreationAttributesT checkpointCreationAttributes;
+	SaCkptSectionDescriptorT sectionDescriptor;	
+	struct in_addr source_addr;
+	struct ckpt_refcnt ckpt_refcount[PROCESSOR_COUNT_MAX];
+};
+
+struct req_exec_ckpt_synchronize_section {
+	struct req_header header;
+	struct memb_ring_id previous_ring_id;
+	SaNameT checkpointName;
+	SaCkptSectionIdT sectionId;	
+	SaUint32T dataOffSet;
+	SaUint32T dataSize;	
+};
+
+
+
 #endif /* IPC_CKPT_H_DEFINED */

+ 5 - 3
include/ipc_gen.h

@@ -70,9 +70,11 @@ enum nodeexec_message_types {
 		MESSAGE_REQ_EXEC_CKPT_SECTIONWRITE = 17,
 		MESSAGE_REQ_EXEC_CKPT_SECTIONOVERWRITE = 18,
 		MESSAGE_REQ_EXEC_CKPT_SECTIONREAD = 19,
-		MESSAGE_REQ_EXEC_EVT_EVENTDATA = 20,
-		MESSAGE_REQ_EXEC_EVT_CHANCMD = 21,
-		MESSAGE_REQ_EXEC_EVT_RECOVERY_EVENTDATA = 22
+		MESSAGE_REQ_EXEC_CKPT_SYNCHRONIZESTATE = 20,
+		MESSAGE_REQ_EXEC_CKPT_SYNCHRONIZESECTION = 21,
+		MESSAGE_REQ_EXEC_EVT_EVENTDATA = 22,
+		MESSAGE_REQ_EXEC_EVT_CHANCMD = 23,
+		MESSAGE_REQ_EXEC_EVT_RECOVERY_EVENTDATA = 24
 };
 
 struct req_header {

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików