Lines Matching +full:suspend +full:- +full:to +full:- +full:ram

2  * Copyright (c) 2016-2018 Red Hat, Inc. and/or its affiliates
3 * based on the vhost-user-test.c that is:
7 * See the COPYING file in the top-level directory.
15 #include <qapi/qapi-types-migration.h>
41 * be used to set migration parameters and capabilities.
43 * Returns: NULL, or a pointer to opaque state to be
44 * later passed to the TestMigrateEndHook
47 QTestState *to);
52 * before QEMU has terminated (unless it self-terminated
53 * due to migration error)
55 * @opaque is a pointer to state previously returned
59 QTestState *to,
63 * Our goal is to ensure that we run a single full migration
68 * so we have to apply some tricks monitoring memory that is
71 * Initially we set the migration bandwidth to an insanely
77 * Our intent is to let it run just long enough that we can
78 * prove data prior to the marker has been transferred *AND*
81 * Before migration starts, we write a 64-bit magic marker
82 * into a fixed location in the src VM RAM.
85 * proof that start_address -> MAGIC_OFFSET_BASE has been
88 * Finally we go back to the source and read a byte just
90 * is proof that start_address -> MAGIC_OFFSET_BASE
96 * We can now let migration run at full speed to finish
102 * unconditionally, because it means the user would like to be verbose.
112 /* suspend the src before migrating to dest. */
118 * size is plugged in. If omitted, "-m %s" is used.
122 /* Do not connect to target monitor and qtest sockets in qtest_init */
126 * Migration capabilities to be set in both source and
136 * cases must be >0 to make sure they trigger by a "if" test.
148 /* Required: the URI for the dst QEMU to listen on */
152 * Optional: the URI for the src QEMU to connect to
160 * Optional: JSON-formatted list of src QEMU URIs. If a port is
162 * automatically converted to the correct destination port.
169 /* Optional: callback to run at start to set migration parameters */
171 /* Optional: callback to run at finish to cleanup */
175 * Optional: normally we expect the migration process to complete.
180 * If a failure is expected to happen at time of establishing
182 * QEMU is expected to stay running and accept future migration
185 * If a failure is expected to happen while processing the
187 * that the dst QEMU is expected to quit with non-zero exit status
201 * Optional: set number of migration passes to wait for, if live==true.
208 * migration test. We used to always run with live but it took much
209 * longer so we reduced live tests to only the ones that have solid
210 * reason to be tested live-only. For each of the new test cases for
211 * precopy please provide justifications to use live explicitly (please
212 * refer to existing ones with live=true), or use live=off by default.
223 void migrate_wait_for_dirty_mem(QTestState *from, QTestState *to);
224 int migrate_start(QTestState **from, QTestState **to, const char *uri,
226 void migrate_end(QTestState *from, QTestState *to, bool test_dest);
233 QTestState *to,