versions: Update cloud-hypervisor to release v0.11.0

The release v0.11.0 of cloud-hypervisor features the following changes:
1) Improved Linux Boot Time, 2) `SIGTERM/SIGINT` Interrupt Signal,
Handling 3) Default Log Level Changed, 4) `io_uring` support by default
for `virtio-block` (on host kernel version 5.8+), 5) Windows Guest
Support, 6) New `--balloon` Parameter Added, 7) Experimental
`virtio-watchdog` Support, 8) Bug fixes.

Fixes: #1089

Signed-off-by: Bo Chen <chen.bo@intel.com>
This commit is contained in:
Bo Chen 2020-11-06 16:19:31 -08:00
parent 6160043c01
commit 92c1c4c690
16 changed files with 158 additions and 97 deletions

View File

@ -58,6 +58,7 @@ Class | Method | HTTP request | Description
## Documentation For Models ## Documentation For Models
- [BalloonConfig](docs/BalloonConfig.md)
- [CmdLineConfig](docs/CmdLineConfig.md) - [CmdLineConfig](docs/CmdLineConfig.md)
- [ConsoleConfig](docs/ConsoleConfig.md) - [ConsoleConfig](docs/ConsoleConfig.md)
- [CpuTopology](docs/CpuTopology.md) - [CpuTopology](docs/CpuTopology.md)

View File

