- char *mbox_ctl = get_mig_mbox_ctl(sg_host_name(vm), sg_host_name(src_pm), sg_host_name(dst_pm));
-
- {
- char *pr_name = get_mig_process_rx_name(sg_host_name(vm), sg_host_name(src_pm), sg_host_name(dst_pm));
- int nargvs = 5;
- char **argv = xbt_new(char *, nargvs);
- argv[0] = xbt_strdup(pr_name);
- argv[1] = xbt_strdup(sg_host_name(vm));
- argv[2] = xbt_strdup(sg_host_name(src_pm));
- argv[3] = xbt_strdup(sg_host_name(dst_pm));
- argv[4] = NULL;
-
- MSG_process_create_with_arguments(pr_name, migration_rx_fun, NULL, dst_pm, nargvs - 1, argv);
-
- xbt_free(pr_name);
- }
-
- {
- char *pr_name = get_mig_process_tx_name(sg_host_name(vm), sg_host_name(src_pm), sg_host_name(dst_pm));
- int nargvs = 5;
- char **argv = xbt_new(char *, nargvs);
- argv[0] = xbt_strdup(pr_name);
- argv[1] = xbt_strdup(sg_host_name(vm));
- argv[2] = xbt_strdup(sg_host_name(src_pm));
- argv[3] = xbt_strdup(sg_host_name(dst_pm));
- argv[4] = NULL;
- MSG_process_create_with_arguments(pr_name, migration_tx_fun, NULL, src_pm, nargvs - 1, argv);
-
- xbt_free(pr_name);
- }
+ struct migration_session *ms = xbt_new(struct migration_session, 1);
+ ms->vm = vm;
+ ms->src_pm = src_pm;
+ ms->dst_pm = dst_pm;
+ ms->mbox_ctl = get_mig_mbox_ctl(vm, src_pm, dst_pm);
+ ms->mbox = get_mig_mbox_src_dst(vm, src_pm, dst_pm);
+
+
+ char *pr_rx_name = get_mig_process_rx_name(vm, src_pm, dst_pm);
+ char *pr_tx_name = get_mig_process_tx_name(vm, src_pm, dst_pm);
+
+// MSG_process_create(pr_rx_name, migration_rx_fun, ms, dst_pm);
+// MSG_process_create(pr_tx_name, migration_tx_fun, ms, src_pm);
+#if 1
+ {
+ char **argv = xbt_new(char *, 2);
+ argv[0] = pr_rx_name;
+ argv[1] = NULL;
+ MSG_process_create_with_arguments(pr_rx_name, migration_rx_fun, ms, dst_pm, 1, argv);
+ }
+ {
+ char **argv = xbt_new(char *, 2);
+ argv[0] = pr_tx_name;
+ argv[1] = NULL;
+ MSG_process_create_with_arguments(pr_tx_name, migration_tx_fun, ms, src_pm, 1, argv);
+ }
+#endif