[PATCH v5 0/8] Implement detach device related APIs for test driver

Luke Yue posted 8 patches 2 years, 2 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20220207073818.356659-1-lukedyue@gmail.com
examples/xml/test/meson.build                 |   1 +
examples/xml/test/testdomfc5.xml              |  54 ++
examples/xml/test/testnodeinline.xml          |  54 ++
src/bhyve/bhyve_domain.c                      |   2 +-
src/ch/ch_conf.c                              |   2 +-
src/conf/domain_conf.c                        | 572 +++++++++++++++++-
src/conf/domain_conf.h                        | 135 ++++-
src/conf/virconftypes.h                       |   2 +
src/hyperv/hyperv_driver.c                    |   3 +-
src/libvirt_private.syms                      |  21 +
src/libxl/libxl_conf.c                        |   3 +-
src/libxl/libxl_domain.c                      |   8 +
src/libxl/libxl_domain.h                      |   1 +
src/libxl/libxl_driver.c                      |  73 +--
src/lxc/lxc_conf.c                            |   3 +-
src/lxc/lxc_domain.c                          |   7 +
src/lxc/lxc_domain.h                          |   1 +
src/lxc/lxc_driver.c                          |  62 +-
src/openvz/openvz_conf.c                      |   2 +-
src/qemu/qemu_conf.c                          |   3 +-
src/qemu/qemu_domain.c                        |  39 ++
src/qemu/qemu_domain.h                        |   6 +
src/qemu/qemu_driver.c                        | 206 +------
src/qemu/qemu_process.c                       |   2 +-
src/security/virt-aa-helper.c                 |   2 +-
src/test/test_driver.c                        | 197 +++++-
src/vbox/vbox_common.c                        |   2 +-
src/vmware/vmware_driver.c                    |   2 +-
src/vmx/vmx.c                                 |   2 +-
src/vz/vz_driver.c                            |   2 +-
tests/bhyveargv2xmltest.c                     |   2 +-
.../generichotplug-controller.xml             |   1 +
.../generichotplug-disk-cdrom.xml             |   5 +
.../generichotplug-filesystem.xml             |   6 +
.../generichotplug-hostdev.xml                |   5 +
.../generichotplug-input.xml                  |   1 +
.../generichotplug-interface.xml              |   6 +
.../generichotplug-lease.xml                  |   5 +
.../generichotplug-memballoon.xml             |   3 +
.../generichotplug-memory.xml                 |   6 +
.../generichotplugdata/generichotplug-rng.xml |   4 +
.../generichotplug-shmem.xml                  |   4 +
.../generichotplug-sound.xml                  |   3 +
.../generichotplugdata/generichotplug-tpm.xml |   5 +
.../generichotplug-vsock.xml                  |   3 +
.../generichotplug-watchdog.xml               |   1 +
tests/generichotplugtest.c                    | 178 ++++++
tests/meson.build                             |   1 +
tests/testutils.c                             |   2 +-
49 files changed, 1378 insertions(+), 332 deletions(-)
create mode 100644 tests/generichotplugdata/generichotplug-controller.xml
create mode 100644 tests/generichotplugdata/generichotplug-disk-cdrom.xml
create mode 100644 tests/generichotplugdata/generichotplug-filesystem.xml
create mode 100644 tests/generichotplugdata/generichotplug-hostdev.xml
create mode 100644 tests/generichotplugdata/generichotplug-input.xml
create mode 100644 tests/generichotplugdata/generichotplug-interface.xml
create mode 100644 tests/generichotplugdata/generichotplug-lease.xml
create mode 100644 tests/generichotplugdata/generichotplug-memballoon.xml
create mode 100644 tests/generichotplugdata/generichotplug-memory.xml
create mode 100644 tests/generichotplugdata/generichotplug-rng.xml
create mode 100644 tests/generichotplugdata/generichotplug-shmem.xml
create mode 100644 tests/generichotplugdata/generichotplug-sound.xml
create mode 100644 tests/generichotplugdata/generichotplug-tpm.xml
create mode 100644 tests/generichotplugdata/generichotplug-vsock.xml
create mode 100644 tests/generichotplugdata/generichotplug-watchdog.xml
create mode 100644 tests/generichotplugtest.c
[PATCH v5 0/8] Implement detach device related APIs for test driver
Posted by Luke Yue 2 years, 2 months ago
diff to v4:
- Rebase to current master

diff to v3:
- Add virDomainDeviceDefOperationsCallbacks to xmlopt for de-duplicating purpose
- Add virDomainDeviceTypeFlags for de-duplicating purpose
- Remove the memballoon helper function
- Squash test_driver commits
- Move test device xmls to generichotplugdata
- Reimplement tests with internal APIs

link to v4: https://listman.redhat.com/archives/libvir-list/2021-December/msg00108.html
link to v3: https://listman.redhat.com/archives/libvir-list/2021-November/msg00288.html
link to CI: https://gitlab.com/lukedyue/libvirt/-/pipelines/464756840