@ -332,19 +332,21 @@ components:
VmInfo: VmInfo:
description: Virtual Machine information description: Virtual Machine information
example: example:
memory_actual_size: 2
state: Created state: Created
config: config:
console: console:
mode: "false" mode: "false"
file: file file: file
iommu: false iommu: false
balloon:
size: 4
memory: memory:
hugepages: false hugepages: false
shared: false shared: false
mergeable: false mergeable: false
balloon: false size: 9
size: 7 hotplugged_size: 2
hotplugged_size: 3
zones: zones:
- hugepages: false - hugepages: false
shared: false shared: false
@ -364,9 +366,8 @@ components:
host_numa_node: 7 host_numa_node: 7
id: id id: id
hotplug_size: 1 hotplug_size: 1
hotplug_size: 9 hotplug_size: 3
hotplug_method: acpi hotplug_method: acpi
balloon_size: 2
disks: disks:
- path: path - path: path
num_queues: 1 num_queues: 1
@ -394,6 +395,7 @@ components:
threads_per_core: 1 threads_per_core: 1
cores_per_die: 5 cores_per_die: 5
packages: 2 packages: 2
max_phys_bits: 7
boot_vcpus: 1 boot_vcpus: 1
max_vcpus: 1 max_vcpus: 1
devices: devices:
@ -407,47 +409,47 @@ components:
path: path path: path
numa: numa:
- distances: - distances:
- distance: 6 - distance: 1
destination: 3 destination: 6
- distance: 6 - distance: 1
destination: 3 destination: 6
cpus: cpus:
- 6 - 3
- 6 - 3
memory_zones: memory_zones:
- memory_zones - memory_zones
- memory_zones - memory_zones
guest_numa_id: 9 guest_numa_id: 6
- distances: - distances:
- distance: 6 - distance: 1
destination: 3 destination: 6
- distance: 6 - distance: 1
destination: 3 destination: 6
cpus: cpus:
- 6 - 3
- 6 - 3
memory_zones: memory_zones:
- memory_zones - memory_zones
- memory_zones - memory_zones
guest_numa_id: 9 guest_numa_id: 6
rng: rng:
iommu: false iommu: false
src: /dev/urandom src: /dev/urandom
sgx_epc: sgx_epc:
- prefault: false - prefault: false
size: 8 size: 9
- prefault: false - prefault: false
size: 8 size: 9
fs: fs:
- num_queues: 4 - num_queues: 5
queue_size: 5 queue_size: 9
cache_size: 9 cache_size: 9
dax: true dax: true
tag: tag tag: tag
socket: socket socket: socket
id: id id: id
- num_queues: 4 - num_queues: 5
queue_size: 5 queue_size: 9
cache_size: 9 cache_size: 9
dax: true dax: true
tag: tag tag: tag
@ -461,18 +463,19 @@ components:
pmem: pmem:
- mergeable: false - mergeable: false
file: file file: file
size: 9 size: 6
iommu: false iommu: false
id: id id: id
discard_writes: false discard_writes: false
- mergeable: false - mergeable: false
file: file file: file
size: 9 size: 6
iommu: false iommu: false
id: id id: id
discard_writes: false discard_writes: false
cmdline: cmdline:
args: args args: args
watchdog: false
iommu: false iommu: false
serial: serial:
mode: "false" mode: "false"
@ -511,6 +514,9 @@ components:
- Shutdown - Shutdown
- Paused - Paused
type: string type: string
memory_actual_size:
format: int64
type: integer
required: required:
- config - config
- state - state
@ -543,13 +549,14 @@ components:
mode: "false" mode: "false"
file: file file: file
iommu: false iommu: false
balloon:
size: 4
memory: memory:
hugepages: false hugepages: false
shared: false shared: false
mergeable: false mergeable: false
balloon: false size: 9
size: 7 hotplugged_size: 2
hotplugged_size: 3
zones: zones:
- hugepages: false - hugepages: false
shared: false shared: false
@ -569,9 +576,8 @@ components:
host_numa_node: 7 host_numa_node: 7
id: id id: id
hotplug_size: 1 hotplug_size: 1
hotplug_size: 9 hotplug_size: 3
hotplug_method: acpi hotplug_method: acpi
balloon_size: 2
disks: disks:
- path: path - path: path
num_queues: 1 num_queues: 1
@ -599,6 +605,7 @@ components:
threads_per_core: 1 threads_per_core: 1
cores_per_die: 5 cores_per_die: 5
packages: 2 packages: 2
max_phys_bits: 7
boot_vcpus: 1 boot_vcpus: 1
max_vcpus: 1 max_vcpus: 1
devices: devices:
@ -612,47 +619,47 @@ components:
path: path path: path
numa: numa:
- distances: - distances:
- distance: 6 - distance: 1
destination: 3 destination: 6
- distance: 6 - distance: 1
destination: 3 destination: 6
cpus: cpus:
- 6 - 3
- 6 - 3
memory_zones: memory_zones:
- memory_zones - memory_zones
- memory_zones - memory_zones
guest_numa_id: 9 guest_numa_id: 6
- distances: - distances:
- distance: 6 - distance: 1
destination: 3 destination: 6
- distance: 6 - distance: 1
destination: 3 destination: 6
cpus: cpus:
- 6 - 3
- 6 - 3
memory_zones: memory_zones:
- memory_zones - memory_zones
- memory_zones - memory_zones
guest_numa_id: 9 guest_numa_id: 6
rng: rng:
iommu: false iommu: false
src: /dev/urandom src: /dev/urandom
sgx_epc: sgx_epc:
- prefault: false - prefault: false
size: 8 size: 9
- prefault: false - prefault: false
size: 8 size: 9
fs: fs:
- num_queues: 4 - num_queues: 5
queue_size: 5 queue_size: 9
cache_size: 9 cache_size: 9
dax: true dax: true
tag: tag tag: tag
socket: socket socket: socket
id: id id: id
- num_queues: 4 - num_queues: 5
queue_size: 5 queue_size: 9
cache_size: 9 cache_size: 9
dax: true dax: true
tag: tag tag: tag
@ -666,18 +673,19 @@ components:
pmem: pmem:
- mergeable: false - mergeable: false
file: file file: file
size: 9 size: 6
iommu: false iommu: false
id: id id: id
discard_writes: false discard_writes: false
- mergeable: false - mergeable: false
file: file file: file
size: 9 size: 6
iommu: false iommu: false
id: id id: id
discard_writes: false discard_writes: false
cmdline: cmdline:
args: args args: args
watchdog: false
iommu: false iommu: false
serial: serial:
mode: "false" mode: "false"
@ -727,6 +735,8 @@ components:
type: array type: array
rng: rng:
$ref: '#/components/schemas/RngConfig' $ref: '#/components/schemas/RngConfig'
balloon:
$ref: '#/components/schemas/BalloonConfig'
fs: fs:
items: items:
$ref: '#/components/schemas/FsConfig' $ref: '#/components/schemas/FsConfig'
@ -756,6 +766,9 @@ components:
iommu: iommu:
default: false default: false
type: boolean type: boolean
watchdog:
default: false
type: boolean
required: required:
- kernel - kernel
type: object type: object
@ -782,6 +795,7 @@ components:
threads_per_core: 1 threads_per_core: 1
cores_per_die: 5 cores_per_die: 5
packages: 2 packages: 2
max_phys_bits: 7
boot_vcpus: 1 boot_vcpus: 1
max_vcpus: 1 max_vcpus: 1
properties: properties:
@ -795,6 +809,8 @@ components:
type: integer type: integer
topology: topology:
$ref: '#/components/schemas/CpuTopology' $ref: '#/components/schemas/CpuTopology'
max_phys_bits:
type: integer
required: required:
- boot_vcpus - boot_vcpus
- max_vcpus - max_vcpus
@ -845,9 +861,8 @@ components:
hugepages: false hugepages: false
shared: false shared: false
mergeable: false mergeable: false
balloon: false size: 9
size: 7 hotplugged_size: 2
hotplugged_size: 3
zones: zones:
- hugepages: false - hugepages: false
shared: false shared: false
@ -867,9 +882,8 @@ components:
host_numa_node: 7 host_numa_node: 7
id: id id: id
hotplug_size: 1 hotplug_size: 1
hotplug_size: 9 hotplug_size: 3
hotplug_method: acpi hotplug_method: acpi
balloon_size: 2
properties: properties:
size: size:
format: int64 format: int64
@ -892,12 +906,6 @@ components:
hugepages: hugepages:
default: false default: false
type: boolean type: boolean
balloon:
default: false
type: boolean
balloon_size:
format: int64
type: integer
zones: zones:
items: items:
$ref: '#/components/schemas/MemoryZoneConfig' $ref: '#/components/schemas/MemoryZoneConfig'
@ -1031,10 +1039,20 @@ components:
required: required:
- src - src
type: object type: object
BalloonConfig:
example:
size: 4
properties:
size:
format: int64
type: integer
required:
- size
type: object
FsConfig: FsConfig:
example: example:
num_queues: 4 num_queues: 5
queue_size: 5 queue_size: 9
cache_size: 9 cache_size: 9
dax: true dax: true
tag: tag tag: tag
@ -1067,7 +1085,7 @@ components:
example: example:
mergeable: false mergeable: false
file: file file: file
size: 9 size: 6
iommu: false iommu: false
id: id id: id
discard_writes: false discard_writes: false
@ -1155,7 +1173,7 @@ components:
SgxEpcConfig: SgxEpcConfig:
example: example:
prefault: false prefault: false
size: 8 size: 9
properties: properties:
size: size:
format: int64 format: int64
@ -1168,8 +1186,8 @@ components:
type: object type: object
NumaDistance: NumaDistance:
example: example:
distance: 6 distance: 1
destination: 3 destination: 6
properties: properties:
destination: destination:
format: int32 format: int32
@ -1184,17 +1202,17 @@ components:
NumaConfig: NumaConfig:
example: example:
distances: distances:
- distance: 6 - distance: 1
destination: 3 destination: 6
- distance: 6 - distance: 1
destination: 3 destination: 6
cpus: cpus:
- 6 - 3
- 6 - 3
memory_zones: memory_zones:
- memory_zones - memory_zones
- memory_zones - memory_zones
guest_numa_id: 9 guest_numa_id: 6
properties: properties:
guest_numa_id: guest_numa_id:
format: int32 format: int32
@ -1217,8 +1235,8 @@ components:
type: object type: object
VmResize: VmResize:
example: example:
desired_balloon: 1
desired_vcpus: 1 desired_vcpus: 1
desired_ram_w_balloon: 1
desired_ram: 6 desired_ram: 6
properties: properties:
desired_vcpus: desired_vcpus:
@ -1228,8 +1246,8 @@ components:
description: desired memory ram in bytes description: desired memory ram in bytes
format: int64 format: int64
type: integer type: integer
desired_ram_w_balloon: desired_balloon:
description: desired ballon size in bytes description: desired balloon size in bytes
format: int64 format: int64
type: integer type: integer
type: object type: object

