[libvirt] [PATCH v2] qemu: Add QEMU 2.10 x86_64 the generated capabilities

John Ferlan jferlan at redhat.com
Thu Aug 31 15:35:26 UTC 2017



On 08/31/2017 11:13 AM, Pavel Hrdina wrote:
> 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.
> 

True, but I noted that in notes below the ---

IDC if one or the other is removed... I just didn't want it "lost". I
don't always read git history's and others don't necessarily read code
comments to get data such as this. Since it's not one of those every day
tasks having it at least "somewhere" will hopefully help "someone".

> 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.

OK did that and yep a few more things showed up. Now I've learned 2 new
things today - it's a really good day!

> 
> 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.
> 

The vxhs will be enabled by query-qmp-schema introspection (similar to
gluster.debug).  I learned that yesterday - it's been a banner week of
learning new stuff!


>> Signed-off-by: John Ferlan <jferlan at 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.

Sure it could be, but I think that's overkill since I'm changing the
DO_TEST as well. Still I can drop this since trying to keep things up to
date in both places could be painful.

John


> 
> Pavel
> 




More information about the libvir-list mailing list