转载

Libvirt 1.2.18 发布,Linux 虚拟化库

Libvirt 1.2.18 发布,此版本包括一些新特性,改进,bug 修复和代码清理。

更新内容如下:

  • 新特性

    libxl: 支持 dom0 (Jim Fehlig),

  • 文档:

    fix typo in qemu_monitor (Cao jin),

    docs: bhyve: document clock configuration (Roman Bogorodskiy),

    viraccessperm.h: Fix some typos (Michal Privoznik),

    docs: Document how libvirt handles companion controllers (Martin Kletzander),

    daemonRunStateInit: Fix a typo on a comment (Michal Privoznik)

  • 便捷性

    netdev: fix build on FreeBSD (Roman Bogorodskiy),

    spec: Fix polkit dep on F23 (Cole Robinson),

    nodeinfo: fix build on FreeBSD (Roman Bogorodskiy),

    Escape left brace as new perl suggests (Martin Kletzander)

  • Bug 修复:

    qemu: Do not reset labels when migration fails (Jiri Denemark),

    qemu: Reject migration with memory-hotplug if destination doesn't support it (Peter Krempa),

    Load nbd module before running qemu-nbd (Cédric Bosdonnat),

    lxc: Don't accidentaly reset autostart flag in virLXCProcessCleanup (Peter Krempa),

    remote: fix typo in remoteDomainOpenGraphicsFD (Daniel P. Berrange),

    qemu: Check for iotune_max support properly (Martin Kletzander),

    Renamed deconfigured-cpus to allow make dist (Daniel Veillard),

    storage: allow zero capacity with non-backing file to be created (Chris J Arges),

    nodeinfo: Check for SYSFS_INFINIBAND_DIR before open (John Ferlan),

    qemu: fix the error cover issue in SetMemoryParameters (Luyao Huang),

    nodeinfo: Fix nodeGetCPUBitmap()'s fallback code path (Andrea Bolognani),

    tests: Restore links in deconfigured-cpus nodeinfo test (Andrea Bolognani),

    cgroup: Drop resource partition from virSystemdMakeScopeName (Peter Krempa),

    qemu: Reject updating unsupported disk information (Martin Kletzander),

    storage: Fix pool building when directory already exists (Christophe Fergeau),

    rpc: ensure daemon is spawn even if dead socket exists (Daniel P. Berrange),

    rbd: Return error from rbd_create for message processing (John Ferlan),

    qemuMigrationRun: Don't leak @fd (Michal Privoznik),

    Fix qemu-nbd cleanup crashes (Cédric Bosdonnat),

    network: Add another collision check into networkCheckRouteCollision (Martin Kletzander),

    nodeinfo: fix to parse present cpus rather than possible cpus (Kothapally Madhu Pavan),

    libxl: set dom0 state to running (Jim Fehlig),

    rpc: Rework timerActive logic in daemon (Martin Kletzander),

    qemu: Check duplicate WWNs also for hotplugged disks (Peter Krempa),

    Fix cloning of raw, sparse volumes (Prerna Saxena),

    qemu: don't use initialized ret in qemuRemoveSharedDevice (Guido Günther),

    qemu: report error for non-existing disk in blockjobinfo (Luyao Huang),

    conf: Don't allow duplicated target names regardless of bus (John Ferlan),

    storage: Revert volume obj list updating after volume creation (4749d82a) (Erik Skultety),

    qemu: Fix integer/boolean logic in qemuSetUnprivSGIO (John Ferlan),

    qemu: report error when shmem has an invalid address (Luyao Huang),

    qemu: Auto assign pci addresses for shared memory devices (Luyao Huang),

    vz: use PRL_USE_VNET_NAME_FOR_BRIDGE_NAME (Maxim Nestratov),

    Explicitly format the isa-fdc controller for newer q35 machines (Ján Tomko),

    virt-aa-helper: add unix channels for nserials as well (Serge Hallyn),

    storage: Fix regression in storagePoolUpdateAllState (Erik Skultety),

    better patch for the XSS search issue (Daniel Veillard),

    Avoid XSS vulnerability on the search engine (Daniel Veillard),

    vz: fix SDK event dispatching (Nikolay Shirokovskiy),

    util: Avoid Coverity FORWARD_NULL (John Ferlan),

    virsh: report error if vcpu number exceed the guest maxvcpu number (Luyao Huang),

    virt-aa-helper: Fix permissions for vhost-user socket files (Michal Dubiel)

  • 改进:

    qemu: Properly check for incoming migration job (Jiri Denemark),

    Fix syntax-check: missing "%s" (Cédric Bosdonnat),

    qemu: Adjust VM id allocation (Erik Skultety),

    admin: Tiny cleanups (Martin Kletzander),

    tests: Finish rename of the long nodeinfo test case (Martin Kletzander),

    conf: add virDomainControllerDefNew() (Laine Stump),

    qemu: reorganize loop in qemuDomainAssignPCIAddresses (Laine Stump),

    conf: pay attention to bus minSlot/maxSlot when autoassigning PCI addresses (Laine Stump),

    tests: add vol-qcow2-zerocapacity test to storagevolxml2argvtest (Chris J Arges),

    Revert "qemu: Use heads parameter for QXL driver" (Martin Kletzander),

    test: introduce a function in test driver to check get vcpupin info (Luyao Huang),

    conf: reorganize virNetworkDHCPDefParseXML (Laine Stump),

    nodeinfo: Check for errors when reading core_id (Andrea Bolognani),

    bhyve: add UTC clock support (Roman Bogorodskiy),

    configure: clarify rationale for checking pkcheck (Daniel P. Berrange),

    nodeinfo: Calculate present and online CPUs only once (Andrea Bolognani),

    nodeinfo: Use a bitmap to keep track of node CPUs (Andrea Bolognani),

    nodeinfo: Use nodeGetOnlineCPUBitmap() when parsing node (Andrea Bolognani),

    nodeinfo: Phase out cpu_set_t usage (Andrea Bolognani),

    nodeinfo: Rename nodeGetCPUBitmap() to nodeGetOnlineCPUBitmap() (Andrea Bolognani),

    nodeinfo: Remove out parameter from nodeGetCPUBitmap() (Andrea Bolognani),

    nodeinfo: Add old kernel compatibility to nodeGetPresentCPUBitmap() (Andrea Bolognani),

    nodeinfo: Rename linuxParseCPUmax() to linuxParseCPUCount() (Andrea Bolognani),

    nodeinfo: Introduce linuxGetCPUOnlinePath() (Andrea Bolognani),

    nodeinfo: Introduce linuxGetCPUGlobalPath() (Andrea Bolognani),

    nodeinfo: Add nodeGetPresentCPUBitmap() to libvirt_private.syms (Andrea Bolognani),

    virsh: Refactor block job waiting in cmdBlockCopy (Peter Krempa),

    virsh: Refactor block job waiting in cmdBlockCommit (Peter Krempa),

    virsh: Refactor block job waiting in cmdBlockPull (Peter Krempa),

    qemu: Update state of block job to READY only if it actually is ready (Peter Krempa),

    virsh: Refactor argument handling in cmdBlockPull (Peter Krempa),

    virsh: Refactor argument handling in cmdBlockCopy (Peter Krempa),

    virsh: Refactor argument checking in cmdBlockCommit (Peter Krempa),

    virsh: Kill blockJobImpl by moving the final impl into cmdBlockCommit (Peter Krempa),

    virsh: Split out block pull implementation from blockJobImpl (Peter Krempa),

    virsh: block job: separate abort from blockJobImpl (Peter Krempa),

    virsh: blockjob: Split out vshBlockJobSetSpeed from blockJobImpl (Peter Krempa),

    virsh: cmdBlockJob: Switch to declarative flag interlocking (Peter Krempa),

    virsh: blockjob: Extract block job info code into a separate function (Peter Krempa),

    nodedev: add RDMA and tx-udp_tnl-segmentation NIC capabilities (Moshe Levi),

    qemu: Use heads parameter for QXL driver (Frediano Ziglio),

    rbd: Use RBD format 2 by default when creating images. (Wido den Hollander),

    virsh: Don't output node frequency if unknown (Martin Kletzander),

    qemu: Test for virtio-9p-ccw support (Boris Fiuczynski),

    qemu: Make virtio-9p-ccw the default for s390-ccw-virtio machines (Boris Fiuczynski),

    qemu: Support for virtio-9p-ccw (Boris Fiuczynski),

    virsh: Teach cmdFreepages to work with lxc driver (Michal Privoznik),

    cmdVcpuPin: Remove dead code (Michal Privoznik),

    lxc: wait for nbd device to be up to get its PIDs (Cédric Bosdonnat),

    nodeinfo: Formatting changes (Andrea Bolognani),

    nodeinfo: Make sysfs_prefix usage more consistent (Andrea Bolognani),

    qemu: process: Improve update of maximum balloon state at startup (Peter Krempa),

    qemuDomainSetNumaParamsLive: Check for NUMA mode more wisely (Michal Privoznik),

    conf: Add getter for network routes (Martin Kletzander),

    tests: Add nodeinfo test for non-present CPUs (Andrea Bolognani),

    nodeinfo: Add sysfs_prefix to nodeGetMemoryStats (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeCapsInitNUMA (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeGetInfo (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeGetCPUMap (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeGetCPUBitmap (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeGetPresentCPUBitmap (John Ferlan),

    nodeinfo: Add sysfs_prefix to nodeGetCPUCount (John Ferlan),

    nodeinfo: Introduce local linuxGetCPUPresentPath (John Ferlan),

    virt-driver-vz: Require parallels-7.0.22 at least (Michal Privoznik),

    configure: Move Virtuozzo checks to a specific module (Michal Privoznik),

    qemuProcessHandleMigrationStatus: Update migration status more frequently (Michal Privoznik),

    vz: fix cleanup of nets of bridged type (Dmitry Guryanov),

    qemu: Use error from Finish instead of "unexpectedly failed" (Jiri Denemark),

    qemu: Don't report false error from MigrateFinish (Jiri Denemark),

    qemu: Remember incoming migration errors (Jiri Denemark),

    Introduce virErrorCopyNew (Jiri Denemark),

    Introduce virHashAtomic (Jiri Denemark),

    cpu: Add support for MPX and AVX512 Intel features (Jiri Denemark),

    virt-aa-helper: add DomainGuest to mockup caps (Cédric Bosdonnat),

    virt-aa-helper: rename ctl->hvm to ctl->os (Cédric Bosdonnat),

    Get more libvirt errors from virt-aa-helper (Cédric Bosdonnat),

    virt-aa-helper: fix rules for paths with trailing slash (Cédric Bosdonnat),

    rpc: Add virNetDaemonHasClients (Martin Kletzander),

    Rewrite allocation tracking when cloning volumes (Ján Tomko),

    qemu: Drop LFs at the end of error from QEMU log (Jiri Denemark),

    qemu: Log all arguments of qemuProcessStart (Jiri Denemark),

    qemu: Wait for migration events on domain condition (Jiri Denemark),

    qemu: Update migration state according to MIGRATION event (Jiri Denemark),

    qemuDomainGetJobStatsInternal: Support migration events (Jiri Denemark),

    qemu: Enable migration events on QMP monitor (Jiri Denemark),

    qemu_monitor: Wire up MIGRATION event (Jiri Denemark),

    qemu_hotplug: try harder to eject media (Pavel Hrdina),

    monitor: detect that eject fails because the tray is locked (Pavel Hrdina),

    virDomainObjSignal: drop this function (Pavel Hrdina),

    virCondWaitUntil: add another return value (Pavel Hrdina),

    qemu: Refactor qemuSetUnprivSGIO return values (John Ferlan),

    qemu: Inline qemuGetHostdevPath (John Ferlan),

    qemu: Refactor qemuCheckSharedDisk to create qemuCheckUnprivSGIO (John Ferlan),

    libxl: rework setting the state of virDomainObj (Jim Fehlig),

    libxl: support dom0 (Jim Fehlig),

    qemu: Introduce qemuGetHostdevPath (John Ferlan),

    qemu: Introduce qemuIsSharedHostdev (John Ferlan),

    docs: Clarify unprivileged sgio feature (John Ferlan),

    conf: use virDomainChrSourceDef to save server path (Luyao Huang),

    qemu: Refactor creation of shared memory device commandline (Luyao Huang),

    qemu: Assign IDs for shared memory devices (Luyao Huang),

    Separate isa-fdc options generation (Ján Tomko),

    Add support for portable-rpcgen from portablexdr library (Pavel Fedin),

    Remove explicit enum from protocol structures (Pavel Fedin),

    util: bitmap: Don't alloc overly large binary bitmaps (Peter Krempa),

    vz: Use virBitmapToDataBuf instead of virBitmapToData in vzDomainGetVcpus (Peter Krempa),

    vz: Remove dead code from vzDomainGetVcpus (Peter Krempa),

    qemu: move the guest status check before agent config and status check (Luyao Huang),

    qemu: remove deadcode in qemuDomain{HelperGetVcpus|GetIOThreadsLive} (Luyao Huang),

    vz: assign static IPs and default gateways for network adapter (Mikhail Feoktistov),

    vz: fix building capabilities (Dmitry Guryanov),

    qemu_driver: live/config checks cleanup (Pavel Hrdina),

    Post-release version bump to 1.2.18 (Michal Privoznik),

    cpu_map.xml: Expand Opteron_G4 CPU model (Jiri Denemark),

    cpu_map.xml: Expand Opteron_G2 CPU model (Jiri Denemark),

    cpu_map.xml: Expand Opteron_G1 CPU model (Jiri Denemark),

    cpu_map.xml: Expand Broadwell-noTSX CPU model (Jiri Denemark),

    cpu_map.xml: Expand Haswell-noTSX CPU model (Jiri Denemark),

    cpu_map.xml: Expand SandyBridge CPU model (Jiri Denemark),

    cpu_map.xml: Expand Westmere CPU model (Jiri Denemark),

    cpu_map.xml: Expand Nehalem CPU model (Jiri Denemark),

    cpu_map.xml: Expand Penryn CPU model (Jiri Denemark),

    cpu_map.xml: Expand Conroe CPU model (Jiri Denemark),

    cpu_map.xml: Expand kvm64 CPU model (Jiri Denemark),

    cpu_map.xml: Expand cpu64-rhel5 CPU model (Jiri Denemark),

    cpu_map.xml: Expand kvm32 CPU model (Jiri Denemark),

    cpu_map.xml: Expand qemu32 CPU model (Jiri Denemark),

    cpu_map.xml: Expand n270 CPU model (Jiri Denemark),

    cpu_map.xml: Expand coreduo CPU model (Jiri Denemark),

    cpu_map.xml: Expand pentiumpro CPU model (Jiri Denemark),

    cpu_map.xml: Expand pentium2 CPU model (Jiri Denemark),

    cpu_map.xml: Expand pentium CPU model (Jiri Denemark),

    cpu_map.xml: Expand 486 CPU model (Jiri Denemark),

    cpu_map.xml: Sort features in x86 CPU models (Jiri Denemark)

Libvirt 库是一种实现 Linux 虚拟化功能的 Linux® API,它支持各种虚拟机监控程序,包括 Xen 和 KVM,以及 QEMU  和用于其他操作系统的一些虚拟产品。

libvirt 提供一种虚拟机监控程序不可知的 API 来安全管理运行于主机上的来宾操作系统。libvirt 本身 不是一种工具,                 它是一种可以建立工具来管理来宾操作系统的 API。libvirt   本身构建于一种抽象的概念之上。它为受支持的虚拟机监控程序实现的常用功能提供通用的 API。libvirt 起初是专门为 Xen 设计的一种管理 API,后来被扩展为可支持多个虚拟机监控程序。

libvirt 比较和用例模型

Libvirt 1.2.18 发布,Linux 虚拟化库

正文到此结束
Loading...