#
f853fa07 |
| 11-Mar-2024 |
Steve Sistare <steven.sistare@oracle.com> |
migration: remove migration.h references
Remove migration.h from files that no longer need it due to previous commits.
Signed-off-by: Steve Sistare <steven.sistare@oracle.com> Link: https://lore.ke
migration: remove migration.h references
Remove migration.h from files that no longer need it due to previous commits.
Signed-off-by: Steve Sistare <steven.sistare@oracle.com> Link: https://lore.kernel.org/r/1710179338-294359-2-git-send-email-steven.sistare@oracle.com Signed-off-by: Peter Xu <peterx@redhat.com>
show more ...
|
#
57c73988 |
| 21-Dec-2023 |
Richard Henderson <richard.henderson@linaro.org> |
tests/unit/test-vmstate: Constify VMState
While const data in tests is not particularly important, this makes a grep test clear across the tree.
Reviewed-by: Juan Quintela <quintela@redhat.com> Sig
tests/unit/test-vmstate: Constify VMState
While const data in tests is not particularly important, this makes a grep test clear across the tree.
Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20231221031652.119827-71-richard.henderson@linaro.org>
show more ...
|
#
abe2c4bd |
| 28-Feb-2023 |
Eric Auger <eric.auger@redhat.com> |
test-vmstate: fix bad GTree usage, use-after-free
According to g_tree_foreach() documentation: "The tree may not be modified while iterating over it (you can't add/remove items)."
compare_trees()/d
test-vmstate: fix bad GTree usage, use-after-free
According to g_tree_foreach() documentation: "The tree may not be modified while iterating over it (you can't add/remove items)."
compare_trees()/diff_tree() fail to respect this rule. Historically GLib2 used a slice allocator for the GTree APIs which did not immediately release the memory back to the system allocator. As a result QEMU's use-after-free bug was not visible. With GLib > 2.75.3 however, GLib2 has switched to using malloc and now a SIGSEGV can be observed while running test-vmstate.
Get rid of the node removal within the tree traversal. Also check the trees have the same number of nodes before the actual diff.
Fixes: 9a85e4b8f6 ("migration: Support gtree migration") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1518 Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Eric Auger <eric.auger@redhat.com> Reported-by: Richard W.M. Jones <rjones@redhat.com> Tested-by: Richard W.M. Jones <rjones@redhat.com> Reviewed-by: Richard W.M. Jones <rjones@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
show more ...
|
#
23792478 |
| 21-Dec-2022 |
Markus Armbruster <armbru@redhat.com> |
coroutine: Clean up superfluous inclusion of qemu/coroutine.h
Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <20221221131435.3851
coroutine: Clean up superfluous inclusion of qemu/coroutine.h
Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <20221221131435.3851212-2-armbru@redhat.com>
show more ...
|
#
972d325a |
| 19-Aug-2022 |
Philippe Mathieu-Daudé <philmd@redhat.com> |
tests/unit/test-vmstate: Avoid dynamic stack allocation
Use autofree heap allocation instead of variable-length array on the stack.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewe
tests/unit/test-vmstate: Avoid dynamic stack allocation
Use autofree heap allocation instead of variable-length array on the stack.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 20220819153931.3147384-12-peter.maydell@linaro.org
show more ...
|
#
77ef2dc1 |
| 20-Jun-2022 |
Daniel P. Berrangé <berrange@redhat.com> |
migration: remove the QEMUFileOps abstraction
Now that all QEMUFile callbacks are removed, the entire concept can be deleted.
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by
migration: remove the QEMUFileOps abstraction
Now that all QEMUFile callbacks are removed, the entire concept can be deleted.
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
show more ...
|
#
b21e2380 |
| 15-Mar-2022 |
Markus Armbruster <armbru@redhat.com> |
Use g_new() & friends where that makes obvious sense
g_new(T, n) is neater than g_malloc(sizeof(T) * n). It's also safer, for two reasons. One, it catches multiplication overflowing size_t. Two, i
Use g_new() & friends where that makes obvious sense
g_new(T, n) is neater than g_malloc(sizeof(T) * n). It's also safer, for two reasons. One, it catches multiplication overflowing size_t. Two, it returns T * rather than void *, which lets the compiler catch more type errors.
This commit only touches allocations with size arguments of the form sizeof(T).
Patch created mechanically with:
$ spatch --in-place --sp-file scripts/coccinelle/use-g_new-etc.cocci \ --macro-file scripts/cocci-macro-file.h FILES...
Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20220315144156.1595462-4-armbru@redhat.com> Reviewed-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
show more ...
|
#
1c861885 |
| 25-May-2021 |
Peter Maydell <peter.maydell@linaro.org> |
tests/unit/test-vmstate: Assert that dup() and mkstemp() succeed
Coverity complains that we don't check for failures from dup() and mkstemp(); add asserts that these syscalls succeeded.
Fixes: Cove
tests/unit/test-vmstate: Assert that dup() and mkstemp() succeed
Coverity complains that we don't check for failures from dup() and mkstemp(); add asserts that these syscalls succeeded.
Fixes: Coverity CID 1432516, 1432574 Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Stefan Berger <stefanb@linux.ibm.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20210525134458.6675-7-peter.maydell@linaro.org
show more ...
|
#
da668aa1 |
| 10-Mar-2021 |
Thomas Huth <thuth@redhat.com> |
tests: Move unit tests into a separate directory
The main tests directory still looks very crowded, and it's not clear which files are part of a unit tests and which belong to a different test subsy
tests: Move unit tests into a separate directory
The main tests directory still looks very crowded, and it's not clear which files are part of a unit tests and which belong to a different test subsystem. Let's clean up the mess and move the unit tests to a separate directory.
Message-Id: <20210310063314.1049838-1-thuth@redhat.com> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
96c64746 |
| 10-Sep-2020 |
Yonggang Luo <luoyonggang@gmail.com> |
vmstate: Fixes test-vmstate.c on msys2/mingw
The vmstate are valid on win32, just need generate tmp path properly
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Philippe Mathieu-D
vmstate: Fixes test-vmstate.c on msys2/mingw
The vmstate are valid on win32, just need generate tmp path properly
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20200910103059.987-17-luoyonggang@gmail.com> [thuth: Make indentation a little bit nicer] Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
712f1974 |
| 10-Sep-2020 |
Pan Nengyuan <pannengyuan@huawei.com> |
test-vmstate: remove unnecessary code in match_interval_mapping_node
'str' is not used in match_interval_mapping_node(), remove it.
Signed-off-by: Pan Nengyuan <pannengyuan@huawei.com> Reviewed-by:
test-vmstate: remove unnecessary code in match_interval_mapping_node
'str' is not used in match_interval_mapping_node(), remove it.
Signed-off-by: Pan Nengyuan <pannengyuan@huawei.com> Reviewed-by: Li Qiang <liq3ea@gmail.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20200910023818.11880-1-pannengyuan@huawei.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
show more ...
|
#
85c93c57 |
| 05-Sep-2020 |
Yonggang Luo <luoyonggang@gmail.com> |
tests: fixes test-vmstate.c compile error on msys2
../tests/test-vmstate.c: In function 'int_cmp': ../tests/test-vmstate.c:884:5: error: unknown type name 'uint'; did you mean 'uInt'? 884 | ui
tests: fixes test-vmstate.c compile error on msys2
../tests/test-vmstate.c: In function 'int_cmp': ../tests/test-vmstate.c:884:5: error: unknown type name 'uint'; did you mean 'uInt'? 884 | uint ua = GPOINTER_TO_UINT(a); | ^~~~ | uInt ../tests/test-vmstate.c:885:5: error: unknown type name 'uint'; did you mean 'uInt'? 885 | uint ub = GPOINTER_TO_UINT(b); | ^~~~ | uInt make: *** [Makefile.ninja:5461:tests/test-vmstate.exe.p/test-vmstate.c.obj] 错误 1
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20200905063813.1875-1-luoyonggang@gmail.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
a6fbd637 |
| 20-Feb-2020 |
Chen Qun <kuhn.chenqun@huawei.com> |
test-vmstate: Fix memleaks in test_load_qlist
There is memleak in test_load_qlist().It's not a big deal, but test-vmstate will fail if sanitizers is enabled.
In addition, "ret" is written twice wit
test-vmstate: Fix memleaks in test_load_qlist
There is memleak in test_load_qlist().It's not a big deal, but test-vmstate will fail if sanitizers is enabled.
In addition, "ret" is written twice with the same value in test_gtree_load_iommu().
Reported-by: Euler Robot <euler.robot@huawei.com> Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Laurent Vivier <lvivier@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
show more ...
|
#
4746dbf8 |
| 13-Jan-2020 |
Eric Auger <eric.auger@redhat.com> |
migration: Support QLIST migration
Support QLIST migration using the same principle as QTAILQ: 94869d5c52 ("migration: migrate QTAILQ").
The VMSTATE_QLIST_V macro has the same proto as VMSTATE_QTAI
migration: Support QLIST migration
Support QLIST migration using the same principle as QTAILQ: 94869d5c52 ("migration: migrate QTAILQ").
The VMSTATE_QLIST_V macro has the same proto as VMSTATE_QTAILQ_V. The change mainly resides in QLIST RAW macros: QLIST_RAW_INSERT_HEAD and QLIST_RAW_REVERSE.
Tests also are provided.
Signed-off-by: Eric Auger <eric.auger@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
show more ...
|
#
e468ffdc |
| 11-Dec-2019 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
glib: use portable g_setenv()
We have a setenv() wrapper in os-win32.c that no one is actually using. Drop it and change to g_setenv() uniformly.
Signed-off-by: Marc-André Lureau <marcandre.lureau@
glib: use portable g_setenv()
We have a setenv() wrapper in os-win32.c that no one is actually using. Drop it and change to g_setenv() uniformly.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <1576074210-52834-7-git-send-email-pbonzini@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
show more ...
|
#
9a85e4b8 |
| 11-Oct-2019 |
Eric Auger <eric.auger@redhat.com> |
migration: Support gtree migration
Introduce support for GTree migration. A custom save/restore is implemented. Each item is made of a key and a data.
If the key is a pointer to an object, 2 VMSDs
migration: Support gtree migration
Introduce support for GTree migration. A custom save/restore is implemented. Each item is made of a key and a data.
If the key is a pointer to an object, 2 VMSDs are passed into the GTree VMStateField.
When putting the items, the tree is traversed in sorted order by g_tree_foreach.
On the get() path, gtrees must be allocated using the proper key compare, key destroy and value destroy. This must be handled beforehand, for example in a pre_load method.
Tests are added to test save/dump of structs containing gtrees including the virtio-iommu domain/mappings scenario.
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Message-Id: <20191011121724.433-1-eric.auger@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> uintptr_t fixup for test on 32bit
show more ...
|
#
0b8fa32f |
| 23-May-2019 |
Markus Armbruster <armbru@redhat.com> |
Include qemu/module.h where needed, drop it from qemu-common.h
Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20190523143508.25387-4-armbru@redhat.com> [Rebased with conflicts res
Include qemu/module.h where needed, drop it from qemu-common.h
Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20190523143508.25387-4-armbru@redhat.com> [Rebased with conflicts resolved automatically, except for hw/usb/dev-hub.c hw/misc/exynos4210_rng.c hw/misc/bcm2835_rng.c hw/misc/aspeed_scu.c hw/display/virtio-vga.c hw/arm/stm32f205_soc.c; ui/cocoa.m fixed up]
show more ...
|
#
b95d6588 |
| 14-Nov-2018 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
tests: add /vmstate/simple/array
A very simple test to show VMSTATE_*_ARRAY usage and result. It could be systematically extended to other primitives, but I leave that as an exercise for others :).
tests: add /vmstate/simple/array
A very simple test to show VMSTATE_*_ARRAY usage and result. It could be systematically extended to other primitives, but I leave that as an exercise for others :).
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20181114132130.27141-1-marcandre.lureau@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
show more ...
|
#
eae3eb3e |
| 06-Dec-2018 |
Paolo Bonzini <pbonzini@redhat.com> |
qemu/queue.h: simplify reverse access to QTAILQ
The new definition of QTAILQ does not require passing the headname, remove it.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
#
977a7204 |
| 18-Jul-2018 |
Daniel P. Berrangé <berrange@redhat.com> |
tests: don't silence error reporting for all tests
The test-vmstate test is a bit chatty because it triggers various expected failure scenarios and the code in question uses error_report instead of
tests: don't silence error reporting for all tests
The test-vmstate test is a bit chatty because it triggers various expected failure scenarios and the code in question uses error_report instead of accepting 'Error **errp' parameters. To silence this test the stubs for error_vprintf() were changed to send errors via g_test_message() instead of stderr:
commit 28017e010ddf6849cfa830e898da3e44e6610952 Author: Paolo Bonzini <pbonzini@redhat.com> Date: Mon Oct 24 18:31:03 2016 +0200
tests: send error_report to test log
Implement error_vprintf to send the output of error_report to the test log. This silences test-vmstate.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <1477326663-67817-3-git-send-email-pbonzini@redhat.com>
Unfortunately this change has global impact across the entire test suite and means that when tests fail for unexpected reasons, the message is not displayed on stderr. eg when using &error_abort in a call the test merely prints
Unexpected error in qcrypto_tls_session_check_certificate() at crypto/tlssession.c:280:
and the actual error message is hidden, making it impossible to diagnose the failure. This is especially problematic in CI or build systems where it isn't possible to easily pass the --debug-log flag to tests and re-run with the test log visible.
This change makes the previous big hammer much more nuanced, providing a flag in the stub error_vprintf() that can used on a per-test basis to silence the errors. Only the test-vmstate silences errors initially.
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
show more ...
|
#
2f168d07 |
| 25-Sep-2017 |
Dr. David Alan Gilbert <dgilbert@redhat.com> |
migration: Route more error paths
vmstate_save_state is called in lots of places. Route error returns from the easier cases back up; there are lots of more complex cases where their own error paths
migration: Route more error paths
vmstate_save_state is called in lots of places. Route error returns from the easier cases back up; there are lots of more complex cases where their own error paths need fixing.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20170925112917.21340-7-dgilbert@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Commit message fix up as Peter's review
show more ...
|
#
44b1ff31 |
| 25-Sep-2017 |
Dr. David Alan Gilbert <dgilbert@redhat.com> |
migration: pre_save return int
Modify the pre_save method on VMStateDescription to return an int rather than void so that it potentially can fail.
Changed zillions of devices to make them return 0;
migration: pre_save return int
Modify the pre_save method on VMStateDescription to return an int rather than void so that it potentially can fail.
Changed zillions of devices to make them return 0; the only case I've made it return non-0 is hw/intc/s390_flic_kvm.c that already had an error_report/return case.
Note: If you add an error exit in your pre_save you must emit an error_report to say why.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20170925112917.21340-2-dgilbert@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
show more ...
|
#
6666c96a |
| 24-Apr-2017 |
Juan Quintela <quintela@redhat.com> |
migration: Move migration.h to migration/
Nothing uses it outside of migration.h
Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by
migration: Move migration.h to migration/
Nothing uses it outside of migration.h
Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Laurent Vivier <lvivier@redhat.com>
show more ...
|
#
c3d2e2e7 |
| 24-Apr-2017 |
Juan Quintela <quintela@redhat.com> |
migration: Move constants to savevm.h
Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Laurent Vivier <lvivier@redhat.com>
|
#
08a0aee1 |
| 20-Apr-2017 |
Juan Quintela <quintela@redhat.com> |
migration: Split qemu-file.h
Split the file into public and internal interfaces. I have to rename the external one because we can't have two include files with the same name in the same directory.
migration: Split qemu-file.h
Split the file into public and internal interfaces. I have to rename the external one because we can't have two include files with the same name in the same directory. Build system gets confused. The only exported functions are the ones that handle basic types.
Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
show more ...
|