View File

@ -0,0 +1,11 @@
# BalloonConfig
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Size** | **int64** | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -7,6 +7,7 @@ Name | Type | Description | Notes
**BootVcpus** | **int32** | | [default to 1] **BootVcpus** | **int32** | | [default to 1]
**MaxVcpus** | **int32** | | [default to 1] **MaxVcpus** | **int32** | | [default to 1]
**Topology** | [**CpuTopology**](CpuTopology.md) | | [optional] **Topology** | [**CpuTopology**](CpuTopology.md) | | [optional]
**MaxPhysBits** | **int32** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -11,8 +11,6 @@ Name | Type | Description | Notes
**HotplugMethod** | **string** | | [optional] [default to acpi] **HotplugMethod** | **string** | | [optional] [default to acpi]
**Shared** | **bool** | | [optional] [default to false] **Shared** | **bool** | | [optional] [default to false]
**Hugepages** | **bool** | | [optional] [default to false] **Hugepages** | **bool** | | [optional] [default to false]
**Balloon** | **bool** | | [optional] [default to false]
**BalloonSize** | **int64** | | [optional]
**Zones** | [**[]MemoryZoneConfig**](MemoryZoneConfig.md) | | [optional] **Zones** | [**[]MemoryZoneConfig**](MemoryZoneConfig.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -12,6 +12,7 @@ Name | Type | Description | Notes
**Disks** | [**[]DiskConfig**](DiskConfig.md) | | [optional] **Disks** | [**[]DiskConfig**](DiskConfig.md) | | [optional]
**Net** | [**[]NetConfig**](NetConfig.md) | | [optional] **Net** | [**[]NetConfig**](NetConfig.md) | | [optional]
**Rng** | [**RngConfig**](RngConfig.md) | | [optional] **Rng** | [**RngConfig**](RngConfig.md) | | [optional]
**Balloon** | [**BalloonConfig**](BalloonConfig.md) | | [optional]
**Fs** | [**[]FsConfig**](FsConfig.md) | | [optional] **Fs** | [**[]FsConfig**](FsConfig.md) | | [optional]
**Pmem** | [**[]PmemConfig**](PmemConfig.md) | | [optional] **Pmem** | [**[]PmemConfig**](PmemConfig.md) | | [optional]
**Serial** | [**ConsoleConfig**](ConsoleConfig.md) | | [optional] **Serial** | [**ConsoleConfig**](ConsoleConfig.md) | | [optional]
@ -21,6 +22,7 @@ Name | Type | Description | Notes
**SgxEpc** | [**[]SgxEpcConfig**](SgxEpcConfig.md) | | [optional] **SgxEpc** | [**[]SgxEpcConfig**](SgxEpcConfig.md) | | [optional]
**Numa** | [**[]NumaConfig**](NumaConfig.md) | | [optional] **Numa** | [**[]NumaConfig**](NumaConfig.md) | | [optional]
**Iommu** | **bool** | | [optional] [default to false] **Iommu** | **bool** | | [optional] [default to false]
**Watchdog** | **bool** | | [optional] [default to false]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -6,6 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | ------------- ------------ | ------------- | ------------- | -------------
**Config** | [**VmConfig**](VmConfig.md) | | **Config** | [**VmConfig**](VmConfig.md) | |
**State** | **string** | | **State** | **string** | |
**MemoryActualSize** | **int64** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -6,7 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | ------------- ------------ | ------------- | ------------- | -------------
**DesiredVcpus** | **int32** | | [optional] **DesiredVcpus** | **int32** | | [optional]
**DesiredRam** | **int64** | desired memory ram in bytes | [optional] **DesiredRam** | **int64** | desired memory ram in bytes | [optional]
**DesiredRamWBalloon** | **int64** | desired ballon size in bytes | [optional] **DesiredBalloon** | **int64** | desired balloon size in bytes | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,14 @@
/*
* Cloud Hypervisor API
*
* Local HTTP based API for managing and inspecting a cloud-hypervisor virtual machine.
*
* API version: 0.3.0
* Generated by: OpenAPI Generator (https://openapi-generator.tech)
*/
package openapi
// BalloonConfig struct for BalloonConfig
type BalloonConfig struct {
Size int64 `json:"size"`
}

View File

@ -13,4 +13,5 @@ type CpusConfig struct {
BootVcpus int32 `json:"boot_vcpus"` BootVcpus int32 `json:"boot_vcpus"`
MaxVcpus int32 `json:"max_vcpus"` MaxVcpus int32 `json:"max_vcpus"`
Topology CpuTopology `json:"topology,omitempty"` Topology CpuTopology `json:"topology,omitempty"`
MaxPhysBits int32 `json:"max_phys_bits,omitempty"`
} }

