On Thu, Aug 31, 2017 at 10:06:07AM -0400, John Ferlan wrote:
For reference, these were generated by updating a local qemu git
repository to the latest upstream, checking out the v2.10.0 tag,
and building in order to generate an "x86_64-softmmu/qemu-system-x86_64"
image.
Then using a clean libvirt tree updated to master and built, the image
was then provided as input:
tests/qemucapsprobe /path/to/x86_64-softmmu/qemu-system-x86_64 > \
tests/qemucapabilitiesdata/caps_2.10.0.x86_64.replies
With the .replies file in place, running the following commands:
touch tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
VIR_TEST_REGENERATE_OUTPUT=1 ./tests/qemucapabilitiestest
to generate tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml and both
were added to the commit.
Having this in the commit message is redundant if you are planning to
update that comment.
I've applied this patch and build the qemu and rerun the regeneration of
capabilities and you are probably missing opengl virglrenderer and
usb-redir support in QEMU.
I usually run "dnf builddep qemu" to ensure that I have all possible
dependencies and after that I build the QEMU, however this is not 100%
reproducible on a different system/OS/etc. Anyway, try to do it as well
in order to get as much as possible dependencies and reconfigure and
rebuild QEMU.
I'll prepare some script that would enable all features in QEMU except
some of the blacklisted features in order to have always the same list
of capabilities.
Another point is that I don't have vxhs enabled but I can see it in the
generated capabilities so there is something wrong. It's not our fault
but we should probably notify QEMU people that it's not correct.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
Extracted this out of the Veritas VxHS patch stream:
https://www.redhat.com/archives/libvir-list/2017-August/msg00993.html
after fixing up my qemu.git environment, building a v2.10.0 image,
and following the same process as well as documenting in both the
commit and code. Although that could be considered overkill - someone
may not look at git history to figure this out - figured putting
it in both places would make a better chance to have it read.
.../caps_2.10.0.x86_64.replies | 17994 +++++++++++++++++++
tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml | 791 +
tests/qemucapabilitiestest.c | 11 +-
3 files changed, 18795 insertions(+), 1 deletion(-)
create mode 100644 tests/qemucapabilitiesdata/caps_2.10.0.x86_64.replies
create mode 100644 tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
[...]
diff --git a/tests/qemucapabilitiestest.c
b/tests/qemucapabilitiestest.c
index 3ae55fc..f0e099c 100644
--- a/tests/qemucapabilitiestest.c
+++ b/tests/qemucapabilitiestest.c
@@ -170,6 +170,7 @@ mymain(void)
DO_TEST("x86_64", "caps_2.7.0");
DO_TEST("x86_64", "caps_2.8.0");
DO_TEST("x86_64", "caps_2.9.0");
+ DO_TEST("x86_64", "caps_2.10.0");
DO_TEST("aarch64", "caps_2.6.0-gicv2");
DO_TEST("aarch64", "caps_2.6.0-gicv3");
DO_TEST("ppc64le", "caps_2.6.0");
@@ -180,7 +181,15 @@ mymain(void)
/*
* Run "tests/qemucapsprobe /path/to/qemu/binary >foo.replies"
- * to generate updated or new *.replies data files.
+ * to generate updated or new *.replies data files. Once the
+ * replies file is in tests/qemucapabilitiesdata/ using a proper
+ * name (e.g. caps_2.10.0.x86_64.replies), generate the capabilities
+ * XML file as follows (using an x86_64 example):
+ *
+ * touch tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml
+ * VIR_TEST_REGENERATE_OUTPUT=1 ./tests/qemucapabilitiestest
+ *
+ * Add the new files to the commit along with the added DO_TEST.
*/
This hunk should be in a separate patch.
Pavel