@@ -41,27 +41,27 @@
#define REGULAR_PACKET_CHECK_MS 3000
/*
- + CompareState ++
- | |
- +---------------+ +---------------+ +---------------+
- |conn list +--->conn +--------->conn |
- +---------------+ +---------------+ +---------------+
- | | | | | |
- +---------------+ +---v----+ +---v----+ +---v----+ +---v----+
- |primary | |secondary |primary | |secondary
- |packet | |packet + |packet | |packet +
- +--------+ +--------+ +--------+ +--------+
- | | | |
- +---v----+ +---v----+ +---v----+ +---v----+
- |primary | |secondary |primary | |secondary
- |packet | |packet + |packet | |packet +
- +--------+ +--------+ +--------+ +--------+
- | | | |
- +---v----+ +---v----+ +---v----+ +---v----+
- |primary | |secondary |primary | |secondary
- |packet | |packet + |packet | |packet +
- +--------+ +--------+ +--------+ +--------+
-*/
+ * + CompareState ++
+ * | |
+ * +---------------+ +---------------+ +---------------+
+ * | conn list + - > conn + ------- > conn + -- > ......
+ * +---------------+ +---------------+ +---------------+
+ * | | | | | |
+ * +---------------+ +---v----+ +---v----+ +---v----+ +---v----+
+ * |primary | |secondary |primary | |secondary
+ * |packet | |packet + |packet | |packet +
+ * +--------+ +--------+ +--------+ +--------+
+ * | | | |
+ * +---v----+ +---v----+ +---v----+ +---v----+
+ * |primary | |secondary |primary | |secondary
+ * |packet | |packet + |packet | |packet +
+ * +--------+ +--------+ +--------+ +--------+
+ * | | | |
+ * +---v----+ +---v----+ +---v----+ +---v----+
+ * |primary | |secondary |primary | |secondary
+ * |packet | |packet + |packet | |packet +
+ * +--------+ +--------+ +--------+ +--------+
+ */
typedef struct CompareState {
Object parent;
@@ -75,14 +75,14 @@ typedef struct CompareState {
SocketReadState sec_rs;
bool vnet_hdr;
- /* connection list: the connections belonged to this NIC could be found
- * in this list.
- * element type: Connection
+ /*
+ * Record the connection that through the NIC
+ * Element type: Connection
*/
GQueue conn_list;
- /* hashtable to save connection */
+ /* Record the connection without repetition */
GHashTable *connection_track_table;
- /* compare thread, a thread for each NIC */
+ /* This thread just do packet compare job */
QemuThread thread;
GMainContext *worker_context;
@@ -445,8 +445,11 @@ static int colo_old_packet_check_one_conn(Connection *conn,
(GCompareFunc)colo_old_packet_check_one);
if (result) {
- /* do checkpoint will flush old packet */
- /* TODO: colo_notify_checkpoint();*/
+ /* Do checkpoint will flush old packet */
+ /*
+ * TODO: Notify colo frame to do checkpoint.
+ * colo_compare_inconsistent_notify();
+ */
return 0;
}
Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com> --- net/colo-compare.c | 59 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 31 insertions(+), 28 deletions(-)