View File

@ -17,7 +17,5 @@ type MemoryConfig struct {
HotplugMethod string `json:"hotplug_method,omitempty"` HotplugMethod string `json:"hotplug_method,omitempty"`
Shared bool `json:"shared,omitempty"` Shared bool `json:"shared,omitempty"`
Hugepages bool `json:"hugepages,omitempty"` Hugepages bool `json:"hugepages,omitempty"`
Balloon bool `json:"balloon,omitempty"`
BalloonSize int64 `json:"balloon_size,omitempty"`
Zones []MemoryZoneConfig `json:"zones,omitempty"` Zones []MemoryZoneConfig `json:"zones,omitempty"`
} }

View File

@ -18,6 +18,7 @@ type VmConfig struct {
Disks []DiskConfig `json:"disks,omitempty"` Disks []DiskConfig `json:"disks,omitempty"`
Net []NetConfig `json:"net,omitempty"` Net []NetConfig `json:"net,omitempty"`
Rng RngConfig `json:"rng,omitempty"` Rng RngConfig `json:"rng,omitempty"`
Balloon BalloonConfig `json:"balloon,omitempty"`
Fs []FsConfig `json:"fs,omitempty"` Fs []FsConfig `json:"fs,omitempty"`
Pmem []PmemConfig `json:"pmem,omitempty"` Pmem []PmemConfig `json:"pmem,omitempty"`
Serial ConsoleConfig `json:"serial,omitempty"` Serial ConsoleConfig `json:"serial,omitempty"`
@ -27,4 +28,5 @@ type VmConfig struct {
SgxEpc []SgxEpcConfig `json:"sgx_epc,omitempty"` SgxEpc []SgxEpcConfig `json:"sgx_epc,omitempty"`
Numa []NumaConfig `json:"numa,omitempty"` Numa []NumaConfig `json:"numa,omitempty"`
Iommu bool `json:"iommu,omitempty"` Iommu bool `json:"iommu,omitempty"`
Watchdog bool `json:"watchdog,omitempty"`
} }