Luke Yue (8):
  conf: Introduce virDomainInputDefRemove and fix memory leak
  conf: Introduce virDomainDeviceDefOperationsCallbacks to xmlopt
  conf: Add virDomainDeviceTypeFlags and use it in various drivers
  conf: Add tpm helpers for future use
  domain_driver: extract DetachXXXDeviceConfig related functions and use
    them
  test_driver: Implement virDomainDetachDeviceFlags
  examples: xml: test: add xml for testing devices related APIs
  tests: Add generichotplugtest

 examples/xml/test/meson.build                 |   1 +
 examples/xml/test/testdomfc5.xml              |  54 ++
 examples/xml/test/testnodeinline.xml          |  54 ++
 src/bhyve/bhyve_domain.c                      |   2 +-
 src/ch/ch_conf.c                              |   2 +-
 src/conf/domain_conf.c                        | 572 +++++++++++++++++-
 src/conf/domain_conf.h                        | 135 ++++-
 src/conf/virconftypes.h                       |   2 +
 src/hyperv/hyperv_driver.c                    |   3 +-
 src/libvirt_private.syms                      |  21 +
 src/libxl/libxl_conf.c                        |   3 +-
 src/libxl/libxl_domain.c                      |   8 +
 src/libxl/libxl_domain.h                      |   1 +
 src/libxl/libxl_driver.c                      |  73 +--
 src/lxc/lxc_conf.c                            |   3 +-
 src/lxc/lxc_domain.c                          |   7 +
 src/lxc/lxc_domain.h                          |   1 +
 src/lxc/lxc_driver.c                          |  62 +-
 src/openvz/openvz_conf.c                      |   2 +-
 src/qemu/qemu_conf.c                          |   3 +-
 src/qemu/qemu_domain.c                        |  39 ++
 src/qemu/qemu_domain.h                        |   6 +
 src/qemu/qemu_driver.c                        | 206 +------
 src/qemu/qemu_process.c                       |   2 +-
 src/security/virt-aa-helper.c                 |   2 +-
 src/test/test_driver.c                        | 197 +++++-
 src/vbox/vbox_common.c                        |   2 +-
 src/vmware/vmware_driver.c                    |   2 +-
 src/vmx/vmx.c                                 |   2 +-
 src/vz/vz_driver.c                            |   2 +-
 tests/bhyveargv2xmltest.c                     |   2 +-
 .../generichotplug-controller.xml             |   1 +
 .../generichotplug-disk-cdrom.xml             |   5 +
 .../generichotplug-filesystem.xml             |   6 +
 .../generichotplug-hostdev.xml                |   5 +
 .../generichotplug-input.xml                  |   1 +
 .../generichotplug-interface.xml              |   6 +
 .../generichotplug-lease.xml                  |   5 +
 .../generichotplug-memballoon.xml             |   3 +
 .../generichotplug-memory.xml                 |   6 +
 .../generichotplugdata/generichotplug-rng.xml |   4 +
 .../generichotplug-shmem.xml                  |   4 +
 .../generichotplug-sound.xml                  |   3 +
 .../generichotplugdata/generichotplug-tpm.xml |   5 +
 .../generichotplug-vsock.xml                  |   3 +
 .../generichotplug-watchdog.xml               |   1 +
 tests/generichotplugtest.c                    | 178 ++++++
 tests/meson.build                             |   1 +
 tests/testutils.c                             |   2 +-
 49 files changed, 1378 insertions(+), 332 deletions(-)
 create mode 100644 tests/generichotplugdata/generichotplug-controller.xml
 create mode 100644 tests/generichotplugdata/generichotplug-disk-cdrom.xml
 create mode 100644 tests/generichotplugdata/generichotplug-filesystem.xml
 create mode 100644 tests/generichotplugdata/generichotplug-hostdev.xml
 create mode 100644 tests/generichotplugdata/generichotplug-input.xml
 create mode 100644 tests/generichotplugdata/generichotplug-interface.xml
 create mode 100644 tests/generichotplugdata/generichotplug-lease.xml
 create mode 100644 tests/generichotplugdata/generichotplug-memballoon.xml
 create mode 100644 tests/generichotplugdata/generichotplug-memory.xml
 create mode 100644 tests/generichotplugdata/generichotplug-rng.xml
 create mode 100644 tests/generichotplugdata/generichotplug-shmem.xml
 create mode 100644 tests/generichotplugdata/generichotplug-sound.xml
 create mode 100644 tests/generichotplugdata/generichotplug-tpm.xml
 create mode 100644 tests/generichotplugdata/generichotplug-vsock.xml
 create mode 100644 tests/generichotplugdata/generichotplug-watchdog.xml
 create mode 100644 tests/generichotplugtest.c

-- 
2.35.1

