[PATCH v4 0/9] Enable mshv support for Qemu domains

Praveen K Paladugu posted 9 patches 1 week, 6 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20251107201401.30004-1-praveenkpaladugu@gmail.com
src/conf/schemas/basictypes.rng               |    22 +
src/conf/schemas/capability.rng               |    14 +-
src/conf/schemas/domaincommon.rng             |    23 +-
src/qemu/qemu_capabilities.c                  |    39 +-
src/qemu/qemu_capabilities.h                  |     1 +
src/qemu/qemu_cgroup.c                        |     6 +
src/qemu/qemu_command.c                       |     4 +-
src/qemu/qemu_namespace.c                     |     2 +
src/qemu/qemu_process.c                       |     2 +-
.../qemu_10.2.0-q35.x86_64+mshv.xml           |   222 +
.../qemu_10.2.0-tcg.x86_64+mshv.xml           |  2334 +
.../qemu_10.2.0.x86_64+mshv.xml               |   222 +
.../caps_10.2.0_x86_64+mshv.replies           | 45176 ++++++++++++++++
.../caps_10.2.0_x86_64+mshv.xml               |  3212 ++
.../qemucaps2xmloutdata/caps.x86_64+mshv.xml  |    29 +
...86_64-q35-headless.x86_64-latest+mshv.args |    48 +
...x86_64-q35-headless.x86_64-latest+mshv.xml |    87 +
...mshv-x86_64-q35-headless.x86_64-latest.err |     1 +
.../mshv-x86_64-q35-headless.xml              |    35 +
tests/qemuxmlconftest.c                       |     5 +
20 files changed, 51446 insertions(+), 38 deletions(-)
create mode 100644 tests/domaincapsdata/qemu_10.2.0-q35.x86_64+mshv.xml
create mode 100644 tests/domaincapsdata/qemu_10.2.0-tcg.x86_64+mshv.xml
create mode 100644 tests/domaincapsdata/qemu_10.2.0.x86_64+mshv.xml
create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.replies
create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.xml
create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.args
create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.xml
create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest.err
create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.xml
[PATCH v4 0/9] Enable mshv support for Qemu domains
Posted by Praveen K Paladugu 1 week, 6 days ago
This patch set introduces changes within libvirt to lauch Qemu guests with
Microsoft Hypervisor(mshv).

Qemu exposes this capability as 'mshv' accelerator type. Below is an excerpt
of domain XML with mshv accelerator.:

```
<domain type='hyperv'>
		<name>qemu_mshv_test</name>

  	<os>
    		<type machine='q35'>hvm</type>
  	</os>
		...

```

'mshv' accelerator within Qemu translates to 'hyperv' domains in Libvirt.

Changs in v4:
- Adopted `query-accelerators` API to get mshv capabilities.
- Fixed virtytpe parsing in schemas.

Chages in v3:
- Addressed review comments on v2.
- fixed qemucapabilitiestest case
- Added a case to qemuxmlconftest

Changes in v2:
- Addressed review comments on v1.
- Added a test to verify mshv capabilities.

Eugene Fedorenko (1):
  qemu: Append mshv to hwaccel list.

Praveen K Paladugu (8):
  qemu: Introduce mshv capabilities
  qemu: Query and use mshv capabilities
  qemu: use mshv accel for hyperv domains
  qemu: conditionally add /dev/mshv to acl
  conf: Fix virttype handling in schemas
  tests: Add domaincaps case for mshv
  tests: qemucapabilities: Introduce MSHV capability
  tests:qemuxmlconftest: Add case for hyperv domains

 src/conf/schemas/basictypes.rng               |    22 +
 src/conf/schemas/capability.rng               |    14 +-
 src/conf/schemas/domaincommon.rng             |    23 +-
 src/qemu/qemu_capabilities.c                  |    39 +-
 src/qemu/qemu_capabilities.h                  |     1 +
 src/qemu/qemu_cgroup.c                        |     6 +
 src/qemu/qemu_command.c                       |     4 +-
 src/qemu/qemu_namespace.c                     |     2 +
 src/qemu/qemu_process.c                       |     2 +-
 .../qemu_10.2.0-q35.x86_64+mshv.xml           |   222 +
 .../qemu_10.2.0-tcg.x86_64+mshv.xml           |  2334 +
 .../qemu_10.2.0.x86_64+mshv.xml               |   222 +
 .../caps_10.2.0_x86_64+mshv.replies           | 45176 ++++++++++++++++
 .../caps_10.2.0_x86_64+mshv.xml               |  3212 ++
 .../qemucaps2xmloutdata/caps.x86_64+mshv.xml  |    29 +
 ...86_64-q35-headless.x86_64-latest+mshv.args |    48 +
 ...x86_64-q35-headless.x86_64-latest+mshv.xml |    87 +
 ...mshv-x86_64-q35-headless.x86_64-latest.err |     1 +
 .../mshv-x86_64-q35-headless.xml              |    35 +
 tests/qemuxmlconftest.c                       |     5 +
 20 files changed, 51446 insertions(+), 38 deletions(-)
 create mode 100644 tests/domaincapsdata/qemu_10.2.0-q35.x86_64+mshv.xml
 create mode 100644 tests/domaincapsdata/qemu_10.2.0-tcg.x86_64+mshv.xml
 create mode 100644 tests/domaincapsdata/qemu_10.2.0.x86_64+mshv.xml
 create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.replies
 create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.xml
 create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
 create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.args
 create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.xml
 create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest.err
 create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.xml