View File

@ -12,4 +12,5 @@ package openapi
type VmInfo struct { type VmInfo struct {
Config VmConfig `json:"config"` Config VmConfig `json:"config"`
State string `json:"state"` State string `json:"state"`
MemoryActualSize int64 `json:"memory_actual_size,omitempty"`
} }

View File

@ -13,6 +13,6 @@ type VmResize struct {
DesiredVcpus int32 `json:"desired_vcpus,omitempty"` DesiredVcpus int32 `json:"desired_vcpus,omitempty"`
// desired memory ram in bytes // desired memory ram in bytes
DesiredRam int64 `json:"desired_ram,omitempty"` DesiredRam int64 `json:"desired_ram,omitempty"`
// desired ballon size in bytes // desired balloon size in bytes
DesiredRamWBalloon int64 `json:"desired_ram_w_balloon,omitempty"` DesiredBalloon int64 `json:"desired_balloon,omitempty"`
} }

View File

@ -360,6 +360,9 @@ components:
state: state:
type: string type: string
enum: [Created, Running, Shutdown, Paused] enum: [Created, Running, Shutdown, Paused]
memory_actual_size:
type: integer
format: int64
description: Virtual Machine information description: Virtual Machine information
VmCounters: VmCounters:
@ -407,6 +410,8 @@ components:
$ref: '#/components/schemas/NetConfig' $ref: '#/components/schemas/NetConfig'
rng: rng:
$ref: '#/components/schemas/RngConfig' $ref: '#/components/schemas/RngConfig'
balloon:
$ref: '#/components/schemas/BalloonConfig'
fs: fs:
type: array type: array
items: items:
@ -436,6 +441,9 @@ components:
iommu: iommu:
type: boolean type: boolean
default: false default: false
watchdog:
type: boolean
default: false
description: Virtual machine configuration description: Virtual machine configuration
CpuTopology: CpuTopology:
@ -466,6 +474,8 @@ components:
type: integer type: integer
topology: topology:
$ref: '#/components/schemas/CpuTopology' $ref: '#/components/schemas/CpuTopology'
max_phys_bits:
type: integer
MemoryZoneConfig: MemoryZoneConfig:
required: required:
@ -527,12 +537,6 @@ components:
hugepages: hugepages:
type: boolean type: boolean
default: false default: false
balloon:
type: boolean
default: false
balloon_size:
type: integer
format: int64
zones: zones:
type: array type: array
items: items:
@ -639,6 +643,15 @@ components:
type: boolean type: boolean
default: false default: false
BalloonConfig:
required:
- size
type: object
properties:
size:
type: integer
format: int64
FsConfig: FsConfig:
required: required:
- tag - tag
@ -791,8 +804,8 @@ components:
description: desired memory ram in bytes description: desired memory ram in bytes
type: integer type: integer
format: int64 format: int64
desired_ram_w_balloon: desired_balloon:
description: desired ballon size in bytes description: desired balloon size in bytes
type: integer type: integer
format: int64 format: int64

View File

@ -75,7 +75,7 @@ assets:
url: "https://github.com/cloud-hypervisor/cloud-hypervisor" url: "https://github.com/cloud-hypervisor/cloud-hypervisor"
uscan-url: >- uscan-url: >-
https://github.com/cloud-hypervisor/cloud-hypervisor/tags.*/v?(\d\S+)\.tar\.gz https://github.com/cloud-hypervisor/cloud-hypervisor/tags.*/v?(\d\S+)\.tar\.gz
version: "6d30fe05e4febd930d91bb36294f0219faf2254c" version: "v0.11.0"
firecracker: firecracker:
description: "Firecracker micro-VMM" description: "Firecracker micro-VMM"