From nobody Mon Feb 9 07:43:02 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1550845929851741.0356051053976; Fri, 22 Feb 2019 06:32:09 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 225973097062; Fri, 22 Feb 2019 14:32:08 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id F29655DA2C; Fri, 22 Feb 2019 14:32:07 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id B15AD181A048; Fri, 22 Feb 2019 14:32:07 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x1LFgajX008284 for ; Thu, 21 Feb 2019 10:42:36 -0500 Received: by smtp.corp.redhat.com (Postfix) id C64E11A837; Thu, 21 Feb 2019 15:42:36 +0000 (UTC) Received: from icr.brq.redhat.com (unknown [10.43.2.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4F38027BC9 for ; Thu, 21 Feb 2019 15:42:36 +0000 (UTC) From: =?UTF-8?q?J=C3=A1n=20Tomko?= To: libvir-list@redhat.com Date: Thu, 21 Feb 2019 16:42:24 +0100 Message-Id: <478ca639377ab85413a997620c57b896db049632.1550763719.git.jtomko@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/8] Introduce virQEMUCapsDeprecated array X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Fri, 22 Feb 2019 14:32:08 +0000 (UTC) To prevent domains started with older libvirtd from disappearing, we need to be able to parse the string representation of QEMU capabilities, even if we no longer use them in the code. Put those in a separate array where we won't bother with enum constants. Signed-off-by: J=C3=A1n Tomko --- src/qemu/qemu_capabilities.c | 95 ++++++++++++++++++++++++++++++++++++ src/qemu/qemu_capabilities.h | 1 + 2 files changed, 96 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index b48bcbebee..7160860ab4 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -524,6 +524,101 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST, "scsi-disk.device_id", ); =20 +#define VIR_QEMU_CAPS_DEPRECATED_LAST 92 /* chosen by fair dice roll */ +VIR_ENUM_IMPL(virQEMUCapsDeprecated, VIR_QEMU_CAPS_DEPRECATED_LAST, + "kqemu", /* X_QEMU_CAPS_KQEMU, Whether KQEMU is compiled in */ + "vnc-colon", /* X_QEMU_CAPS_VNC_COLON, VNC takes or address + display = */ + "no-reboot", /* X_QEMU_CAPS_NO_REBOOT, Is the -no-reboot flag availabl= e */ + "drive", /* X_QEMU_CAPS_DRIVE, Is the new -drive arg available */ + "drive-boot", /* X_QEMU_CAPS_DRIVE_BOOT, Does -drive support boot=3Don= */ + "name", /* X_QEMU_CAPS_NAME, Is the -name flag available */ + "uuid", /* X_QEMU_CAPS_UUID, Is the -uuid flag available */ + "domid", /* X_QEMU_CAPS_DOMID, Xenner: -domid flag available */ + "vnet-hdr", /* X_QEMU_CAPS_VNET_HDR */ + "migrate-kvm-stdio", /* X_QEMU_CAPS_MIGRATE_KVM_STDIO, avoid kvm tcp m= igration bug */ + "migrate-qemu-tcp", /* X_QEMU_CAPS_MIGRATE_QEMU_TCP, have qemu tcp mig= ration */ + "migrate-qemu-exec", /* X_QEMU_CAPS_MIGRATE_QEMU_EXEC, have qemu exec = migration */ + "drive-cache-v2", /* X_QEMU_CAPS_DRIVE_CACHE_V2, cache=3D flag wanting= new v2 values */ + "drive-format", /* X_QEMU_CAPS_DRIVE_FORMAT, Is -drive format=3D avail= */ + "vga", /* X_QEMU_CAPS_VGA, Is -vga avail */ + "0.10", /* X_QEMU_CAPS_0_10, features added in qemu-0.10.0 or later */ + "pci-device", /* X_QEMU_CAPS_PCIDEVICE, PCI device assignment supporte= d */ + "mem-path", /* X_QEMU_CAPS_MEM_PATH, mmap'ped guest backing supported = */ + "drive-serial", /* X_QEMU_CAPS_DRIVE_SERIAL, -driver serial=3D availa= ble */ + "xen-domid", /* X_QEMU_CAPS_XEN_DOMID, -xen-domid */ + "migrate-qemu-unix", /* X_QEMU_CAPS_MIGRATE_QEMU_UNIX, qemu migration = via unix sockets */ + "chardev", /* X_QEMU_CAPS_CHARDEV, Is the new -chardev arg available */ + "enable-kvm", /* X_QEMU_CAPS_ENABLE_KVM, -enable-kvm flag */ + "monitor-json", /* X_QEMU_CAPS_MONITOR_JSON, JSON mode for monitor */ + "balloon", /* X_QEMU_CAPS_BALLOON, -balloon available */ + "device", /* X_QEMU_CAPS_DEVICE, Is the -device arg available */ + "sdl", /* X_QEMU_CAPS_SDL, Is the new -sdl arg available */ + "smp-topology", /* X_QEMU_CAPS_SMP_TOPOLOGY, -smp has sockets/cores/th= reads */ + "netdev", /* X_QEMU_CAPS_NETDEV, -netdev flag & netdev_add/remove */ + "rtc", /* X_QEMU_CAPS_RTC, The -rtc flag for clock options */ + "vhost-net", /* X_QEMU_CAPS_VHOST_NET, vhost-net support available */ + "rtc-td-hack", /* X_QEMU_CAPS_RTC_TD_HACK, -rtc-td-hack available */ + "no-kvm-pit", /* X_QEMU_CAPS_NO_KVM_PIT, -no-kvm-pit-reinjection suppo= rted */ + "tdf", /* X_QEMU_CAPS_TDF, -tdf flag (user-mode pit catchup) */ + "pci-configfd", /* X_QEMU_CAPS_PCI_CONFIGFD, pci-assign.configfd */ + "nodefconfig", /* X_QEMU_CAPS_NODEFCONFIG, -nodefconfig */ + "boot-menu", /* X_QEMU_CAPS_BOOT_MENU, -boot menu=3Don support */ + "enable-kqemu", /* X_QEMU_CAPS_ENABLE_KQEMU, -enable-kqemu flag */ + "fsdev", /* X_QEMU_CAPS_FSDEV, -fstype filesystem passthrough */ + "nesting", /* X_QEMU_CAPS_NESTING, -enable-nesting (SVM/VMX) */ + "name-process", /* X_QEMU_CAPS_NAME_PROCESS, Is -name process=3D avail= able */ + "drive-readonly", /* X_QEMU_CAPS_DRIVE_READONLY, -drive readonly=3Don|= off */ + "smbios-type", /* X_QEMU_CAPS_SMBIOS_TYPE, Is -smbios type=3D availabl= e */ + "vga-qxl", /* X_QEMU_CAPS_VGA_QXL, The 'qxl' arg for '-vga' */ + "vga-none", /* X_QEMU_CAPS_VGA_NONE, The 'none' arg for '-vga' */ + "migrate-qemu-fd", /* X_QEMU_CAPS_MIGRATE_QEMU_FD, -incoming fd:n */ + "boot-index", /* X_QEMU_CAPS_BOOTINDEX, -device bootindex property */ + "drive-aio", /* X_QEMU_CAPS_DRIVE_AIO, -drive aio=3D supported */ + "pci-multibus", /* X_QEMU_CAPS_PCI_MULTIBUS, bus=3Dpci.0 vs bus=3Dpci = */ + "pci-bootindex", /* X_QEMU_CAPS_PCI_BOOTINDEX, pci-assign.bootindex */ + "chardev-spicevmc", /* X_QEMU_CAPS_CHARDEV_SPICEVMC, newer -chardev sp= icevmc */ + "device-spicevmc", /* X_QEMU_CAPS_DEVICE_SPICEVMC, older -device spice= vmc*/ + "device-qxl-vga", /* X_QEMU_CAPS_DEVICE_QXL_VGA, primary qxl device na= med qxl-vga? */ + "pci-multifunction", /* X_QEMU_CAPS_PCI_MULTIFUNCTION, -device multifu= nction=3Don|off */ + "cache-directsync", /* X_QEMU_CAPS_DRIVE_CACHE_DIRECTSYNC, Is cache=3D= directsync supported? */ + "no-shutdown", /* X_QEMU_CAPS_NO_SHUTDOWN, usable -no-shutdown */ + "cache-unsafe", /* X_QEMU_CAPS_DRIVE_CACHE_UNSAFE, Is cache=3Dunsafe s= upported? */ + "rombar", /* X_QEMU_CAPS_PCI_ROMBAR, -device rombar=3D0|1 */ + "fsdev-readonly", /* X_QEMU_CAPS_FSDEV_READONLY, -fsdev readonly suppo= rted */ + "blk-sg-io", /* X_QEMU_CAPS_VIRTIO_BLK_SG_IO, SG_IO commands */ + "drive-copy-on-read", /* X_QEMU_CAPS_DRIVE_COPY_ON_READ, -drive copy-o= n-read */ + "cpu-host", /* X_QEMU_CAPS_CPU_HOST, support for -cpu host */ + "fsdev-writeout", /* X_QEMU_CAPS_FSDEV_WRITEOUT, -fsdev writeout suppo= rted */ + "drive-iotune", /* X_QEMU_CAPS_DRIVE_IOTUNE, -drive bps=3D and friends= */ + "system_wakeup", /* X_QEMU_CAPS_WAKEUP, system_wakeup monitor command = */ + "block-job-sync", /* X_QEMU_CAPS_BLOCKJOB_SYNC, old block_job_cancel, = block_stream */ + "scsi-cd", /* X_QEMU_CAPS_SCSI_CD, -device scsi-cd */ + "ide-cd", /* X_QEMU_CAPS_IDE_CD, -device ide-cd */ + "no-user-config", /* X_QEMU_CAPS_NO_USER_CONFIG, -no-user-config */ + "balloon-event", /* X_QEMU_CAPS_BALLOON_EVENT, Async event for balloon= changes */ + "bridge", /* X_QEMU_CAPS_NETDEV_BRIDGE, bridge helper support */ + "dump-guest-core", /* X_QEMU_CAPS_DUMP_GUEST_CORE, dump-guest-core-par= ameter */ + "seamless-migration", /* X_QEMU_CAPS_SEAMLESS_MIGRATION, seamless-migr= ation for SPICE */ + "usb-redir.bootindex", /* X_QEMU_CAPS_USB_REDIR_BOOTINDEX, usb-redir.b= ootindex */ + "usb-host.bootindex", /* X_QEMU_CAPS_USB_HOST_BOOTINDEX, usb-host.boot= index */ + "usb-net", /* X_QEMU_CAPS_DEVICE_USB_NET, -device usb-net */ + "add-fd", /* X_QEMU_CAPS_ADD_FD, -add-fd */ + "dtb", /* X_QEMU_CAPS_DTB, -dtb file */ + "ipv6-migration", /* X_QEMU_CAPS_IPV6_MIGRATION, -incoming [::] */ + "machine-opt", /* X_QEMU_CAPS_MACHINE_OPT, -machine xxxx*/ + "machine-usb-opt", /* X_QEMU_CAPS_MACHINE_USB_OPT, -machine xxx,usb=3D= on/off */ + "vfio-pci.bootindex", /* X_QEMU_CAPS_VFIO_PCI_BOOTINDEX, bootindex par= am for vfio-pci device */ + "scsi-generic", /* X_QEMU_CAPS_DEVICE_SCSI_GENERIC, -device scsi-gener= ic */ + "scsi-generic.bootindex", /* X_QEMU_CAPS_DEVICE_SCSI_GENERIC_BOOTINDEX= , -device scsi-generic.bootindex */ + "vnc-websocket", /* X_QEMU_CAPS_VNC_WEBSOCKET, -vnc x:y,websocket */ + "vnc-share-policy", /* X_QEMU_CAPS_VNC_SHARE_POLICY, set display shari= ng policy */ + "device-del-event", /* X_QEMU_CAPS_DEVICE_DEL_EVENT, DEVICE_DELETED ev= ent */ + "spiceport", /* X_QEMU_CAPS_CHARDEV_SPICEPORT, -chardev spiceport */ + "host-pci-multidomain", /* X_QEMU_CAPS_HOST_PCI_MULTIDOMAIN, support d= omain > 0 in host pci address */ + "device-tray-moved-event", /* X_QEMU_CAPS_DEVICE_TRAY_MOVED, DEVICE_TR= AY_MOVED event */ + "qxl-vga.max_outputs", /* X_QEMU_CAPS_QXL_VGA_MAX_OUTPUTS, -device qxl= -vga,max-outputs=3D */ + "display", /* X_QEMU_CAPS_DISPLAY, -display */ + ); =20 struct virQEMUCapsMachineType { char *name; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index ba84052bca..6fa402a846 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -612,6 +612,7 @@ int virQEMUCapsGetDefaultVersion(virCapsPtr caps, unsigned int *version); =20 VIR_ENUM_DECL(virQEMUCaps); +VIR_ENUM_DECL(virQEMUCapsDeprecated); =20 bool virQEMUCapsSupportsGICVersion(virQEMUCapsPtr qemuCaps, virDomainVirtType virtType, --=20 2.19.2 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list