-- 
2.51.0
Re: [PATCH v4 0/9] Enable mshv support for Qemu domains
Posted by Wei Liu via Devel 3 days, 11 hours ago
Ping. This has been pending for a while. Are there more comments?

On Fri, Nov 07, 2025 at 02:13:51PM -0600, Praveen K Paladugu wrote:
> This patch set introduces changes within libvirt to lauch Qemu guests with
> Microsoft Hypervisor(mshv).
> 
> Qemu exposes this capability as 'mshv' accelerator type. Below is an excerpt
> of domain XML with mshv accelerator.:
> 
> ```
> <domain type='hyperv'>
> 		<name>qemu_mshv_test</name>
> 
>   	<os>
>     		<type machine='q35'>hvm</type>
>   	</os>
> 		...
> 
> ```
> 
> 'mshv' accelerator within Qemu translates to 'hyperv' domains in Libvirt.
> 
> Changs in v4:
> - Adopted `query-accelerators` API to get mshv capabilities.
> - Fixed virtytpe parsing in schemas.
> 
> Chages in v3:
> - Addressed review comments on v2.
> - fixed qemucapabilitiestest case
> - Added a case to qemuxmlconftest
> 
> Changes in v2:
> - Addressed review comments on v1.
> - Added a test to verify mshv capabilities.
> 
> Eugene Fedorenko (1):
>   qemu: Append mshv to hwaccel list.
> 
> Praveen K Paladugu (8):
>   qemu: Introduce mshv capabilities
>   qemu: Query and use mshv capabilities
>   qemu: use mshv accel for hyperv domains
>   qemu: conditionally add /dev/mshv to acl
>   conf: Fix virttype handling in schemas
>   tests: Add domaincaps case for mshv
>   tests: qemucapabilities: Introduce MSHV capability
>   tests:qemuxmlconftest: Add case for hyperv domains
> 
>  src/conf/schemas/basictypes.rng               |    22 +
>  src/conf/schemas/capability.rng               |    14 +-
>  src/conf/schemas/domaincommon.rng             |    23 +-
>  src/qemu/qemu_capabilities.c                  |    39 +-
>  src/qemu/qemu_capabilities.h                  |     1 +
>  src/qemu/qemu_cgroup.c                        |     6 +
>  src/qemu/qemu_command.c                       |     4 +-
>  src/qemu/qemu_namespace.c                     |     2 +
>  src/qemu/qemu_process.c                       |     2 +-
>  .../qemu_10.2.0-q35.x86_64+mshv.xml           |   222 +
>  .../qemu_10.2.0-tcg.x86_64+mshv.xml           |  2334 +
>  .../qemu_10.2.0.x86_64+mshv.xml               |   222 +
>  .../caps_10.2.0_x86_64+mshv.replies           | 45176 ++++++++++++++++
>  .../caps_10.2.0_x86_64+mshv.xml               |  3212 ++
>  .../qemucaps2xmloutdata/caps.x86_64+mshv.xml  |    29 +
>  ...86_64-q35-headless.x86_64-latest+mshv.args |    48 +
>  ...x86_64-q35-headless.x86_64-latest+mshv.xml |    87 +
>  ...mshv-x86_64-q35-headless.x86_64-latest.err |     1 +
>  .../mshv-x86_64-q35-headless.xml              |    35 +
>  tests/qemuxmlconftest.c                       |     5 +
>  20 files changed, 51446 insertions(+), 38 deletions(-)
>  create mode 100644 tests/domaincapsdata/qemu_10.2.0-q35.x86_64+mshv.xml
>  create mode 100644 tests/domaincapsdata/qemu_10.2.0-tcg.x86_64+mshv.xml
>  create mode 100644 tests/domaincapsdata/qemu_10.2.0.x86_64+mshv.xml
>  create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.replies
>  create mode 100644 tests/qemucapabilitiesdata/caps_10.2.0_x86_64+mshv.xml
>  create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
>  create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.args
>  create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest+mshv.xml
>  create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.x86_64-latest.err
>  create mode 100644 tests/qemuxmlconfdata/mshv-x86_64-q35-headless.xml
> 
> -- 
> 2.51.0
>