
On 05/25/2018 07:39 AM, Michal Privoznik wrote:
On 05/25/2018 01:10 PM, John Ferlan wrote:
On 05/25/2018 04:24 AM, Michal Privoznik wrote:
On 05/17/2018 02:42 PM, John Ferlan wrote:
Second reposting of:
https://www.redhat.com/archives/libvir-list/2018-May/msg00813.html
To update patches with more conflicts for patch 2 (capabilities) and patch 6 (news)
Cover from the v3 posting:
v2: https://www.redhat.com/archives/libvir-list/2018-April/msg02234.html
Changes since v2:
* Essentially handle comments from code review of original series from comments received for patch 6:
https://www.redhat.com/archives/libvir-list/2018-April/msg02240.html
It's a somewhat simplified approach removing the ABI checks and the adjustment to the genid value as part of domain def copy.
* (NEW) Patch 5 - add a 'genid' domain capability (similar to how Cole added support for vmcoreinfo). Since the apps need a way to determine whether this is enabled, this seems to be the best way.
John Ferlan (6): conf: Add VM Generation ID parse/format support qemu: Add VM Generation ID device capability qemu: Alter VM Generation ID for specific startup/launch transitions qemu: Add VM Generation ID to qemu command line domcaps: Add 'genid' to domain capabilities docs: Add news article for VM Generation ID
docs/formatdomain.html.in | 27 +++++++++++ docs/formatdomaincaps.html.in | 7 ++- docs/news.xml | 13 ++++++ docs/schemas/domaincaps.rng | 7 +++ docs/schemas/domaincommon.rng | 8 ++++ src/conf/domain_capabilities.c | 3 ++ src/conf/domain_capabilities.h | 1 + src/conf/domain_conf.c | 54 ++++++++++++++++++++++ src/conf/domain_conf.h | 5 ++ src/qemu/qemu_capabilities.c | 4 ++ src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_command.c | 24 ++++++++++ src/qemu/qemu_driver.c | 17 +++++-- src/qemu/qemu_process.c | 46 +++++++++++++++++- src/qemu/qemu_process.h | 1 + tests/domaincapsschemadata/basic.xml | 1 + tests/domaincapsschemadata/bhyve_basic.x86_64.xml | 1 + tests/domaincapsschemadata/bhyve_fbuf.x86_64.xml | 1 + tests/domaincapsschemadata/bhyve_uefi.x86_64.xml | 1 + tests/domaincapsschemadata/full.xml | 1 + tests/domaincapsschemadata/libxl-xenfv-usb.xml | 1 + tests/domaincapsschemadata/libxl-xenfv.xml | 1 + tests/domaincapsschemadata/libxl-xenpv-usb.xml | 1 + tests/domaincapsschemadata/libxl-xenpv.xml | 1 + tests/domaincapsschemadata/qemu_1.7.0.x86_64.xml | 1 + .../qemu_2.12.0-virt.aarch64.xml | 1 + tests/domaincapsschemadata/qemu_2.12.0.ppc64.xml | 1 + tests/domaincapsschemadata/qemu_2.12.0.s390x.xml | 1 + tests/domaincapsschemadata/qemu_2.12.0.x86_64.xml | 1 + .../qemu_2.6.0-virt.aarch64.xml | 1 + tests/domaincapsschemadata/qemu_2.6.0.aarch64.xml | 1 + tests/domaincapsschemadata/qemu_2.6.0.ppc64.xml | 1 + tests/domaincapsschemadata/qemu_2.6.0.x86_64.xml | 1 + tests/domaincapsschemadata/qemu_2.7.0.s390x.xml | 1 + .../domaincapsschemadata/qemu_2.8.0-tcg.x86_64.xml | 1 + tests/domaincapsschemadata/qemu_2.8.0.s390x.xml | 1 + tests/domaincapsschemadata/qemu_2.8.0.x86_64.xml | 1 + .../domaincapsschemadata/qemu_2.9.0-q35.x86_64.xml | 1 + .../domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml | 1 + tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 + .../qemuxml2argvdata/genid-auto.x86_64-latest.args | 30 ++++++++++++ tests/qemuxml2argvdata/genid-auto.xml | 32 +++++++++++++ tests/qemuxml2argvdata/genid.x86_64-latest.args | 30 ++++++++++++ tests/qemuxml2argvdata/genid.xml | 32 +++++++++++++ tests/qemuxml2argvtest.c | 4 ++ tests/qemuxml2xmloutdata/genid-active.xml | 32 +++++++++++++ tests/qemuxml2xmloutdata/genid-auto-active.xml | 32 +++++++++++++ tests/qemuxml2xmloutdata/genid-auto-inactive.xml | 32 +++++++++++++ tests/qemuxml2xmloutdata/genid-inactive.xml | 32 +++++++++++++ tests/qemuxml2xmltest.c | 5 +- 53 files changed, 500 insertions(+), 7 deletions(-) create mode 100644 tests/qemuxml2argvdata/genid-auto.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/genid-auto.xml create mode 100644 tests/qemuxml2argvdata/genid.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/genid.xml create mode 100644 tests/qemuxml2xmloutdata/genid-active.xml create mode 100644 tests/qemuxml2xmloutdata/genid-auto-active.xml create mode 100644 tests/qemuxml2xmloutdata/genid-auto-inactive.xml create mode 100644 tests/qemuxml2xmloutdata/genid-inactive.xml
I like the patches, I do. I'd ACK them but some discussion is needed first in my opinion.
Discussion about what? Honestly this "version" of the patches has been languishing for the entire month without any review. I know "everyone" is "busy" with their own stuff and facing their own deadlines so I don't expect immediate review, but a whole month without any feedback is a bitter pill to swallow. Now that we reach the end of the month and release time - the design is being called into question. That's fine - although IMO I got review on the original design from the RFC posted in March and the v1 posted in early April. The v2 series posted a couple weeks later gave a lot more important feedback and resulted in the adjustments posted here. So as noted in another response, the v2 review gave the best feedback and is the basis for this simplified approach.
I meant answers to my questions. Esp. on the capability check and usage of flags. If you fix the capability check like I'm suggesting in 4/6 you have my ACK for the whole patch set.
Ironically, as part of review of v2 patch 10, I was asked to remove the check from qemuBuildVMGenIDCommandLine: https://www.redhat.com/archives/libvir-list/2018-April/msg02253.html Perhaps it's best to just move it from qemu_process to qemu_command - that just means passing @qemuCaps into qemuBuildVMGenIDCommandLine and using it as well as removing @priv from qemuProcessGenID. It really doesn't matter in qemu_process whether the capability exists, it was an optimization to put it there rather than an error path in qemu_command... and with that change GenIDCommandLine now could return -1 or 0; whereas, without the caps check it was only ever returning 0. I can repost the entire series if so desired. Tks - John
Also, sorry for leaving these patches so long without any review.
Michal