On 03/06/22 5:18 pm, Peter Krempa wrote:
This version fixes multiple problems which I'd point out when reviewing:
- virStorageSource is properly used in all places
- logic for initializing NVRAM imgages from template is fixed to avoid
touching network backed nvrams
- documentation now states the correct version
- some cleanups
- dropped NEWS entry stashed in a patch with other stuff
- fixed/simplified schema
Rohit, please give it a try. I didn't yet have time to test this beyond
unit tests.
Hi Peter,
As we discussed on v3 patchset
(https://listman.redhat.com/archives/libvir-list/2022-June/232446.html).
Feel free to add "Tested-by:" tag on my behalf.
Thanks,
Rohit.
This series can also be fetched from my repo:
git fetch https://urldefense.proofpoint.com/v2/url?u=https-3A__gitlab.com_pipo.sk_libvirt.git&d=DwIDAg&c=s883GpUCOChKOHiocYtGcg&r=ABSkr7gy7ZTfApFfI-Xxt1gZNtsDDiXoXOXc0OrkyFs&m=od4IcpmmT4YCh7bBSRnS4MumagpKTirdeOxDp2lv98nok7YWpvHy7HzIKLFwpIe9&s=2B9-Prbkp4meru1i3hbpQPOpZAc5-m3_8wtCv_se5Ow&e= network-nvram2
Peter Krempa (9):
qemuDomainPrepareStorageSourceBlockdev: Add a variant for custom
nodename
qemuBuildPflashBlockdevCommandLine: Take virDomainObj instead of
private data
qemu: Use 'def->os.loader->nvram' directly instead of 'priv->pflash1'
qemu: Properly setup the NVRAM virStorageSource
qemuProcessReconnect: Don't re-instantiate pflash storage source
qemuDomainInitializePflashStorageSource: Properly and fully initialize
nvram source
qemuFirmwareFillDomain: Don't fill in firmware for network backed
nvram
conf: Extract formatting of NVRAM out of virDomainLoaderDefFormat
virDomainHugepagesFormat: Use virXMLFormatElementEmpty
Rohit Kumar (4):
conf: Convert def->os.loader->nvram a virStorageSource
qemu: validate: Reject virStorageSource features we don't want to
support with nvram
conf: Add support to parse/format <source> for NVRAM
Add unit tests for new specification of nvram.
docs/formatdomain.rst | 37 +++++
src/conf/domain_conf.c | 136 ++++++++++++++----
src/conf/domain_conf.h | 3 +-
src/conf/schemas/domaincommon.rng | 9 +-
src/qemu/qemu_cgroup.c | 2 +-
src/qemu/qemu_command.c | 22 +--
src/qemu/qemu_domain.c | 58 +++++---
src/qemu/qemu_domain.h | 9 +-
src/qemu/qemu_driver.c | 5 +-
src/qemu/qemu_firmware.c | 30 +++-
src/qemu/qemu_namespace.c | 6 +-
src/qemu/qemu_process.c | 11 +-
src/qemu/qemu_validate.c | 115 +++++++++++----
src/security/security_dac.c | 19 +--
src/security/security_selinux.c | 21 +--
src/security/virt-aa-helper.c | 5 +-
src/vbox/vbox_common.c | 3 +-
.../bios-nvram-file.x86_64-latest.args | 37 +++++
tests/qemuxml2argvdata/bios-nvram-file.xml | 23 +++
.../bios-nvram-network-iscsi.x86_64-4.1.0.err | 1 +
...ios-nvram-network-iscsi.x86_64-latest.args | 38 +++++
.../bios-nvram-network-iscsi.xml | 31 ++++
.../bios-nvram-network-nbd.x86_64-latest.args | 37 +++++
.../bios-nvram-network-nbd.xml | 28 ++++
tests/qemuxml2argvtest.c | 4 +
.../bios-nvram-file.x86_64-latest.xml | 39 +++++
...bios-nvram-network-iscsi.x86_64-latest.xml | 44 ++++++
.../bios-nvram-network-nbd.x86_64-latest.xml | 41 ++++++
tests/qemuxml2xmltest.c | 3 +
29 files changed, 696 insertions(+), 121 deletions(-)
create mode 100644 tests/qemuxml2argvdata/bios-nvram-file.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/bios-nvram-file.xml
create mode 100644 tests/qemuxml2argvdata/bios-nvram-network-iscsi.x86_64-4.1.0.err
create mode 100644 tests/qemuxml2argvdata/bios-nvram-network-iscsi.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/bios-nvram-network-iscsi.xml
create mode 100644 tests/qemuxml2argvdata/bios-nvram-network-nbd.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/bios-nvram-network-nbd.xml
create mode 100644 tests/qemuxml2xmloutdata/bios-nvram-file.x86_64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/bios-nvram-network-iscsi.x86_64-latest.xml
create mode 100644 tests/qemuxml2xmloutdata/bios-nvram-network-nbd.x86_64-latest.xml