mirror of
git://git.yoctoproject.org/meta-virtualization.git
synced 2025-12-15 22:55:21 +01:00
Bumping libvirt to version v11.4.0, which comprises the following commits:
8ba3d94995 Release of libvirt-11.4.0
eb7b8ac5ff Translated using Weblate (Korean)
cd6a09c7f3 NEWS: Mention removal of compile time helper program lookup, virito-net ABI check and FDC capabilities
73f57e051a qemu: Fix error when migration with shared TPM storage is unsupported
dc1fe00e94 NEWS: update NEWS for POWER11 support
93d34fe442 NEWS: Make sure releases are separated by two blank lines
cfa295eccb NEWS: Fix virtqemud crash when resuming failed post-copy migration
34ce7f25c5 qemu: Fix crash when resuming failed post-copy migration
ac4f855bb0 Update translation files
0020966fee po: Refresh potfile for v11.4.0
43dc3b690b docs: domain: Explain supported options of 'error_policy'
d82df5884a Translated using Weblate (Georgian)
8482e27ed7 Translated using Weblate (Chinese (Simplified) (zh_CN))
424d3720e2 Translated using Weblate (Korean)
bb881a2e49 qemuDomainMachineSupportsFloppy: Check for QEMU_CAPS_BUS_FLOPPY
f7d1caa81d qemu: capabilities: Introduce QEMU_CAPS_BUS_FLOPPY
600065cefc qemu: Move floppy device support validation to validation code
e8017c12c8 qemu: domain: Introduce qemuDomainMachineSupportsFloppy
481a38c45f libvirt_nss: Allocate buffer in aiforaf() dynamically
209ca5f839 libvirt_nss: Allocate buffer in ERROR() dynamically
6133c09cf5 libvirt_nss: Drop needless cleanup labels
dbd41b6558 libvirt_nss: Use automatic memory freeing
6d1848ac12 nss: Declare g_autofree and g_steal_pointer() macros
f79ef43f2c nss: Add missing includes for gai_strerror()
46b0115778 libvirt_nss_macs: Fix type of @len in findMACsFromJSON()
7b0888b4ef cpu_ppc64: Add POWER11 host-model support
e17aa7408c cpu_map: Add POWER11 CPU model support
a714d53f74 tests: Add capabilities for QEMU 10.0.0 on ppc64
1c077f6a73 tests: qemuhotplugtest: Set the cpu version at source for PPC64 tests
0742b6487a tests: Pin pseries-2.7 tests to the version 7.0
47431165f4 virsh: Do not print warnings with "error:" prefix
eb9b48bddf docs: drvbhyve: document NVRAM support
14c05d8f3e NEWS: bhyve: document NVRAM support
e06902917c build-aux: simplify grep detection on FreeBSD
17e170a137 qemuMonitorJSONMigrate: Drop 'detach' QMP option
f0b29d4a6f qemuMonitorDumpToFd: Drop 'detach' argument
d9b90d6f89 virsh: domain: Annotate rest of arguments taking local existing file
811749a266 virsh: Apply empty completer to arguments where completion doesn't make sense
0f430122d3 vsh: Apply empty/local completers to global commands
8d1cd03478 virsh: completer: Extract common completer methods from virsh to vsh
c22b734117 cputest: Skip more tests requiring JSON_MODELS if QEMU is disabled
5fdcf07e5d bhyve: support removing NVRAM on domain undefine
4fc9b49217 bhyve: introduce bhyveDomainDefValidate()
b869102f5e bhyve: firmware: try to guess NVRAM settings
c7d1bbd9a4 bhyve: generate NVRAM bhyve arguments
24bdf9a15f bhyve: conf: introduce nvramDir
aeb1f77c0f qemu: fd: Log information about passed file descriptor
c8c3920e35 docs: backup: Hint at proper selinux labelling of the FD-passed NBD socket
3d05fe7aa3 qemuBackupPrepare: Actually allow 'VIR_STORAGE_NET_HOST_TRANS_FD'
16c4fa9f82 build: do not use -Winline
681d64b939 build: prohibit inline functions in C files by syntax-check
df75a015a1 NEWS: Mention new option '--no-pkttyagent'
0eea768f4b virsh: Add option '--no-pkttyagent'
05f34d585a qemuDomainRemoveInactive: Remove 'driver' argument
e9e8faa280 qemuProcessReconnectData: Drop 'driver' struct and clean up
36069750ee qemuProcessReconnect: Modernize local variable setup
54aad47a02 qemuDomainRemoveInactiveLocked: Remove 'driver' argument
1375974995 qemuProcessStop: Drop 'driver' argument
b5131f00b6 qemuDomainRemoveInactiveCommon: Remove 'driver' argument
475000c9bc qemuSnapshotDiscardAllMetadata: Remove 'driver' argument
ecadb2f19a qemuCheckpointDiscardAllMetadata: Remove 'driver' argument
f0ccfe9f9d qemuExtDevicesCleanupHost: Use 'virQEMUDriverConfig' instead of 'virQEMUDriver'
e0481ec1db qemuProcessStartWithMemoryState: Rename 'snapshot' to 'internalSnapshotRevert'
897b3aa3c5 qemuProcessStart: Rename 'snapshot' to 'internalSnapshotRevert'
a82f2b6de7 qemuProcessLaunch: Rename 'snapshot' to 'internalSnapshotRevert'
63bc7ea39c qemuBuildCommandLine: Drop 'snapshot' argument
c4f70cc4d9 qemuSnapshotRevertInactive: Ensure all error paths handle transient domains properly
542f1378bf qemuSnapshotRevertActive: Remove transient domain on failure
f06805a979 NEWS: Mention fix for internal snapshot reversion regression
889d2ae289 qemuProcessStartWithMemoryState: Don't setup qemu for incoming migration when reverting internal snapshot
bf79a021a6 cpu_x86: Do not inline cpuidCall()
768b539d83 spec: Bump min_fedora
e2bc742fcc spec: Bump min_rhel
37ce03c6fe ci: refresh with 'lcitool manifest'
431911a846 tests: Add pcihole64 test for virt machine
329afc74b1 qemu: Add command line support for PCI high memory MMIO size
91e1b2cb7c qemu: Add capability for PCI high memory MMIO size
8a9d201bf6 ch: Support RNG device
95d665c768 rpc: Add the {repoll,retry} logic in virNetClientSetTLSSession
1e2b13fb20 src: Fix retval of some functions declared to return an int
fe1f94a034 virsh-pool.c: Fix return type of virshBuildPoolXML()
a9adca0956 virnetdevvlan: Fix return type of virNetDevVlanEqual()
a857d993d1 storage_backend_rbd.C: Fix return type of a volStorageBackendRBDUseFastDiff() stub
1cf0944ceb qemu_process: Fix return type of qemuDomainHasHotpluggableStartupVcpus()
7e763c5275 nwfilter: Fix return type of virNWFilterCanApplyBasicRules callback
9fc9395c41 storage_backend_rbd.c: Make virStorageBackendRBDSetAllocation() stub report an error
d892d3c276 virDomainNetDefCheckABIStability: Consider virtio 'queues' ABI
465a38154f virNetDevTapCreate: Use error message hinting to multiqueue use only when opening multiple queues
0e1c309157 docs: man: Document '--once' for 'virsh autostart'
dd8573b3ea API: Clarify behaviour of autostart vs autostart once
6db8dc63bc qemuDomainPrepareHostdevPCI: Simplify error messages
fced1da279 qemuDomainPrepareHostdevPCI: Fix return values after conversion from bool to int
28c16b7d11 virnetdevtap: Fix memory leak in virNetDevTapReattachBridge
6c4260b501 virnetlink: Split virNetlinkBridgeVlanFilterSet()
6a23a61496 virnetdevbridge: Include virnetlink.h more often
54fbcc6c7d virnetdevbridge.c: Fix comments in virNetDevBridgeSetupVlans()
89c622744f virnetlink: Provide stub for virNetlinkBridgeVlanFilterSet()
bd30147e74 rpm: disable zfs on Fedora >= 43
cea2ee1d28 tests: Add capabilities for QEMU 10.0.0 on aarch64
3d6c40df37 tests: Use collie instead of borzoi for aarch64 tests
6ff8d08777 qemu_capabilities: Fetch caps for virtio-mem-ccw too
18ff3c9fbf ci: refresh with 'lcitool manifest'
2756609a3e docs: hooks: Document when shutoff-reason argument was introduced
c074f2f9a8 cpu_x86: Fix algorithm for computing CPU model weight
8c23ba74c7 cpu_x86: Refactor virCPUx86CompareCandidateFeatureList
18baf82a02 cputest: Add data for a newer version of Intel Atom(R) P5362 CPU
91878efb57 cputest: Add data for Intel(R) Xeon(R) w7-3465X CPU
44bbbb672a cputest: Add data for Intel(R) Xeon(R) Gold 6530 CPU
3b6fcd3e13 cputest: Add data for Intel(R) Xeon(R) Bronze 3408U CPU
ac35760043 cputest: Add data for Intel(R) Xeon(R) 6731E CPU
9d518cd0fe cputest: Add data for AMD EPYC 9334 32-Core CPU
05ee8942f0 cputest: Add data for Intel(R) Xeon(R) Gold 6152 CPU
a7e7971224 cputest: Add data for AMD Ryzen 5 5500U CPU
e7be4feea1 cputest: Add data for AMD EPYC 7713 64-Core CPU
42e14595f3 cputest: Add data for Intel(R) Xeon(R) Silver 4214R CPU
1424a1a17b cputest: Add data for Intel(R) Xeon(R) CPU E3-1270 v5 CPU
e66a2079b8 cputest: Add data for Intel(R) Core(TM) i7-1365U CPU
c976bf9be7 cputest: Add data for Intel(R) Core(TM) i7-1270P CPU
670aae6cda tests: update capabilities for QEMU 10.0.0 on s390x
c72a1751e5 qemuxmlactivetest: Don't segfault when capability XMLs are invalid
5650f1f1e7 domaincapstest: Remove XMLs for already dropped qemu versions (4.2.0 - 5.1.0)
f0668b7bf0 qemucapabilitiesdata: Enable GTK graphics for 'caps_10.0.0_x86_64'
5df511d178 scripts: Adapt mock-noinline.py to ATTRIBUTE_MOCKABLE
f8bc6af44d src: s/G_NO_INLINE/ATTRIBUTE_MOCKABLE/
76f8c0b80d internal: Introduce ATTRIBUTE_MOCKABLE
27c964a7e4 openvz: stop hardcoding vzlist/vzctl/vzmigrate paths
a3977c246e util: stop hardcoding pkttyagent path
4f8b9e731a storage: stop hardcoding LVM tool paths
68d17f641a meson: stop setting conf var for optional programs
8faebd4aa8 util: remove use hardcoded TC path
5f781ab311 util: remove use hardcoded OVS_VSCTL path
b6e50df68d util: remove use hardcoded MODPROBE/RMMOD paths
19f2b047d3 util: remove use hardcoded MM_CTL path
d15cdacc3a nodedev: remove use hardcoded MDEVCTL path
fa513d5845 util: remove hardcoded ISCSIADM command path
ce7ac2f908 meson: remove check for 'ip' program
5d36775747 util: remove use hardcoded DMIDECODE path
f4e95d1215 meson: stop setting conf var for required programs
014bf667c6 build-aux: add missing definition of PERL variable
46aab93457 docs: stop setting vars for docs tools
6bfead9893 util: stop hardcoding 'ifconfig' path
f7abafdd05 util: stop hardcoding bhyve, bhyvectl, bhyveload paths
654e30b98c util: stop hardcoding numad path
88f560b619 tests: storage hardcoding paths for mount & vgchange
69eff8ed22 storage: stop hardcoding paths for mkfs, mount, umount
62cf5ba3f9 Post-release version bump to 11.4.0
cc934f93a5 Release of libvirt-11.3.0
eeae25d07c Translated using Weblate (Romanian)
4792cc46b6 Translated using Weblate (Spanish)
27f2900615 Translated using Weblate (Romanian)
742fca442d Translated using Weblate (Ukrainian)
e1882a4ac4 Translated using Weblate (Chinese (Simplified) (zh_CN))
afadcc7359 Update translation files
e1fdff61be scripts: Fix reading list of files in mock-noinline.py
c19c8f1996 util: Add missing G_NO_INLINE annotation
b41577396f po: Refresh potfile for v11.3.0
386cb6708b Translated using Weblate (Finnish)
408475296a Translated using Weblate (Georgian)
05ed4dde65 Translated using Weblate (Korean)
09798e46e3 Translated using Weblate (Spanish)
7d3ac8017d remote: expand some debug messages for socket detection
11abe72fad kbase: update docs to account for changed error message
79e26b7b21 remote: improve error message when no URI is set
a77cdea4cf qemucapabilitiestest: Final update for qemu-10.0 release on x86_64 of the 'amdsev' variant
6e1448d8a8 qemucapabilitiestest: Final update for qemu-10.0 release on x86_64
2dd0ad6d52 rpm: Enable KVM for riscv64 on RHEL 10+
c5a73f75bc qemu_rdp: Fix a typo existance -> existence
750eaf2243 python: Do not explicitly state variables are global when only read
ab1218c610 nwfilter: Fix erroneous pointer passing to g_clear_pointer
8685923df0 virbitmap: Change return type of virBitmapToData to void
6387253c42 docs: formatdomain: Metion virtio model for currentAddress
da062b4d6c bhyve: use const virDomainDef pointer in bhyveBuildNetArgStr()
16a34cedf3 conf: use const virDomainDef pointers
faa98ca6d3 nss: Fix memory leak in findLease()
5de27c32a1 nwfilter: Avoid possible double free in virNWFilterInstReset()
9ccd9676a8 virsh: prevent potential NULL dereference
6230eed02c bhyve: capabilities: advertise RNG device support
9b152fcf6f docs: drvbhyve: document virtio-rnd support
21e3cf978b NEWS: bhyve: document new features
ac6519084c vsh: Turn _vshControl::progname into a const string
9e89ef3f2f vsh: Free commands in vshDeinit()
32fb9af277 NEWS: Mention fix of crash on disk hotplug failure
ba4de5e09e qemuDomainAttachDiskGeneric: Report errors from 'qemuBuildThrottleFiltersAttachPrepareBlockdev'
727f42a8cd qemu: block: Don't crash if qemuBlockThrottleFiltersDetach gets NULL @data
44abaa0128 qemu: make passt+vhostuser reconnect behave identically to passt+user
95ff77f289 qemu: put vhost-user code that's special for passt in a helper function
dedf1ada95 qemu: respond to NETDEV_VHOST_USER_DISCONNECTED event
03a6bc7752 qemu: make processNetDevStreamDisconnectedEvent() reusable
51a54dc1c4 qemu: remove nonsensical sanity check in processNetdevStreamDisconnectedEvent()
68a83cac64 qemuDomainBlockCopyCommon: Don't revoke access to file twice on failure
63c348e88a qemuDomainBlockCopyCommon: Reorder setup of 'mirror' data
93307c7a50 qemu: domain: Unexport 'qemuDomainPrepareStorageSourceBlockdevNodename'
a55f1930d5 ch: fix double space in error message
e1e40b5035 bhyve: support interface type 'network'
1ec1b765d6 bhyve: extend RNG device validation
0464a9462c bhyve: argv2xml: support virtio-rnd devices
03fac384c5 bhyve: support random number generator device
97ed7f22b0 qemu: Properly propagate migration state to TPM cleanup code
a5e4ca6f02 qemu: Rename outgoingMigration parameter in various TPM functions
ac5874ba87 network: Suppress reporting an error when D-Bus is unavailable in networkStateInitialize()
4f502feebf virinhibitor: Suppress reporting an error when D-Bus is unavailable in virInhibitorAcquire()
4940e27321 NEWS: Mention fix for 'qemu-rdp' error being logged
bd473480b4 qemu: rdp: Fix 'qemuRdpAvailable()'
59f40ba67c esx: Accept empty "path" URI component same way as "/"
617e2dc319 manpages: virsh: Use disclaimer from 'virNodeGetInfo()' for 'virsh nodeinfo'
6654cf472c virNodeGetInfo: Improve description of the case when fake data is reported
e54cc1500c libvirt-host: Clarify/fix description of the CPU frequency field
be29dbe187 virHostCPUGetInfoPopulateLinux: Remove 'cleanup'
f883dab020 virHostCPUGetInfoPopulateLinux: Use automatic memory freeing
9a747afe6c qemu: capabilities: Retire QEMU_CAPS_NBD_BITMAP
4675e7d3a8 qemu: capabilities: Retire QEMU_CAPS_BLOCK_EXPORT_ADD
57b9b969fb qemu: monitor: Drop wrappers for 'nbd-server-add'
cb332d616a qemu: block: Always assume support for 'block-export-add'
fe88f3f151 docs: drvqemu: Fix required minimum qemu version to 6.2.0
cdf599cfb6 NEWS: mention vol-create bug fix
b8c3d847a9 storage: virStorageVolDefParse and storageVolCreateXML flags fix
7f07cf5a72 docs: Render API and XML sections one per line in HTML
d8d7d970c3 docs: Re-order XML schema after API documentation on 'docs' page
4ba5b659dc NEWS: Document ARM CPU map bug fix
701b2c0fca cpu_map: Install Ampere-1 ARM CPU models
b72270fafd tests: Add a basic CPU test for aarch64
73d8cbaae5 meson: Drop workaround for -Wframe-larger-than and clang
01a098ebc7 vbox: Move parts of vboxSnapshotRedefine() into a separate function
61e1e61f81 vbox: Move parts of vboxSnapshotRedefine() into a separate function
cccdb33ced vbox: Move parts of vboxSnapshotRedefine() into a separate function
de3ea81270 vbox: Move parts of vboxSnapshotRedefine() into a separate function
f9c4f20d8f doRemoteOpen: Drop needless typecast of @transport
62ba268cd7 doRemoteOpen: Move RPC talk to a separate function
063222801a remote_driver: Move URI arg extraction into a separate function
008ccd3518 ch: Fix printf format strings wrt size_t argument
b065df3d04 ch: Drop pid from monitor
3dae81c8d7 ch: Use CH_DOMAIN_PRIVATE() more
6e147f6eac Add NEWS item for <hyperv/> flags with Xen
410dfde9bb libxl_conf: Implement hyperv domain flags for Xen
312088d9b6 tools: virsh: metadata: do not report error on missing metadata
d7492f5225 Translated using Weblate (Ukrainian)
60b37479f8 docs: add table showing guest IP/DNS/gateway settings when using SLIRP
4c5e3b1ca0 ch: virCHProcessEvent() vm shutdown event handler fix
ad22460a75 ch: virCHProcessEvent() update domain info after reboot
9d6e2d127e ch: virCHMonitorNew() run new CH monitor daemonized
e677faa11e qemu: capabilities: Retire QEMU_CAPS_SNAPSHOT_INTERNAL_QMP
38d47345e2 qemu: monitor: Remove HMP monitor code
edc541129f qemu: Always revert internal snapshots via QMP rather than '-loadvm'
31896db4d5 qemu: snapshot: Always assume support for QEMU_CAPS_SNAPSHOT_INTERNAL_QMP
4d548a2458 qemuSnapshotCreateActiveInternal: Fix error logic
62d6794827 qemu: domain: Don't check return value of 'virCPUDefCopy'
8c2872d72c qemu: monitor: Improve field annotations in QEMU_CHECK_MONITOR
e2c6f436dc tests: domainbackupxml2xml: Add test case for pull-mode backup with NBD transport='fd'
eb768a556d backup: Add support for passing server socket file descriptor to backup NBD server
2e014dfae6 qemu: monitor: Support FD passing of sockets to 'qemuMonitorJSONNBDServerStart'
5da6b62419 virStorageNetHostDefClear: Move into virStorageNetHostDefFree
ee49106dbf conf: Introduce VIR_STORAGE_NET_HOST_TRANS_FD
081f3ec3dd virDomainStorageNetworkParseHost: Refactor cleanup
aa3c1de260 virDomainStorageNetworkParseHost: Remove unpopulated 'transport' variable
93ecaec845 virDomainDiskDefValidateSourceChainOne: Fix validation of 'data-file' nesting
7d4de62cfa esxConnectListAllDomains: Don't propagate failure to lookup a single domain
904b5e9d06 news: document dropping apparmor < 3.0.0
5ed5673ebf meson: drop remaining checks for apparmor version
2c46d5c216 Revert "apparmor: Allow version-specific bits in profiles"
b8b60c4bee Revert "apparmor: Allow version-specific bits in abstractions too"
933494237a apparmor: assume at least apparmor >= 3
21b7b02b72 meson: mandate apparmor >= 3.0.0
52638fb16a Post-release version bump to 11.3.0
73329aa737 Release of libvirt-11.2.0
803671de80 Translated using Weblate (Korean)
60d3a62c35 Translated using Weblate (English (United Kingdom))
40f5082683 NEWS: qemu: support block disk along with throttle filters
0123456789 NEWS: Document features/improvements/bug fixes I've participated in
d84b249577 NEWS: Mention bump to qemu-6.2, vhost-user shmem check and stats params discoverabilty
8a48877a5a doc: remove wrong comment
3cb6e14343 lib: virDomain{Save,Restore}Params: Ensure absolute path
fa86037eb5 Update translation files
52e3f3041f qemu_driver: Fix virDomainSaveImageDefineXML
a442f46b0e po: Refresh potfile for v11.2.0
50981052a5 qemu: Emit NIC_MAC_CHANGE event
057872df2d Introduce NIC_MAC_CHANGE event
ac95617d3d qemu: Reflect MAC address change in live domain XML
d5666b3c2e NEWS: Mention virsh hypervisor-cpu-models command
bd21e22fe6 Translated using Weblate (Spanish)
631fceade9 NEWS: Mention guest agent error code improvements
8ab9c74df9 qemuAgentCheckError: Rewort error if neither return nor error is found
b38d66e81e qemuAgentCheckError: Use 'VIR_ERR_AGENT_COMMAND_FAILED'
c3a92081c8 lib: error: Introduce 'VIR_ERR_AGENT_COMMAND_FAILED'
8b40067ece docs: Point to VIR_ERR_AGENT_COMMAND_TIMEOUT when setting timeout
54312df15b qemuAgentCommandFull: Use VIR_ERR_AGENT_COMMAND_TIMEOUT when agent disappears
305e91dc21 qemu: agent: Differentiate timeouts when syncing from command timeout
ae499e4536 lib: error: Introduce 'VIR_ERR_AGENT_COMMAND_TIMEOUT'
d61ca2665e NEWS: fix one more typo
50cc071858 NEWS: hotplug virtio-mem device
25a26bd97b Translated using Weblate (Chinese (Traditional) (zh_TW))
0ae12c6173 Translated using Weblate (English (United Kingdom))
5801e3ce26 Translated using Weblate (Russian)
ec16313f8b NEWS: Mention support for mapped-ram
6bd9b06484 qemu: Fix build on 32-bit platforms
ddb8305049 virsh: add --image-format option to the save command
73cf89e8f2 tools: use virDomainSaveParams only when necessary
b982583d92 tools: use virDomainRestoreParams only when necessary
ff22383b34 qemu: remove VIR_DOMAIN_SAVE_PARALLEL flag
2582f4dcab tools: remote --parallel from virsh save command
ec274a96b6 tools: remove --parallel from virsh restore command
743f49aa66 NEWS: fix even more typos
37429530cc qemu/dbus: Allow connections from root to the dbus-daemon
c2f6feb54f Fix typo in NEWS files
a6aa0f0c7e Add NEWS item for auto-shutdown feature
a274048196 tools: add parallel parameter to virsh restore command
380cffda23 tools: add parallel parameter to virsh save command
f0169f4d6c qemu: Add support for parallel save and restore
3637c4dd8b include: Define constants for parallel save/restore
da4273db05 qemu: Support O_DIRECT with mapped-ram on restore
06bdb1b6c7 qemu: Support O_DIRECT with mapped-ram on save
28a0621528 qemu: Add support for mapped-ram on restore
138737b203 qemu: Apply migration parameters in qemuMigrationDstRun
5b324c0a73 qemu: Move creation of qemuProcessIncomingDef struct
c2518f7bc7 qemu: Add support for mapped-ram on save
a24f10f91e qemu: Add helper function for creating save image fd
fa68f78f13 qemu_saveimage: add "sparse" to supported save image formats
c939bf537e qemu: Add function to get migration params for save
ac2f196ddd qemu: Add mapped-ram migration capability
f80d59afe1 qemu: Add function to get bool value from migration params
61a095cfc7 qemu: Add function to check capability in migration params
3f53bfac41 qemu: Add function to get FDPass object from monitor
9cbc2b9c51 virsh: Add option "throttle-groups" to "attach_disk"
180d41934c virsh: Add support for throttle group operations
f839ff5887 virsh: Refactor iotune options for re-use
53088d8cab qemustatusxml2xmldata: Add 'throttlefilter' tests
18a912f55f qemuxmlconftest: Add 'throttlefilter' tests
2279f9e0ff config: validate: Verify iotune, throttle group and filter
9a6560f066 qemu: block: Support block disk along with throttle filters
80307f4823 qemu: helper: throttle filter nodename and preparation processing
937f300c56 qemu: Implement qemu driver for throttle API
9f29461704 qemu: Refactor qemuDomainSetBlockIoTune to extract common methods
a10b3ffebb remote: New APIs for ThrottleGroup lifecycle management
5023d974b1 tests: Test qemuMonitorJSONGetThrottleGroup and qemuMonitorJSONUpdateThrottleGroup
8beb51f23d qemu: monitor: Add support for ThrottleGroup operations
7b4ea19772 config: Introduce ThrottleFilter and corresponding XML parsing
644a97b87d config: Introduce ThrottleGroup and corresponding XML parsing
8ce2d2df0e schema: Add new domain elements to support multiple throttle filters
2463533aad schema: Add new domain elements to support multiple throttle groups
65eeaf12d0 virsh: Introduce new hypervisor-cpu-models command
563d3cfb86 hypervisor: emit systemd status & log messages while saving
364977b94a rpc: don't let systemd shutdown daemon while saving VMs
27020d20ee admin: add 'daemon-shutdown' command
94029c9d64 rpc: fix shutdown sequence when preserving state
4acd18b5b8 rpc: don't unconditionally quit after preserving state
1cad0a1c78 rpc: move state stop into virNetDaemon class
77c32d2d53 rpc: rename virNetDaemonSetShutdownCallbacks
256ed0c9f9 src: clarify semantics of the various virStateNNN methods
da1d0f32d0 qemu: add config to control if auto-shutdown VMs are restored
7e153492e7 qemu: wire up support for once only autostart
602f2e60ca hypervisor: wire up support for auto restore of running domains
c6018e5f87 conf: implement support for autostart once feature
65345dbf47 src: add new APIs for marking a domain to autostart once
543d259ad3 qemu: add config parameter to control auto-save bypass cache
b11c76e514 hypervisor: support bypassing cache for managed save
faa7a082a1 qemu: configurable delay for shutdown before poweroff
eb51f97870 qemu: improve shutdown defaults for session daemon
f48f700f3d qemu: support automatic VM managed save in system daemon
84bb136c31 hypervisor: custom shutdown actions for transient vs persistent VMs
f4f5e6bdc4 hypervisor: expand available shutdown actions
2b792b35a4 remote: always invoke virStateStop for all daemons
991a20a938 hypervisor: move support for auto-shutdown out of QEMU driver
f48fb17d72 qemuHotplugRemoveManagedPR: Integrate check whether removal is needed
ad94d8fb19 qemuDomainChangeEjectableMedia: Separate rollback and success code paths
1f00a208ea qemu: Remove return value from 'qemuHotplugRemoveManagedPR'
d87e5a1de1 qemu: Do not replace filter nodes with virDomainBlockCopy
ca429f102c qemu: monitor: Wire up 'replaces' attribute for 'blockdev-mirror'
6ccf67f5a7 NEWS: Mention multiple iothread support for 'virtio-scsi' controller
a4cbad35c9 qemuxmlconftest: Add 'iothreads-virtio-scsi-mapping' case
adb812f068 qemu: Implement support for iothread <-> virtqueue mapping for 'virtio-scsi' controllers
9c4664e8e5 conf: Add support for iothread to queue mapping config for 'virtio-scsi'
285ae7feb3 qemu: capabilities: Introduce QEMU_CAPS_VIRTIO_SCSI_IOTHREAD_MAPPING
d2414079f7 qemucapabilitiestest: Update 'caps_10.0.0_x86_64' to v9.2.0-2799-g0462a32b4f
815c22a3a7 conf: also free auth for rdp in virDomainGraphicsDefFree
cae2d23a83 qemu: remove unreachable breaks in qemuDomainAssignMemoryDeviceSlot
9ef080d6d9 qemu_domain_address: fix CCW virtio-mem hotplug
be30b8eef9 tests: add qemu <graphics type='rdp'/> test
d80f1f8e63 qemu: add RDP support
f5e5a9bec9 qemu: add 'rdp' capability if qemu-rdp is available
e008d229f4 qemu: pass virQEMUDriverConfig to capabilities
469e161946 qemu: add qemu-rdp helper unit
cdee56a955 qemu: validate RDP configuration
507be3425b qemu/dbus: log daemon stdout/err, use domainLogContext
dbfb96d18c qemu/dbus: keep a connection to the VM D-Bus
3af8f135e9 qemu/virtiofs: use domainLogContext
a4d8df93ce qemu: limit to one <graphics type='rdp'>
cab7d25371 qemu: add RDP ports range allocator
14146b05b6 qemu: use virDomainDefHasGraphics
97829d016d conf: generalize virDomainDefHasSpiceGraphics
bfa7d5aaa8 conf: parse optional RDP username & password
bd5f4d3237 qemu: add qemu RDP configuration
12d7b9fe26 qemu: add rdp state directory
ebdcec7dc9 util: annotate non-null arguments for virGDBusCallMethod()
de9b1f0e72 qemu-slirp: drop unneeded check for OOM
44089b4eea build: fix -Werror=maybe-uninitialized
7253dda517 build-sys: drop -Winline when optimization=g
7dcfa95e47 news: Add item for guest load averages
acf2f9e1ef src: add new target for regenerating protocol structs files
dcd1132937 src: normalize whitespace in protocol structs files
fc201e0fcc ch: Fix refcounting in virCHEventHandlerLoop() and virCHStartEventHandler()
1db1244752 ch: preserve last error in virCHProcessStop()
5a20684788 docs: Fix some typos
01a7e84be9 docs: remove references to removed APIs
cb3a6e8806 scripts: add execute permission to several files
40c0c9c838 docs: document workaround for DMARC countermeasures
4c979edaa5 conf: parse interface/source/@dev for all interface types (with backend type='passt')
902237664f Remove unreachable breaks right after return
c6f0819f1d qemu: remove unused vm from qemuBuildPVCommandLine
5c52740587 qemu: remove unused vm from qemuBuildSEVSNPCommandLine
cda322b8b2 qemu: remove qemuCaps from qemuBuildIOThreadCommandLine
fc43efc312 qemu: remove qemuCaps from qemuBuildObjectCommandline
7e0fbdf91d qemu: remove qemuCaps from qemuBuildTLSx509CommandLine
69ccd52b7c qemu: remove qemuCaps from qemuBuildObjectSecretCommandLine
28a22dc3a1 qemu: remove qemuCaps from qemuBuildObjectCommandlineFromJSON
7fc6764fb6 qemu: validate: fs: remove unneeded parameter
e4383feaa4 qemu: seccomp sandbox: remove incorect G_GNUC_UNUSED marker
b6dbabc589 NEWS: Mention new 'image_format' parameter for virDomainSaveParams
b9f54f8792 docs: Clarify what source and name attributes of TPM profile describe
eb6c28408d ch: Rework virCHProcessConnectMonitor()
5ed2ed8708 ch: Unref @cfg in virCHProcessStop()
b9a10cf4bb ch: Free @iothreads array in virCHProcessSetupIOThreads()
1b25f1e53b ch: Don't leak virCHDomainObjPrivate struct members
9da8db464a ch: Free retval of curl_slist_append()
8701ba4feb network: Free inhibitor in networkStateCleanup()
4f1e9d02ea qemu: capabilites: Retire QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING
e5d7a871c5 qemu: migration: Always assume support for QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING
eb27abb415 qemu: domain: Remove qemuDomainSupportsCheckpointsBlockjobs
e1bce4ecd2 qemu: capabilites: Retire QEMU_CAPS_INCREMENTAL_BACKUP
0b939c467a qemu: Always assume support for QEMU_CAPS_INCREMENTAL_BACKUP
e6815547c8 qemu: capabilities: Retire QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY
2f4e76a770 qemu: Always assume support for QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY
514c1f8dda qemu: capabilities: Retire QEMU_CAPS_BLOCKDEV_REOPEN
4983cb62e6 qemu: Always assume support for QEMU_CAPS_BLOCKDEV_REOPEN
5ec6318c05 qemu: capabilities: Retire QEMU_CAPS_QMP_QUERY_NAMED_BLOCK_NODES_FLAT
a8ac578419 qemu: monitor: Always assume support for QEMU_CAPS_QMP_QUERY_NAMED_BLOCK_NODES_FLAT
52ec7929b0 qemu: capabilities: Retire QEMU_CAPS_OBJECT_JSON
f46e2bf3b0 util: Drop 'virQEMUBuildCommandLineJSONArrayBitmap'
af227c6ab0 qemu: monitor: Drop support for extra wrapper for 'object_add'
51f7b35612 qemuBuildObjectCommandlineFromJSON: Assume all qemus support QEMU_CAPS_OBJECT_JSON
554a5e508a qemu: capabilities: Retire QEMU_CAPS_COMPAT_DEPRECATED
57cbe6a569 qemuBuildCompatDeprecatedCommandLine: Assume that QEMU_CAPS_COMPAT_DEPRECATED is supported
67d2787807 domainbackupxml2xml: Add test case with unix socket server for pull mode backup
5d95391203 docs: formatdomain: Clarify configuration of iothread <-> virtqueue mapping
0ee6848ca5 virDomainIothreadMappingDefParse: Fix usage of virXMLNodeGetSubelementList
fcd47086f4 virXMLNodeGetSubelementList: Document return value semantics
482a2d119b qemu: Use modern header formatting in 'qemu_command.h'
080c7fd341 qemu: process: Remove un-updated 'qemuProcessStartWarnShmem'
0d20632179 qemuValidateDomainDeviceDefNetwork: Require shared memory for all vhost-user interfaces
779a975355 qemuxmlconftest: Include shared memory 'net-vhostuser' test cases
2daf61ffec qemuNodeGetSEVInfo: Use virTypedParamList to construct return value
710e90fc69 qemuDomainGetLaunchSecurityInfo: Use virTypedParamList to construct return value
20e0bc3fbd qemuDomainGetLaunchSecurityInfo: Don't forget unlock VM object on (impossible) error
defca11627 src: expand docs for guest stats constant version handling
c27bced958 src: expand docs for guest stats array handling
728b22be92 src: document that no constants are provided for custom VM stats
5d9f73628b src: add constants for domain stats 'dirtyrate.' parameters
b1c0ec1767 src: add constants for domain stats 'memory.' parameters
ca0aa86fbb src: add constants for domain stats 'iothread.' parameters
69e8341f10 src: add constants for domain stats 'perf.' parameters
4661ceb067 src: add constants for domain stats 'block.' parameters
88bae83ea9 src: add constants for domain stats 'net.' parameters
b040ee0c98 src: add constants for domain stats 'vcpu.' parameters
6a16c3ca8c src: add constants for domain stats 'balloon.' parameters
947306957e src: add constants for domain stats 'cpu.' parameters
df0513fa36 src: add constants for domain stats 'state.' parameters
8927d4eedc src: expand docs for guest info constant version handling
5436eba3a8 src: expand docs for guest info array handling
325b5701ae src: add constants for guest info 'load.' parameters
9e725c1ccd src: add constants for guest info 'if.' parameters
d28a49cd6d src: add constants for guest info 'disk.' parameters
c9a8c55f96 src: add constants for guest info 'fs.' parameters
941d11fe71 src: add constant for the guest info 'hostname' parameter
e7a122a192 src: add constants for guest info 'timezone.' parameters
7192539cec src: add constants for guest info 'os.' parameters
0a19b61a6c src: add constants for guest info 'user.' parameters
278b8334eb qemu: snapshot: error out early when reverting snapshot for VM with non-file disk
fc47a37a7a security: Don't stop restoring labels too early
63c0f15f09 docs: Correct dbus graphics' accepted p2p values
b0527a8f8e tests: update capabilities for QEMU 9.2.0 on s390x
477a81fedb esx: Refactor esxVI_LookupHostScsiTopologyLunListByTargetName
cc33c02ad5 ch: Enable SEV SNP support
695a4f38b5 util: Introduce virStringFormatHex
9d1e4b25ba security: Set seclabels on UEFI shim
39c1784ca0 qemu_command: Generate cmd line for UEFI shim
b136e492c5 qemu_validate: Check whether UEFI shim is supported
30be3b0d9d qemu_capabilities: Introduce QEMU_CAPS_MACHINE_SHIM
6b63334233 conf: Introduce os/shim element
17945b8ec9 qemucapabilitiestest: Add data for the qemu-10.0 dev cycle on x86_64 for the '+amdsev' variant
c941fec220 qemucapabilitiestest: Update 'caps_10.0.0_x86_64' to 'v9.2.0-2369-g98c7362b1e'
5cc3803d1d qemu: block: Drop 'sheepdog' protocol support
8824af826d qemu: capabilities: Bump minimum qemu to qemu-6.2
cbe39cfa8e qemucapabilitiesdata: Drop un-updated 'qemu_8.0.0_riscv64' data
81098ff4c6 qemucapabilitiesdata: Drop un-updated 'caps_7.0.0_aarch64' data
623312ecfb qemucapabilitiesdata: Drop un-updated 'qemu_6.2.0_aarch64' data
991ac7372f qemucapabilitiestest: Drop unused fake data 'caps_7.0.0_aarch64+hvf'
c63055dc38 qemucapabilitiestest: Add 'qemu_9.2.0.aarch64+hvf' test data
ac3291f8db qemucapabilitiestest: Drop qemu-6.1 data
58193c5b25 qemucapabilitiestest: Drop qemu-6.0 data
4ddc5cdddc qemucapabilitiestest: Drop qemu-5.2 data
ab10e9b003 qemuxmlconftest: Drop tests pinned to qemu-6.1
9d3e9e0bc7 qemuxmlconftest: Drop tests pinned to qemu-6.0
f642c029f5 qemuxmlconftest: Drop tests pinned to qemu-5.2
f976d1b06c conf: Drop support for 'sheepdog' disks
23c3900054 ci: refresh with 'lcitool manifest'
d23a516eba util: netdevvlan: Change return type of virNetDevVlanCopy to void
c4b7d29610 util: virxml: unexport virXMLFormatElementInternal
e042ff6dd0 domain_conf: refactor virDomainLoaderDefFormatNvram
aedfdaa3f6 conf: use virXMLFormatElementDirect
4cc562651f util: virxml: introduce virXMLFormatElementDirect
915b2bfcfe Translated using Weblate (Spanish)
798d87539d domain_conf: graphics: properly escape user provided strings when formatting XML
6786ae80a3 domain_conf: graphics: fix error messages when formatting XML
1ef5926a80 domain_conf: graphics: move remaining VNC formatting
15599d3481 domain_conf: graphics: move remaining spice formatting
08925c0bea domain_conf: graphics: move listens formatting to relevant graphics types
5f97b846f0 domain_conf: graphics: extract listen formatting to separate function
4c2c7720fe domain_conf: graphics: extract DBus formatting to separate function
e95d362ba7 domain_conf: graphics: extract EGL-Headless formatting to separate function
287c1a761e domain_conf: graphics: extract Spice formatting to separate function
a93ea4cd84 domain_conf: graphics: extract Desktop formatting to separate function
c2dcb47413 domain_conf: graphics: extract RDP formatting to separate function
7a05d981eb domain_conf: graphics: extract SDL formatting to separate function
9774254ce3 domain_conf: graphics: extract VNC formatting to separate function
227bf2c9de domain_conf: modernize graphics formatting
8d055b7d61 domain_conf: graphics: use a function to format audio element
320273df54 domain_conf: graphics: use a function to format gl element
288f90feb3 qemu: support MSDM ACPI table type
32765cd14e conf: support MSDM ACPI table type
dac6ecba6f libxl: support 'rawset' ACPI table type
fe0cf62e0f qemu: support 'raw' ACPI table type
513ef8f028 src: introduce 'raw' and 'rawset' ACPI table types
3d94587655 src: validate permitted ACPI table types in libxl/qemu drivers
55f48d3852 conf: introduce support for multiple ACPI tables
92de6563c6 nwfilter: Fix deadlock between nwfilter-list and VM startup/migration
8acc0b76c6 qemu: snapshot: Remove dead code in qemuSnapshotDeleteBlockJobFinishing()
628989369b docs: Fix formatting in formatdomain.rst
07d8755523 domain_caps: Don't leak 'cpu0_id' in 'virSEVCapabilitiesFree'
bddb2363e8 qemuxmlconftest: Add '+amdsev' versions of the rest of 'launch-security-sev*' cases
8a852c3a90 qemuxmlconftest: Add 'latest' version of 'launch-security-sev*' originally using 6.0.0
59e528ea0d qemuxmlconftest: Propery discriminate output files for caps variants
4492348b96 qemucapabilitiestest: Add test data for 'qemu-9.2' on a SEV-enabled AMD host
0e58c04fc9 qemucapabilitiesdata: Document '+amdsev' variant
b7657a6d2e domaincapstest: Allow tests of all capability variants
af68ab6b26 domaincapstest: Use proper input file based on 'variant' in 'fillQemuCaps'
107cf9992f qemu: capabilities: Parse 'cpu0Id' from capability cache XML
25270737d3 conf: change virDomainDefAddImplicitControllers() to return void
fd6cfeeeea conf: change virDomainDefMaybeAddSmartcardController() to return void
be9a0f4764 conf: change virDomainDefMaybeAddVirtioSerialController() to return void
74e36dfce0 conf: change virDomainDefAddDiskControllersForType() to return void
7cfcfcc403 conf: change virDomainDefMaybeAddHostdevSCSIcontroller() to return void
250d6ac2a0 conf: change virDomainDefMaybeAddController() to return true/false
cc82b06036 hyperv: change hypervDomainDefAppendController() to return void
e207c9c17e conf: change virDomainDefAddUSBController() to return void
b0ef70aca9 conf: stop checking for NULL return from virDomainDefAddController()
b62ce44a61 conf: stop checking for NULL return from virDomainControllerDefNew()
3d263290df conf: change qemuDomainDefAddImplicitInputDevice() to return void
b7da649e6e libxl: change xenDomainDefAddImplicitInputDevice() to return void
8733ce0151 conf: change virDomainDefMaybeAddInput() to return void
2f8fde6680 conf: change virDomainShmemDefInsert() to return void
1456fe2c54 conf: change virDomainFSInsert() to return void
5c5135849b conf: change virDomainNetInsert() to return void
9bd83854f7 ci: refresh with 'lcitool manifest'
49b2a75e04 ci: use Fedora 41 to run integration tests
7762cbc308 ci: use iptables to run libvirt-tck
b98a474a44 docs/api.rst: revert erroneously change of Once -> OnDevice
e5299ddf86 meson: Generate runstatedir according to newer standard
100dd5f3a7 virDomainHostdevDefNew: update users not to check return value
5e3e924248 qemu: Add support for 'image_format' typed parameter
fdb7b1e19a include: Define constant for save image format
ec50e0cf63 qemu: Check for valid save image formats when loading driver config
1564607cd0 qemu: Change return value of SaveImageGetCompressionProgram
757fa62cfd qemu: Don't ignore dump image format errors
1a5692a6e1 qemu: Move declaration of virQEMUSaveFormat to header file
1bbb1a02d9 schemas: domaincaps: Add missing schema for '<cpu0Id>'
e088895a62 qemuPrepareNVRAMFile: Fix NVRAM image conversion check
a479c3465e conf: metadata: remove metadata node if all metadata is removed
0b69d47774 conf: metadata: ignore empty metadata element
633c55dbd6 conf: obj: remove extra empty line
66d6fd7ffa conf: networkobj: fix indentation
282f38ad3d cpu_map: arm: Add AmpereOne CPU models
7d78044165 cpu_arm: Report vendor ID for unknown PVRs
40b83176af qemuDomainGetGuestInfo: Remove temporary infrastructure
9f4c6ebc39 qemuDomainGetGuestInfo: Convert hostname code to virTypedParamList
dd59d0f77d qemuAgentGetUsers: Convert to virTypedParamList
0f5bb2c20d qemuAgentGetOSInfo: Convert to virTypedParamList
52fd07c9f0 qemuAgentGetTimezone: Convert to virTypedParamList
3d0203709f qemuAgentFSInfoFormatParams: Convert interface code to virTypedParamList
1dc68d6c6e qemuAgentDiskInfoFormatParams: Convert interface code to virTypedParamList
3c75bae720 virDomainInterfaceFormatParams: Convert interface code to virTypedParamList
2391a96141 qemuDomainGetGuestInfo: Convert load code to virTypedParamList
d6b34d0de8 qemuDomainGetGuestInfo: Prepare for refactor to virTypedParamList
89a57e7fe0 qemu: Report disk bus as reported by agent in virDomainGetGuestInfo
71e75ce092 virsh: Add support for VIR_DOMAIN_GUEST_INFO_LOAD
b4cf9c8cba qemu: Add support for VIR_DOMAIN_GUEST_INFO_LOAD
1669d91ead qemu_agent: Add qemuAgentGetLoadAvg()
c52c449fd4 Add load average information type into virDomainGetGuestInfo
e9cb690d21 Post-release version bump to 11.2.0
9cd0673748 Release of libvirt-11.1.0
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
336 lines
14 KiB
BlitzBasic
336 lines
14 KiB
BlitzBasic
DESCRIPTION = "A toolkit to interact with the virtualization capabilities of recent versions of Linux."
|
|
HOMEPAGE = "http://libvirt.org"
|
|
LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
|
|
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
|
file://COPYING.LESSER;md5=4b54a1fd55a448865a0b32d41598759d"
|
|
SECTION = "console/tools"
|
|
|
|
DEPENDS = "bridge-utils gnutls libxml2 lvm2 avahi parted curl libpcap util-linux e2fsprogs pm-utils \
|
|
iptables dnsmasq readline libtasn1 libxslt-native acl libdevmapper libtirpc \
|
|
python3-docutils-native \
|
|
${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'shadow-native', '', d)} \
|
|
${@bb.utils.contains('PACKAGECONFIG', 'gnutls', 'gnutls-native', '', d)}"
|
|
|
|
# libvirt-guests.sh needs gettext.sh
|
|
#
|
|
RDEPENDS:${PN} = "gettext-runtime"
|
|
|
|
RDEPENDS:libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
|
|
RDEPENDS:libvirt-libvirtd:append:x86-64 = " dmidecode"
|
|
RDEPENDS:libvirt-libvirtd:append:x86 = " dmidecode"
|
|
RDEPENDS:libvirt-libvirtd:append:arm = " dmidecode"
|
|
RDEPENDS:libvirt-libvirtd:append:aarch64 = " dmidecode"
|
|
|
|
#connman blocks the 53 port and libvirtd can't start its DNS service
|
|
RCONFLICTS:${PN}_libvirtd = "connman"
|
|
|
|
SRCREV_libvirt = "8ba3d94995cd044ca7836cb937b14cd47eb0b868"
|
|
|
|
LIBVIRT_VERSION = "11.4.0"
|
|
PV = "v${LIBVIRT_VERSION}+git"
|
|
|
|
SRC_URI = "gitsm://github.com/libvirt/libvirt.git;name=libvirt;protocol=https;branch=master \
|
|
file://libvirtd.sh \
|
|
file://libvirtd.conf \
|
|
file://dnsmasq.conf \
|
|
file://hook_support.py \
|
|
file://gnutls-helper.py;subdir=${BP} \
|
|
file://libvirt-qemu.conf \
|
|
file://0001-prevent-gendispatch.pl-generating-build-path-in-code.patch \
|
|
file://0001-messon.build-remove-build-path-information-to-avoid-.patch \
|
|
file://0001-meson.build-clear-abs_top_builddir-to-avoid-QA-warni.patch \
|
|
file://0001-tests-meson-clear-absolute-directory-paths.patch \
|
|
file://0001-qemu_nbdkit.c-use-llu-to-print-time_t.patch \
|
|
"
|
|
|
|
inherit meson gettext update-rc.d pkgconfig systemd useradd perlnative
|
|
USERADD_PACKAGES = "${PN}"
|
|
GROUPADD_PARAM:${PN} = "-r qemu; -r kvm; -r libvirt; -r virtlogin"
|
|
USERADD_PARAM:${PN} = "-r -g qemu -G kvm qemu"
|
|
|
|
CFLAGS += "${@oe.utils.vartrue('DEBUG_BUILD', '-Wno-error=inline', '', d)}"
|
|
|
|
EXTRA_OEMESON += "--cross-file ${WORKDIR}/meson-${PN}.cross"
|
|
do_write_config:append() {
|
|
cat >${WORKDIR}/meson-${PN}.cross <<EOF
|
|
[binaries]
|
|
iptables = '/usr/sbin/iptables'
|
|
ip6tables = '/usr/sbin/ip6tables'
|
|
dmidecode = '/usr/sbin/dmidecode'
|
|
ebtables = '/sbin/ebtables'
|
|
dnsmasq = '/usr/bin/dnsmasq'
|
|
EOF
|
|
}
|
|
|
|
ALLOW_EMPTY:${PN} = "1"
|
|
INSANE_SKIP:${PN} += "empty-dirs"
|
|
|
|
PACKAGES =+ "${PN}-libvirtd ${PN}-virsh"
|
|
|
|
ALLOW_EMPTY:${PN}-libvirtd = "1"
|
|
|
|
FILES:${PN}-libvirtd = " \
|
|
${sysconfdir}/init.d \
|
|
${sysconfdir}/sysctl.d \
|
|
${sysconfdir}/logrotate.d \
|
|
${sysconfdir}/libvirt/libvirtd.conf \
|
|
/usr/lib/sysctl.d/60-libvirtd.conf \
|
|
/usr/lib/sysctl.d/60-qemu-postcopy-migration.conf \
|
|
${sbindir}/libvirtd \
|
|
${systemd_system_unitdir} \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', '${libexecdir}/libvirt-guests.sh', d)} \
|
|
${@bb.utils.contains('PACKAGECONFIG', 'gnutls', '${sysconfdir}/pki/libvirt/* ${sysconfdir}/pki/CA/*', '', d)} \
|
|
"
|
|
|
|
FILES:${PN}-virsh = " \
|
|
${bindir}/virsh \
|
|
${datadir}/bash-completion/completions/virsh \
|
|
"
|
|
RDEPENDS:${PN}-virsh = "${PN}-libvirtd"
|
|
|
|
FILES:${PN} += "${libdir}/libvirt/connection-driver \
|
|
${datadir}/augeas \
|
|
${@bb.utils.contains('PACKAGECONFIG', 'polkit', '${datadir}/polkit-1', '', d)} \
|
|
${datadir}/bash-completion/completions/vsh \
|
|
${datadir}/bash-completion/completions/virt-admin \
|
|
/usr/lib/firewalld/ \
|
|
${nonarch_libdir}/sysusers.d/ \
|
|
"
|
|
|
|
FILES:${PN}-dbg += "${libdir}/libvirt/connection-driver/.debug ${libdir}/libvirt/lock-driver/.debug"
|
|
FILES:${PN}-staticdev += "${libdir}/*.a ${libdir}/libvirt/connection-driver/*.a ${libdir}/libvirt/lock-driver/*.a"
|
|
|
|
CONFFILES:${PN} += "${sysconfdir}/libvirt/libvirt.conf \
|
|
${sysconfdir}/libvirt/lxc.conf \
|
|
${sysconfdir}/libvirt/qemu-lockd.conf \
|
|
${sysconfdir}/libvirt/qemu.conf \
|
|
${sysconfdir}/libvirt/virt-login-shell.conf \
|
|
${sysconfdir}/libvirt/virtlockd.conf"
|
|
|
|
CONFFILES:${PN}-libvirtd = "${sysconfdir}/logrotate.d/libvirt ${sysconfdir}/logrotate.d/libvirt.lxc \
|
|
${sysconfdir}/logrotate.d/libvirt.qemu ${sysconfdir}/logrotate.d/libvirt.uml \
|
|
${sysconfdir}/libvirt/libvirtd.conf \
|
|
/usr/lib/sysctl.d/libvirtd.conf"
|
|
|
|
INITSCRIPT_PACKAGES = "${PN}-libvirtd"
|
|
INITSCRIPT_NAME:${PN}-libvirtd = "libvirtd"
|
|
INITSCRIPT_PARAMS:${PN}-libvirtd = "defaults 72"
|
|
|
|
SYSTEMD_PACKAGES = "${PN}-libvirtd"
|
|
SYSTEMD_SERVICE:${PN}-libvirtd = " \
|
|
libvirtd.service \
|
|
virtlockd.service \
|
|
libvirt-guests.service \
|
|
virtlockd.socket \
|
|
"
|
|
|
|
# xen-minimal config
|
|
#PACKAGECONFIG ??= "xen libxl xen-inotify test remote libvirtd"
|
|
|
|
# full config
|
|
PACKAGECONFIG ??= "gnutls qemu openvz vmware vbox esx lxc test remote \
|
|
libvirtd netcf udev python fuse firewalld libpcap \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
|
|
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
|
|
"
|
|
|
|
# qemu is NOT compatible with mips64, powerpc and riscv32
|
|
PACKAGECONFIG:remove:mipsarchn32 = "qemu"
|
|
PACKAGECONFIG:remove:mipsarchn64 = "qemu"
|
|
PACKAGECONFIG:remove:powerpc = "qemu"
|
|
PACKAGECONFIG:remove:riscv32 = "qemu"
|
|
|
|
# numactl is NOT compatible with arm
|
|
PACKAGECONFIG:remove:arm = "numactl"
|
|
PACKAGECONFIG:remove:armeb = "numactl"
|
|
|
|
# enable,disable,depends,rdepends
|
|
#
|
|
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
|
|
PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Ddriver_qemu=disabled,qemu json-c,"
|
|
PACKAGECONFIG[libxl] = "-Ddriver_libxl=enabled,-Ddriver_libxl=disabled,xen,"
|
|
PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
|
|
PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
|
|
PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
|
|
PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
|
|
PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
|
|
PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
|
|
PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
|
|
PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
|
|
PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
|
|
PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
|
|
PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
|
|
PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
|
|
PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
|
|
PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
|
|
PACKAGECONFIG[python] = ",,python3,"
|
|
PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
|
|
PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
|
|
PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse3,"
|
|
PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
|
|
PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
|
|
PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
|
|
PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=enabled, -Dapparmor_profiles=disabled,"
|
|
PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
|
|
PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
|
|
PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"
|
|
|
|
# Enable the Python tool support
|
|
require libvirt-python.inc
|
|
|
|
do_compile() {
|
|
cd ${B}/src
|
|
# There may be race condition, but without creating these directories
|
|
# in the source tree, generation of files fails.
|
|
for i in access admin logging esx locking rpc hyperv lxc \
|
|
remote network storage interface nwfilter node_device \
|
|
secret vbox qemu; do
|
|
mkdir -p $i;
|
|
done
|
|
|
|
cd ${B}
|
|
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
|
|
ninja all
|
|
}
|
|
|
|
do_install:prepend() {
|
|
# so the install routines can find the libvirt.pc in the source dir
|
|
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
|
|
}
|
|
|
|
do_install:append() {
|
|
install -d ${D}/etc/init.d
|
|
install -d ${D}/etc/libvirt
|
|
install -d ${D}/etc/dnsmasq.d
|
|
install -d ${D}${nonarch_libdir}/sysusers.d/
|
|
|
|
install -m 0755 ${UNPACKDIR}/libvirtd.sh ${D}/etc/init.d/libvirtd
|
|
install -m 0644 ${UNPACKDIR}/libvirtd.conf ${D}/etc/libvirt/libvirtd.conf
|
|
install -m 0644 ${UNPACKDIR}/libvirt-qemu.conf ${D}${nonarch_libdir}/sysusers.d/libvirt-qemu.conf
|
|
|
|
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
|
|
# This will wind up in the libvirtd package, but will NOT be invoked by default.
|
|
#
|
|
mv ${D}/${libexecdir}/libvirt-guests.sh ${D}/${sysconfdir}/init.d
|
|
fi
|
|
|
|
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
|
|
if [ "${systemd_system_unitdir}" != "${prefix}/lib/systemd/system" ] ; then
|
|
# ./src/meson.build: systemd_unit_dir = prefix / 'lib' / 'systemd' / 'system'
|
|
# ./tools/meson.build: install_dir: prefix / 'lib' / 'systemd' / 'system',
|
|
mkdir -p ${D}${systemd_system_unitdir}
|
|
mv ${D}${prefix}/lib/systemd/system/* ${D}${systemd_system_unitdir}
|
|
rmdir ${D}${prefix}/lib/systemd/system ${D}${prefix}/lib/systemd
|
|
fi
|
|
|
|
# We can't use 'notify' when we don't support 'sd_notify' dbus capabilities.
|
|
# Change default LIBVIRTD_ARGS to start libvirtd in the right mode.
|
|
sed -i -e 's/Type=notify/Type=forking/' \
|
|
-e '/Type=forking/a PIDFile=/run/libvirtd.pid' \
|
|
-e 's/\(Environment=LIBVIRTD_ARGS="--timeout 120"\)/#\1\nEnvironment=LIBVIRTD_ARGS="--listen --daemon"/' \
|
|
${D}/${systemd_system_unitdir}/libvirtd.service
|
|
fi
|
|
|
|
# The /run/libvirt directories created by the Makefile are
|
|
# wiped out in volatile, we need to create these at boot.
|
|
rm -rf ${D}/run
|
|
install -d ${D}${sysconfdir}/default/volatiles
|
|
echo "d root root 0755 /run/libvirt none" \
|
|
> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
echo "d root root 0755 /run/libvirt/lockd none" \
|
|
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
echo "d root root 0755 /run/libvirt/lxc none" \
|
|
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
echo "d root root 0755 /run/libvirt/network none" \
|
|
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
echo "d root root 0755 /run/libvirt/qemu none" \
|
|
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
|
|
# disable seccomp_sandbox
|
|
if [ -e ${D}${sysconfdir}/libvirt/qemu.conf ] ; then
|
|
sed -i '/^#seccomp_sandbox = 1/aseccomp_sandbox = 0' \
|
|
${D}${sysconfdir}/libvirt/qemu.conf
|
|
fi
|
|
|
|
# Add hook support for libvirt
|
|
mkdir -p ${D}/etc/libvirt/hooks
|
|
for hook in "daemon" "lxc" "network" "qemu"
|
|
do
|
|
install -m 0755 ${UNPACKDIR}/hook_support.py ${D}/etc/libvirt/hooks/${hook}
|
|
done
|
|
|
|
# Force the main dnsmasq instance to bind only to specified interfaces and
|
|
# to not bind to virbr0. Libvirt will run its own instance on this interface.
|
|
install -m 644 ${UNPACKDIR}/dnsmasq.conf ${D}/${sysconfdir}/dnsmasq.d/libvirt-daemon
|
|
|
|
# remove .la references to our working diretory
|
|
for i in `find ${D}${libdir} -type f -name *.la`; do
|
|
sed -i -e 's#-L${B}/src/.libs##g' $i
|
|
done
|
|
|
|
sed -i -e 's/^\(unix_sock_group\ =\ \).*/\1"kvm"/' ${D}/etc/libvirt/libvirtd.conf
|
|
sed -i -e 's/^\(unix_sock_rw_perms\ =\ \).*/\1"0776"/' ${D}/etc/libvirt/libvirtd.conf
|
|
|
|
case ${MACHINE_ARCH} in
|
|
*mips*)
|
|
break
|
|
;;
|
|
*)
|
|
if ${@bb.utils.contains('PACKAGECONFIG', 'qemu', 'true', 'false', d)}; then
|
|
chown -R qemu:qemu ${D}/${localstatedir}/lib/libvirt/qemu
|
|
echo "d qemu qemu 0755 ${localstatedir}/cache/libvirt/qemu none" \
|
|
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
|
|
break
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
if ${@bb.utils.contains('PACKAGECONFIG','gnutls','true','false',d)}; then
|
|
# Generate sample keys and certificates.
|
|
${UNPACKDIR}/${BP}/gnutls-helper.py -y
|
|
|
|
# Deploy all sample keys and certificates of CA, server and client
|
|
# to target so that libvirtd is able to boot successfully and local
|
|
# connection via 127.0.0.1 is available out of box.
|
|
install -d ${D}/etc/pki/CA
|
|
install -d ${D}/etc/pki/libvirt/private
|
|
install -m 0755 ${UNPACKDIR}/${BP}/gnutls-helper.py ${D}/${bindir}
|
|
install -m 0644 cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
|
|
install -m 0644 cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
|
|
install -m 0644 serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
|
|
install -m 0644 servercert.pem ${D}/${sysconfdir}/pki/libvirt/servercert.pem
|
|
install -m 0644 clientkey.pem ${D}/${sysconfdir}/pki/libvirt/private/clientkey.pem
|
|
install -m 0644 clientcert.pem ${D}/${sysconfdir}/pki/libvirt/clientcert.pem
|
|
|
|
# Force the connection to be tls.
|
|
sed -i -e 's/^\(listen_tls\ =\ .*\)/#\1/' -e 's/^\(listen_tcp\ =\ .*\)/#\1/' ${D}/etc/libvirt/libvirtd.conf
|
|
fi
|
|
|
|
# virt-login-shell needs to run with setuid permission
|
|
chmod 4755 ${D}${bindir}/virt-login-shell
|
|
}
|
|
|
|
EXTRA_OEMESON += " \
|
|
-Dinit_script=${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','none', d)} \
|
|
-Drunstatedir=/run \
|
|
-Dtests=enabled \
|
|
"
|
|
|
|
# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
|
|
# crashes on target, so remove -Og and use -O2 as workaround
|
|
SELECTED_OPTIMIZATION:remove:virtclass-multilib-lib32:mipsarch = "-Og"
|
|
SELECTED_OPTIMIZATION:append:virtclass-multilib-lib32:mipsarch = " -O2"
|
|
|
|
pkg_postinst:${PN}() {
|
|
if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ] ; then
|
|
/etc/init.d/populate-volatile.sh update
|
|
fi
|
|
mkdir -m 711 -p $D/data/images
|
|
}
|
|
|
|
python () {
|
|
if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
|
|
d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
|
|
}
|