Re: [PATCH v5 0/8] Implement detach device related APIs for test driver
Posted by Luke Yue 2 years, 1 month ago
On Mon, 2022-02-07 at 15:38 +0800, Luke Yue wrote:
> diff to v4:
> - Rebase to current master
> 
> diff to v3:
> - Add virDomainDeviceDefOperationsCallbacks to xmlopt for de-
> duplicating purpose
> - Add virDomainDeviceTypeFlags for de-duplicating purpose
> - Remove the memballoon helper function
> - Squash test_driver commits
> - Move test device xmls to generichotplugdata
> - Reimplement tests with internal APIs
> 
> link to v4:
> https://listman.redhat.com/archives/libvir-list/2021-December/msg00108.html
> link to v3:
> https://listman.redhat.com/archives/libvir-list/2021-November/msg00288.html
> link to CI: https://gitlab.com/lukedyue/libvirt/-/pipelines/464756840
> 
> Luke Yue (8):
>   conf: Introduce virDomainInputDefRemove and fix memory leak
>   conf: Introduce virDomainDeviceDefOperationsCallbacks to xmlopt
>   conf: Add virDomainDeviceTypeFlags and use it in various drivers
>   conf: Add tpm helpers for future use
>   domain_driver: extract DetachXXXDeviceConfig related functions and
> use
>     them
>   test_driver: Implement virDomainDetachDeviceFlags
>   examples: xml: test: add xml for testing devices related APIs
>   tests: Add generichotplugtest
> 
>  examples/xml/test/meson.build                 |   1 +
>  examples/xml/test/testdomfc5.xml              |  54 ++
>  examples/xml/test/testnodeinline.xml          |  54 ++
>  src/bhyve/bhyve_domain.c                      |   2 +-
>  src/ch/ch_conf.c                              |   2 +-
>  src/conf/domain_conf.c                        | 572
> +++++++++++++++++-
>  src/conf/domain_conf.h                        | 135 ++++-
>  src/conf/virconftypes.h                       |   2 +
>  src/hyperv/hyperv_driver.c                    |   3 +-
>  src/libvirt_private.syms                      |  21 +
>  src/libxl/libxl_conf.c                        |   3 +-
>  src/libxl/libxl_domain.c                      |   8 +
>  src/libxl/libxl_domain.h                      |   1 +
>  src/libxl/libxl_driver.c                      |  73 +--
>  src/lxc/lxc_conf.c                            |   3 +-
>  src/lxc/lxc_domain.c                          |   7 +
>  src/lxc/lxc_domain.h                          |   1 +
>  src/lxc/lxc_driver.c                          |  62 +-
>  src/openvz/openvz_conf.c                      |   2 +-
>  src/qemu/qemu_conf.c                          |   3 +-
>  src/qemu/qemu_domain.c                        |  39 ++
>  src/qemu/qemu_domain.h                        |   6 +
>  src/qemu/qemu_driver.c                        | 206 +------
>  src/qemu/qemu_process.c                       |   2 +-
>  src/security/virt-aa-helper.c                 |   2 +-
>  src/test/test_driver.c                        | 197 +++++-
>  src/vbox/vbox_common.c                        |   2 +-
>  src/vmware/vmware_driver.c                    |   2 +-
>  src/vmx/vmx.c                                 |   2 +-
>  src/vz/vz_driver.c                            |   2 +-
>  tests/bhyveargv2xmltest.c                     |   2 +-
>  .../generichotplug-controller.xml             |   1 +
>  .../generichotplug-disk-cdrom.xml             |   5 +
>  .../generichotplug-filesystem.xml             |   6 +
>  .../generichotplug-hostdev.xml                |   5 +
>  .../generichotplug-input.xml                  |   1 +
>  .../generichotplug-interface.xml              |   6 +
>  .../generichotplug-lease.xml                  |   5 +
>  .../generichotplug-memballoon.xml             |   3 +
>  .../generichotplug-memory.xml                 |   6 +
>  .../generichotplugdata/generichotplug-rng.xml |   4 +
>  .../generichotplug-shmem.xml                  |   4 +
>  .../generichotplug-sound.xml                  |   3 +
>  .../generichotplugdata/generichotplug-tpm.xml |   5 +
>  .../generichotplug-vsock.xml                  |   3 +
>  .../generichotplug-watchdog.xml               |   1 +
>  tests/generichotplugtest.c                    | 178 ++++++
>  tests/meson.build                             |   1 +
>  tests/testutils.c                             |   2 +-
>  49 files changed, 1378 insertions(+), 332 deletions(-)
>  create mode 100644 tests/generichotplugdata/generichotplug-
> controller.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-disk-
> cdrom.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> filesystem.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> hostdev.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-input.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> interface.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-lease.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> memballoon.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> memory.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-rng.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-shmem.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-sound.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-tpm.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-vsock.xml
>  create mode 100644 tests/generichotplugdata/generichotplug-
> watchdog.xml
>  create mode 100644 tests/generichotplugtest.c
> 
Ping =)