From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960491; cv=none; d=zoho.com; s=zohoarc; b=lmbdOy3IdGRxvbdNaMTJiSzeYoD5MqJj7nF0zeO7Y3uw4Rcn3LRF2MHt8/Yizswp204vrxDd8zCN2EIjk0YQ1e6PTl+2UeDjjPawMvkXvN/6+P+RCDe9hQksgDHwm/ujXnFQu73nt0tE1eYK74pGhiJllloOepufOQsnCx6Y3Jk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960491; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=WvTXsVNoqhWNDKswaQGZBYPekUXjAqrYaaSYZhBefAU=; b=BFkQJtmuTzaDYdiWQx13lJWqeDpjOqQ8DTZLcDk0QOpFPbS055/50BqIP+x460MtMVBDfr0SB41plokeAIQ7CuIojzLwo77RIXASHLATRGgumkdH8lVEtqK+DsH/yLajf60P+bACrEe1cJLgpEelnImSyc8+rUNCSzFO4oejxYA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960491964182.5379636760323; Tue, 5 Nov 2019 05:28:11 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-105-flbxwFxgPwKn0ZylBoocQw-1; Tue, 05 Nov 2019 08:28:07 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id BC584107ACC3; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3B3E1600C6; Tue, 5 Nov 2019 13:28:02 +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 453C94BB65; Tue, 5 Nov 2019 13:27:58 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRusP003851 for ; Tue, 5 Nov 2019 08:27:56 -0500 Received: by smtp.corp.redhat.com (Postfix) id 529965D727; Tue, 5 Nov 2019 13:27:56 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 283905D726 for ; Tue, 5 Nov 2019 13:27:53 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 656F51004ED; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960491; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=WvTXsVNoqhWNDKswaQGZBYPekUXjAqrYaaSYZhBefAU=; b=BU6eBakeO9fPtVfWGhC+7nYC4tq7UmcBK39gatTfWshRjKR+J9dSnDyYAuZAw8A6kp26sP ONhicsmkcJIB1aRzWdD5E7B9X22WPpseU5vJ9hM8HsRHGo5nRuIxudNBSSHDLQ6Mmn3DS3 QxcBrm+/rE6ChGYn8j+20Aji3ta4MO0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:26:59 +0100 Message-Id: <06356bf77c340f4fc2bc961649ac9033a4ed7b38.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 01/52] tests: Add capabilities for QEMU 4.2.0 on s390x 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: flbxwFxgPwKn0ZylBoocQw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - regenerated with the following QEMU patch applied "s390x/kvm: Set default cpu model for all machine classes" - includes domaincapsdata (previously in patch 2/31) tests/domaincapsdata/qemu_4.2.0.s390x.xml | 202 + .../caps_4.2.0.s390x.replies | 22416 ++++++++++++++++ .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 3345 +++ 3 files changed, 25963 insertions(+) create mode 100644 tests/domaincapsdata/qemu_4.2.0.s390x.xml create mode 100644 tests/qemucapabilitiesdata/caps_4.2.0.s390x.replies create mode 100644 tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml diff --git a/tests/domaincapsdata/qemu_4.2.0.s390x.xml b/tests/domaincapsda= ta/qemu_4.2.0.s390x.xml new file mode 100644 index 0000000000..fd71df46a7 --- /dev/null +++ b/tests/domaincapsdata/qemu_4.2.0.s390x.xml @@ -0,0 +1,202 @@ + + /usr/bin/qemu-system-s390x + kvm + s390-ccw-virtio-4.2 + s390x + + + ... + diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.s390x.replies b/tests/qe= mucapabilitiesdata/caps_4.2.0.s390x.replies new file mode 100644 index 0000000000..ae0d733df3 --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_4.2.0.s390x.replies @@ -0,0 +1,22416 @@ +{ + "execute": "qmp_capabilities", + "id": "libvirt-1" +} + +{ + "return": { + }, + "id": "libvirt-1" +} ... diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml b/tests/qemuca= pabilitiesdata/caps_4.2.0.s390x.xml new file mode 100644 index 0000000000..ebc5b48999 --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml @@ -0,0 +1,3345 @@ + + 0 + 0 + 0 + ... + --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960490; cv=none; d=zoho.com; s=zohoarc; b=h4LHbG3BHWIMGcph4lLBokh33DBy3IiyzDd6QAKWY7Tnp+3m2YJBeCPm2JDnYMqjbaXxh1ckFhtaAC+aIh4gbAtOP3oeg9C5GEfSF9518D2BxcNETM/QfyHig6lzI/XSk+Zrzyc1m/VoL0+EOeas1u8Kn8hiXOegiX/QvYG709A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960490; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=W7UpQf/BfTD1I+2ohXkDMq8HyJPpksCNRhr9rzyZ3AQ=; b=B0mVe2sbqcHZYfEShR9oUnpNfztd66pZCPTw2mk1YjyDDwV9s+u19MMG8z2OyHsjaOGQqcf7tqba91cqkcK+0ezYjHdKZE/qPkY4X+Pd0gAnd7gTHxVlYQBYk5s3U9XhnGrKJGQ9L+ckVixn5HcNGTU/TauXALnQ9buOI7CGGtw= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960490684142.6095551694184; Tue, 5 Nov 2019 05:28:10 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-151-6e_EPfZKOPCRMr2sI72w7g-1; Tue, 05 Nov 2019 08:28:07 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7790E477; Tue, 5 Nov 2019 13:28:02 +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 3AE565D9E5; Tue, 5 Nov 2019 13:28:02 +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 4549718005A9; Tue, 5 Nov 2019 13:27:58 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRuoY003871 for ; Tue, 5 Nov 2019 08:27:56 -0500 Received: by smtp.corp.redhat.com (Postfix) id AD0D1608B5; Tue, 5 Nov 2019 13:27:56 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5E7E5608B4 for ; Tue, 5 Nov 2019 13:27:53 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 689CC105B1F; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960489; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=W7UpQf/BfTD1I+2ohXkDMq8HyJPpksCNRhr9rzyZ3AQ=; b=YQ+z1cLXiUcrozcoIfWWlFBZ+FetW7jDv7r8LlYBz6zFSZ2oaHE3kw/FLUK7tQl4D4oTGP L2wE2hVHIAvDvOAua8qMGayHMW28zqfe53R1H/swZXPhO4Yhj+zW+AVuMD142+do9ATk1f rRz+TASF12xCRkI8cAUBK79oSe9oGj4= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:00 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 02/52] tests: Update 4.2.0 capabilities data on ppc64 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: , 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-MC-Unique: 6e_EPfZKOPCRMr2sI72w7g-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Generated with "spapr/kvm: Set default cpu model for all machine classes" fix for QEMU applied. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch .../caps_4.2.0.ppc64.replies | 38 +++++++++---------- .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.replies b/tests/qe= mucapabilitiesdata/caps_4.2.0.ppc64.replies index e6266f5fe1..0423043f96 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.replies @@ -21,7 +21,7 @@ "minor": 1, "major": 4 }, - "package": "v4.1.0-1378-g98b2e3c9ab" + "package": "v4.1.0-2198-g9e583f2" }, "id": "libvirt-2" } @@ -6097,7 +6097,7 @@ "hotpluggable-cpus": true, "name": "pseries-3.1", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6105,7 +6105,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.12-sxxm", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6129,7 +6129,7 @@ "hotpluggable-cpus": true, "name": "pseries-3.0", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6137,7 +6137,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.10", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6153,7 +6153,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.11", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6161,7 +6161,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.12", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6169,7 +6169,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.9", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6185,7 +6185,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.6", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6193,7 +6193,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.7", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6201,7 +6201,7 @@ "hotpluggable-cpus": true, "name": "pseries-2.8", "numa-mem-supported": true, - "default-cpu-type": "power8_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6209,7 +6209,7 @@ "hotpluggable-cpus": true, "name": "pseries-4.2", "numa-mem-supported": true, - "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "is-default": true, "cpu-max": 1024, "deprecated": false, @@ -6219,7 +6219,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.4", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6227,7 +6227,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.5", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6235,7 +6235,7 @@ "hotpluggable-cpus": true, "name": "pseries-4.0", "numa-mem-supported": true, - "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6243,7 +6243,7 @@ "hotpluggable-cpus": true, "name": "pseries-4.1", "numa-mem-supported": true, - "default-cpu-type": "power9_v2.0-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6251,7 +6251,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.2", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6266,7 +6266,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.3", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, @@ -6274,7 +6274,7 @@ "hotpluggable-cpus": false, "name": "pseries-2.1", "numa-mem-supported": true, - "default-cpu-type": "power7_v2.3-powerpc64-cpu", + "default-cpu-type": "host-powerpc64-cpu", "cpu-max": 1024, "deprecated": false }, diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_4.2.0.ppc64.xml index 561d955247..101c095446 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml @@ -176,7 +176,7 @@ 4001050 0 42900242 - v4.1.0-1378-g98b2e3c9ab + v4.1.0-2198-g9e583f2 ppc64 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960514; cv=none; d=zoho.com; s=zohoarc; b=eQW3zEXrMlxmorNmfbSePRuwPUrUeiVxS7FA6rrVvp1x3zySmDips93bqsmwn4PvHD8TaQ3U7PJwFQwE/wguRqewh+FFCx9HCwQ45qE9b7qd2ke4jb0hrApG7DEakqEZRy9evNd8rLQvd+X2FhYvWeAETxrWBxQYjEXhfADLjNQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960514; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=sZUu9WWqLd75QVocpSJpZ0QaH5tOMLYHAqsI7OJnSzA=; b=Wnr3NJIJMBDyZoPVnjZoyBphit7yQqG4gxIASRbs993xe/pIjasuu2JFxkLOR4j2Hg0cPwPo95d5Ro5UN+hbpxB35vw9cpe4cT1efsammK9ABFW8BZpp9oz3FEwMgrdBpV8bpAY3rrwrTVtMZ/ysMU1LwLwNie+07ry19bghCjY= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960514657616.4576841520421; Tue, 5 Nov 2019 05:28:34 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-273-6eQkrtn6MRiFOnJhv3r0_w-1; Tue, 05 Nov 2019 08:28:30 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A89B081A334; Tue, 5 Nov 2019 13:28:23 +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 7DA9A608B6; Tue, 5 Nov 2019 13:28:23 +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 2C21E1803C42; Tue, 5 Nov 2019 13:28:23 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRuTe003853 for ; Tue, 5 Nov 2019 08:27:56 -0500 Received: by smtp.corp.redhat.com (Postfix) id 59346600D3; Tue, 5 Nov 2019 13:27:56 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2E681600C8 for ; Tue, 5 Nov 2019 13:27:53 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 6B75F105B20; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960513; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=sZUu9WWqLd75QVocpSJpZ0QaH5tOMLYHAqsI7OJnSzA=; b=fejT1EMYwqZRpN+M28KdO+tyD8qg2dddU3bEtOp57W25YkbsjnLsX0N0Rk/ZOspnPrkxWb yVU8lCut0n3rI5baMZNSP10Tpb7MAXSd8hZSe+n/2p2h18r4LocAt7VWb0yEd48R+i1RiQ lLboeeBBFkCkEKVmmuV06I8QJmbiaW8= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:01 +0100 Message-Id: <737fcb6451e7e5f40959f702976709085b554afc.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 03/52] conf: Use VIR_AUTO* in virDomainCapsCPUModelsAdd 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: 6eQkrtn6MRiFOnJhv3r0_w-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_autofree src/conf/domain_capabilities.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index 09bf047647..e92df9e9da 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -242,25 +242,20 @@ virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr c= puModels, virDomainCapsCPUUsable usable, char **blockers) { - char *nameCopy =3D NULL; - char **blockersCopy =3D NULL; + g_autofree char * nameCopy =3D NULL; + VIR_AUTOSTRINGLIST blockersCopy =3D NULL; =20 if (VIR_STRNDUP(nameCopy, name, nameLen) < 0) - goto error; + return -1; =20 if (virStringListCopy(&blockersCopy, (const char **)blockers) < 0) - goto error; + return -1; =20 if (virDomainCapsCPUModelsAddSteal(cpuModels, &nameCopy, usable, &blockersCopy) < 0) - goto error; + return -1; =20 return 0; - - error: - VIR_FREE(nameCopy); - virStringListFree(blockersCopy); - return -1; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960507; cv=none; d=zoho.com; s=zohoarc; b=U47uv3MOlXdsNfjG+1OkT+dRa7ediaI0hq7OF9SiM1QIarlNCm87OQ3CWnxHUL0QQPFFUngK0ha/cuXVmUtvs3GeCMPeamvZ8rZvP/2YT8F9lhfoavK1aPkjJm7PBhm2JYiPqA9DpS8WZYSp4DwC4rID0k/x05sYJ0nRhbSCNCA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960507; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=vwtctX1DQCII2m6gQMZJX4TAowv2MJd+DyMHsSM3Pbg=; b=nQJRNaEmYWSoyScv5hjWlcCDW/FQUK4Bw9z9Qd5NH2m1QtoA3i8QCpYKGDv//lErh+Okwws1V/tyRsd+xq4Jry2faLq7njs5Ihu01BzXgPoTbLT1NKjBYnDm3NPTWbgJJNdwqFypW+m9D9VcAErDN4VD0fZcFBaOK05ymeUwVj4= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960507410426.76645766470756; Tue, 5 Nov 2019 05:28:27 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-55-ZF9WW1ZwOASs-Nlv9SlrBA-1; Tue, 05 Nov 2019 08:28:24 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 77FBF8017DD; Tue, 5 Nov 2019 13:28:19 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 48D791001902; Tue, 5 Nov 2019 13:28:19 +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 F21114BB5B; Tue, 5 Nov 2019 13:28:18 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRueK003852 for ; Tue, 5 Nov 2019 08:27:56 -0500 Received: by smtp.corp.redhat.com (Postfix) id 58D02600CC; Tue, 5 Nov 2019 13:27:56 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2E61A600C4 for ; Tue, 5 Nov 2019 13:27:53 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 6E51A105B21; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960506; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=vwtctX1DQCII2m6gQMZJX4TAowv2MJd+DyMHsSM3Pbg=; b=fBeAGGcSMKWjde93IH/L8n4/vSg+QAwwjiH+pcuPaMHev0K32N1wSUW60BlHWguaRacU5y MKmq7UFEZOVOBrU4HLmCPa9iBAqLZQsRreVCAlwPvR0w589eOXBxRX/IK04igPiHGuFVSz NMb4ERMb+DKpFqTSgMziHeI8l538l04= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:02 +0100 Message-Id: <8b724dd1692ac85c2795b1c70452570394cc13fe.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 04/52] conf: Drop nameLen parameter from virDomainCapsCPUModelsAdd 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-MC-Unique: ZF9WW1ZwOASs-Nlv9SlrBA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" All callers use nameLen =3D=3D -1 anyway. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - no change src/conf/domain_capabilities.c | 7 +++---- src/conf/domain_capabilities.h | 1 - src/qemu/qemu_capabilities.c | 2 +- tests/cputest.c | 4 ++-- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index e92df9e9da..0a89ccd071 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -167,7 +167,7 @@ virDomainCapsCPUModelsCopy(virDomainCapsCPUModelsPtr ol= d) =20 for (i =3D 0; i < old->nmodels; i++) { if (virDomainCapsCPUModelsAdd(cpuModels, - old->models[i].name, -1, + old->models[i].name, old->models[i].usable, old->models[i].blockers) < 0) goto error; @@ -200,7 +200,7 @@ virDomainCapsCPUModelsFilter(virDomainCapsCPUModelsPtr = old, continue; =20 if (virDomainCapsCPUModelsAdd(cpuModels, - old->models[i].name, -1, + old->models[i].name, old->models[i].usable, old->models[i].blockers) < 0) goto error; @@ -238,14 +238,13 @@ virDomainCapsCPUModelsAddSteal(virDomainCapsCPUModels= Ptr cpuModels, int virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr cpuModels, const char *name, - ssize_t nameLen, virDomainCapsCPUUsable usable, char **blockers) { g_autofree char * nameCopy =3D NULL; VIR_AUTOSTRINGLIST blockersCopy =3D NULL; =20 - if (VIR_STRNDUP(nameCopy, name, nameLen) < 0) + if (VIR_STRDUP(nameCopy, name) < 0) return -1; =20 if (virStringListCopy(&blockersCopy, (const char **)blockers) < 0) diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h index a31458c653..264c7fc429 100644 --- a/src/conf/domain_capabilities.h +++ b/src/conf/domain_capabilities.h @@ -203,7 +203,6 @@ int virDomainCapsCPUModelsAddSteal(virDomainCapsCPUMode= lsPtr cpuModels, char ***blockers); int virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr cpuModels, const char *name, - ssize_t nameLen, virDomainCapsCPUUsable usable, char **blockers); virDomainCapsCPUModelPtr diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9bb3c96448..8fd503a49c 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1873,7 +1873,7 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, } =20 for (i =3D 0; i < count; i++) { - if (virDomainCapsCPUModelsAdd(cpus, name[i], -1, usable, NULL) < 0) + if (virDomainCapsCPUModelsAdd(cpus, name[i], usable, NULL) < 0) return -1; } =20 diff --git a/tests/cputest.c b/tests/cputest.c index a277224918..6ead9e0982 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -861,7 +861,7 @@ cpuTestUpdateLive(const void *arg) usable =3D hvModel->usable; } =20 - if (virDomainCapsCPUModelsAdd(models, expected->model, -1, + if (virDomainCapsCPUModelsAdd(models, expected->model, usable, blockers) < 0) goto cleanup; =20 @@ -971,7 +971,7 @@ cpuTestInitModels(const char **list) return NULL; =20 for (model =3D list; *model; model++) { - if (virDomainCapsCPUModelsAdd(cpus, *model, -1, + if (virDomainCapsCPUModelsAdd(cpus, *model, VIR_DOMCAPS_CPU_USABLE_UNKNOWN, NULL= ) < 0) goto error; } --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960517; cv=none; d=zoho.com; s=zohoarc; b=mk+nrEO2XKZWVJoFj1mFxLqJqescdpyN5Dc1zgjshJaBiHer5POg9NkI+FJ4BhIuWvBZ9hlJEwWVEDtN0jLJndLND1Xaw4PaDLN4ddoiQGQoq9cgQlb/+NnwRlcKZjs41q2Ath34EhVt5XPCCbcaJeFD9F0pQs1mseflnuCt37k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960517; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=tIbjBXH8mohyjCfBMhUccd/sJr0vN/MKSM7qDSNrhyw=; b=T0GC2OO2dZwuaqIRSpZtLu4mpa16NPBimZqT2gccpqOV22zkVyZ6kR1VKzBuD+s4kEJxTBvVEvT5JR988JBGlZ4NLAo8L/95wkvXCHQhu3DdWHWhR9NQQrQSAtwEJoF4EohoDxvpQ+aXRXueoc+KLphqHaQ1eDXjtX8TyVvulb4= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960517642501.26094177921493; Tue, 5 Nov 2019 05:28:37 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-396-gcrHWdsEMFyM00CI34eTIg-1; Tue, 05 Nov 2019 08:28:34 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 793121804979; Tue, 5 Nov 2019 13:28:28 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 49D6E1001B00; Tue, 5 Nov 2019 13:28:28 +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 DA24F4E56F; Tue, 5 Nov 2019 13:28:27 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRvwJ003885 for ; Tue, 5 Nov 2019 08:27:57 -0500 Received: by smtp.corp.redhat.com (Postfix) id E2E77600C8; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9188D600C4 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 7149C105B22; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960516; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=tIbjBXH8mohyjCfBMhUccd/sJr0vN/MKSM7qDSNrhyw=; b=QjO7E+o8C3Zw9k+pgAFO+m9wO8xB2zNIToMkqfZvOzozVPshLSGMsuhbGOxKn6SIk76c9/ 5T2jbNQTrLM1P0njR+tb9vTpEvmz3yrY+d4OJZB99g9oIL8DwFeP/YXcEMl7cKFiSjKnIc 6lKh1flm+ZBFsjWETmuOBFACMeAO5bA= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:03 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 05/52] qemu: Copy CPU models in virQEMUCapsGetCPUDefinitions 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-MC-Unique: gcrHWdsEMFyM00CI34eTIg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Rather than returning a direct pointer the list stored in qemuCaps the function now creates a new copy of the CPU models list. The main purpose of this seemingly useless change is to update callers to free the result returned by virQEMUCapsGetCPUDefinitions because the internals of this function will change significantly in the following patches. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_autoptr src/conf/domain_capabilities.h | 2 ++ src/qemu/qemu_capabilities.c | 23 ++++++++++++++++++----- src/qemu/qemu_driver.c | 2 +- src/qemu/qemu_process.c | 7 +++++-- tests/cputest.c | 1 - 5 files changed, 26 insertions(+), 9 deletions(-) diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h index 264c7fc429..36500435fd 100644 --- a/src/conf/domain_capabilities.h +++ b/src/conf/domain_capabilities.h @@ -139,6 +139,8 @@ struct _virDomainCapsCPUModels { virDomainCapsCPUModelPtr models; }; =20 +G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainCapsCPUModels, virObjectUnref); + typedef struct _virDomainCapsCPU virDomainCapsCPU; typedef virDomainCapsCPU *virDomainCapsCPUPtr; struct _virDomainCapsCPU { diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 8fd503a49c..afac77c1e4 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1885,10 +1885,17 @@ virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemuCaps, virDomainVirtType type) { + virDomainCapsCPUModelsPtr cpuModels; + if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - return qemuCaps->kvmCPUModels; + cpuModels =3D qemuCaps->kvmCPUModels; else - return qemuCaps->tcgCPUModels; + cpuModels =3D qemuCaps->tcgCPUModels; + + if (!cpuModels) + return NULL; + + return virDomainCapsCPUModelsCopy(cpuModels); } =20 =20 @@ -3112,6 +3119,7 @@ virQEMUCapsInitCPUModelX86(virQEMUCapsPtr qemuCaps, virCPUDefPtr cpu, bool migratable) { + g_autoptr(virDomainCapsCPUModels) cpuModels =3D NULL; virCPUDataPtr data =3D NULL; int ret =3D -1; =20 @@ -3121,7 +3129,9 @@ virQEMUCapsInitCPUModelX86(virQEMUCapsPtr qemuCaps, if (!(data =3D virQEMUCapsGetCPUModelX86Data(qemuCaps, model, migratab= le))) goto cleanup; =20 - if (cpuDecode(cpu, data, virQEMUCapsGetCPUDefinitions(qemuCaps, type))= < 0) + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type); + + if (cpuDecode(cpu, data, cpuModels) < 0) goto cleanup; =20 ret =3D 0; @@ -3204,10 +3214,13 @@ virQEMUCapsInitHostCPUModel(virQEMUCapsPtr qemuCaps, if ((rc =3D virQEMUCapsInitCPUModel(qemuCaps, type, cpu, false)) < 0) { goto error; } else if (rc =3D=3D 1) { + g_autoptr(virDomainCapsCPUModels) cpuModels =3D NULL; + VIR_DEBUG("No host CPU model info from QEMU; probing host CPU dire= ctly"); =20 - hostCPU =3D virQEMUCapsProbeHostCPU(hostArch, - virQEMUCapsGetCPUDefinitions(qem= uCaps, type)); + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type); + hostCPU =3D virQEMUCapsProbeHostCPU(hostArch, cpuModels); + if (!hostCPU || virCPUDefCopyModelFilter(cpu, hostCPU, true, virQEMUCapsCPUFilterFeatures, diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index d17c18705b..380943dda3 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -13704,7 +13704,7 @@ qemuConnectBaselineHypervisorCPU(virConnectPtr conn, g_autoptr(virQEMUCaps) qemuCaps =3D NULL; virArch arch; virDomainVirtType virttype; - virDomainCapsCPUModelsPtr cpuModels; + g_autoptr(virDomainCapsCPUModels) cpuModels =3D NULL; bool migratable; virCPUDefPtr cpu =3D NULL; char *cpustr =3D NULL; diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index ed8666e9d1..5bc13035a4 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -6110,6 +6110,8 @@ qemuProcessUpdateGuestCPU(virDomainDefPtr def, =20 /* nothing to update for host-passthrough */ if (def->cpu->mode !=3D VIR_CPU_MODE_HOST_PASSTHROUGH) { + g_autoptr(virDomainCapsCPUModels) cpuModels =3D NULL; + if (def->cpu->check =3D=3D VIR_CPU_CHECK_PARTIAL && virCPUCompare(caps->host.arch, virQEMUCapsGetHostModel(qemuCaps, def->virtType, @@ -6122,8 +6124,9 @@ qemuProcessUpdateGuestCPU(virDomainDefPtr def, VIR_QEMU_CAPS_HOST_CPU_MI= GRATABLE)) < 0) return -1; =20 - if (virCPUTranslate(def->os.arch, def->cpu, - virQEMUCapsGetCPUDefinitions(qemuCaps, def->vi= rtType)) < 0) + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, def->virtType= ); + + if (virCPUTranslate(def->os.arch, def->cpu, cpuModels) < 0) return -1; =20 def->cpu->fallback =3D VIR_CPU_FALLBACK_FORBID; diff --git a/tests/cputest.c b/tests/cputest.c index 6ead9e0982..e75e8bf906 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -549,7 +549,6 @@ cpuTestGetCPUModels(const struct data *data, return -1; =20 *models =3D virQEMUCapsGetCPUDefinitions(qemuCaps, VIR_DOMAIN_VIRT_KVM= ); - virObjectRef(*models); =20 virObjectUnref(qemuCaps); =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960674; cv=none; d=zoho.com; s=zohoarc; b=kkrXUyyBHKyBKps3TyWk9Wpwrmwz/sJPzC2jIy5qw5jGYwUqxsloMX9eWTjgdxaLtYhBCeyrm0/U0p0DksMvx6p0KJqpZxDFGfDcPiCsKybz860KXesVoaXGou42Wc809aXmuxr2vRTtjDb+BnDaSZr3xgCFOHKlm1V1c1WdGLo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960674; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=sWyxK15+avdIy1hVcaW1wLd/vs+QXiOdb9QKmjF+gGo=; b=DzlGLZoYflitIq3XSa8qVUeCb4t9c3cNAWpgBzqQWv5pcSkaxCUPWxCCBtCJzsn/Rl0a5EwssTQ949Lqq4fGMTwI0Fjp/hooQO00sJ0T6B0V2kZao421ZlLnROuj9yKJH22jKNGVT96me4+g5F+93HJzGnZjXg1xeXlkKDpACRw= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960674799669.7626119891322; Tue, 5 Nov 2019 05:31:14 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-340-w8QWlBNMO1Cn1oK0XBYFgg-1; Tue, 05 Nov 2019 08:28:34 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id D97C7801E5F; Tue, 5 Nov 2019 13:28:28 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id AB8E85D9E5; Tue, 5 Nov 2019 13:28:28 +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 513E84E570; Tue, 5 Nov 2019 13:28:28 +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 xA5DRvt7003888 for ; Tue, 5 Nov 2019 08:27:57 -0500 Received: by smtp.corp.redhat.com (Postfix) id E51C326FD1; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 94B2B1A8D8 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 74414105B23; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960674; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=sWyxK15+avdIy1hVcaW1wLd/vs+QXiOdb9QKmjF+gGo=; b=MO6tkIUMZQIkDxRuWVXjtxoDy4rzzAx7Y0bWUDbhZ90mZLvUedCuRiF2rhZNzXyCz24QDC EAGNTZDIT03g5o/vvbMdENvclVfgn8itnIkWojfgC0x4wt1nruJvJNIxkkghk3JZSfF7a+ 5rMvXC3/kf/PqDFIISyWFYCrpXPfW54= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:04 +0100 Message-Id: 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 v3 06/52] qemu: Filter models in virQEMUCapsGetCPUDefinitions 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: , 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-MC-Unique: w8QWlBNMO1Cn1oK0XBYFgg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Some callers of virQEMUCapsGetCPUDefinitions will need to filter the returned list of CPU models. Let's add the filtering parameters directly to virQEMUCapsGetCPUDefinitions to avoid copying the CPU models list twice. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - no change src/qemu/qemu_capabilities.c | 11 ++++++++--- src/qemu/qemu_capabilities.h | 4 +++- src/qemu/qemu_driver.c | 2 +- src/qemu/qemu_process.c | 2 +- tests/cputest.c | 2 +- 5 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index afac77c1e4..3d8a1c1721 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1883,7 +1883,9 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, =20 virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemuCaps, - virDomainVirtType type) + virDomainVirtType type, + const char **modelWhitelist, + const char **modelBlacklist) { virDomainCapsCPUModelsPtr cpuModels; =20 @@ -1895,6 +1897,9 @@ virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemuCaps, if (!cpuModels) return NULL; =20 + if (modelWhitelist || modelBlacklist) + return virDomainCapsCPUModelsFilter(cpuModels, modelWhitelist, mod= elBlacklist); + return virDomainCapsCPUModelsCopy(cpuModels); } =20 @@ -3129,7 +3134,7 @@ virQEMUCapsInitCPUModelX86(virQEMUCapsPtr qemuCaps, if (!(data =3D virQEMUCapsGetCPUModelX86Data(qemuCaps, model, migratab= le))) goto cleanup; =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type); + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type, NULL, NULL); =20 if (cpuDecode(cpu, data, cpuModels) < 0) goto cleanup; @@ -3218,7 +3223,7 @@ virQEMUCapsInitHostCPUModel(virQEMUCapsPtr qemuCaps, =20 VIR_DEBUG("No host CPU model info from QEMU; probing host CPU dire= ctly"); =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type); + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type, NULL, N= ULL); hostCPU =3D virQEMUCapsProbeHostCPU(hostArch, cpuModels); =20 if (!hostCPU || diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 10f0ce2654..67dccc522e 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -570,7 +570,9 @@ int virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCap= s, size_t count, virDomainCapsCPUUsable usable); virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemu= Caps, - virDomainVirtType t= ype); + virDomainVirtType t= ype, + const char **modelW= hitelist, + const char **modelB= lacklist); virDomainCapsCPUModelsPtr virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mo= n, virArch arch); =20 diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 380943dda3..76787bf56a 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -13730,7 +13730,7 @@ qemuConnectBaselineHypervisorCPU(virConnectPtr conn, if (!qemuCaps) goto cleanup; =20 - if (!(cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, virttype)) = || + if (!(cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, virttype, N= ULL, NULL)) || cpuModels->nmodels =3D=3D 0) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, _("QEMU '%s' does not support any CPU models for " diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 5bc13035a4..4c61332871 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -6124,7 +6124,7 @@ qemuProcessUpdateGuestCPU(virDomainDefPtr def, VIR_QEMU_CAPS_HOST_CPU_MI= GRATABLE)) < 0) return -1; =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, def->virtType= ); + cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, def->virtType= , NULL, NULL); =20 if (virCPUTranslate(def->os.arch, def->cpu, cpuModels) < 0) return -1; diff --git a/tests/cputest.c b/tests/cputest.c index e75e8bf906..11c061e37a 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -548,7 +548,7 @@ cpuTestGetCPUModels(const struct data *data, if (!(qemuCaps =3D cpuTestMakeQEMUCaps(data))) return -1; =20 - *models =3D virQEMUCapsGetCPUDefinitions(qemuCaps, VIR_DOMAIN_VIRT_KVM= ); + *models =3D virQEMUCapsGetCPUDefinitions(qemuCaps, VIR_DOMAIN_VIRT_KVM= , NULL, NULL); =20 virObjectUnref(qemuCaps); =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960552; cv=none; d=zoho.com; s=zohoarc; b=opJyx4+MVKZpojQ3ceI0lQAV8kLva0qmoTBaQ6i8rcyT3utN7cgRSpa27LuVvYdUaBidmVzMhU7yCjQ3Azjn3chqBqj9I6sJxCtLCRHBPyRfNxW259/RpTLh1HRuvA7wGWKyetYKYdT+JsOKSsR1syRxule24pLbmXKWrNUhcz8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960552; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=sSfjL9k5Aur1swlagmg7FG9Sej9Kc1uPxCY1zGjRfKQ=; b=UnH+DVPBRcVKAvbIYyDlhaeVhsWs1JNvNtd4zW3D0hlLoeVJBwvV8IfiaT98Ar9+wbcqGi5HpuPhIDEVzVsokRXYRG4VavZ8/1Xk4HJmW+PJ42wz2JKDRbCQU9/QG5KVpTC40AyxT4lMDC9Gp8+FbP98j6h5eAmnA5kSez1Qg18= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960552353980.1358465453807; Tue, 5 Nov 2019 05:29:12 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-109-NlPgNip7PomaK7bdCXoInw-1; Tue, 05 Nov 2019 08:28:49 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 43DC2107ACFC; Tue, 5 Nov 2019 13:28:44 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 20FBC5C554; Tue, 5 Nov 2019 13:28:44 +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 D5DB74E570; Tue, 5 Nov 2019 13:28:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0Em003969 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5B3071001DC2; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2DFBB1001B00 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 76FAF105B24; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960551; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=sSfjL9k5Aur1swlagmg7FG9Sej9Kc1uPxCY1zGjRfKQ=; b=WWE5zOvQkL/OJb3SNr07Peddi75CCcZfXjTCyI8dEqAwQSh4osS5WqcNMvcYUF5XNuT+WM jMkP/yiKBMRHC/vzqA8xGepFIPW2ogz4lXW//G6zNkQRR3v4pbsG84SpCaRk3wLMKXhtrv jatu3y0UKNlqphB0p0TqwM+tRFN9Ckk= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:05 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 07/52] qemu: Use virQEMUCapsGetCPUDefinitions more 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: NlPgNip7PomaK7bdCXoInw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - no change src/qemu/qemu_capabilities.c | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 3d8a1c1721..33b91d23dc 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5276,24 +5276,17 @@ virQEMUCapsFillDomainCPUCaps(virCapsPtr caps, =20 if (virQEMUCapsIsCPUModeSupported(qemuCaps, caps, domCaps->virttype, VIR_CPU_MODE_CUSTOM)) { - virDomainCapsCPUModelsPtr filtered =3D NULL; - char **models =3D NULL; const char *blacklist[] =3D { "host", NULL }; + VIR_AUTOSTRINGLIST models =3D NULL; =20 if (virCPUGetModels(domCaps->arch, &models) >=3D 0) { - virDomainCapsCPUModelsPtr cpus; - - if (domCaps->virttype =3D=3D VIR_DOMAIN_VIRT_KVM) - cpus =3D qemuCaps->kvmCPUModels; - else - cpus =3D qemuCaps->tcgCPUModels; - - filtered =3D virDomainCapsCPUModelsFilter(cpus, - (const char **)models, - blacklist); - virStringListFree(models); + domCaps->cpu.custom =3D virQEMUCapsGetCPUDefinitions(qemuCaps, + domCaps->vi= rttype, + (const char= **)models, + blacklist); + } else { + domCaps->cpu.custom =3D NULL; } - domCaps->cpu.custom =3D filtered; } =20 return 0; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960512; cv=none; d=zoho.com; s=zohoarc; b=n0m17ny16++brxJy8rGYxTLllq1vtriADipAsUyh3lLq2GOndmDmBt1rZ2yYVovC9CesDnXBrCkrE+TrPYzD2pM3XO+/R5ZgZgj85NzEDm1GYjd8UYjEQmSHF5JihJzLrlcOCX1fpqBU7v0pR/w8gIQo0D5RrXz5nuVbbQ50HgI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960512; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=eUhRsh0vZX8nNeobLpUbrBe9UIt/CCfkUpc2UBXgugQ=; b=OkoE/eEDhZekaLwJEfmS7AbjHiEP4X9+JAe8Mr20u5gXhCSKbJ5LQVQLqwmRCmISBhITuFWuCU3dFqF4Iokpe7O66pFBvKldKoyfsinGtYGwMetNT+wwggfeZ4w0XhSBmKGEk4t1oisWyQKdcDucu9ZVLojWInb7QENYZNPbyiI= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960512535766.9685544990826; Tue, 5 Nov 2019 05:28:32 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-33-ertUkbCJP1KuCwB5LwIgYg-1; Tue, 05 Nov 2019 08:28:29 -0500 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 51A25107ACC5; Tue, 5 Nov 2019 13:28:24 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 292262706B; Tue, 5 Nov 2019 13:28:24 +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 CD8604E562; Tue, 5 Nov 2019 13:28:23 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRv8R003880 for ; Tue, 5 Nov 2019 08:27:57 -0500 Received: by smtp.corp.redhat.com (Postfix) id BF4CD5D726; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 949C15D727 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 79B3D105B25; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960511; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=eUhRsh0vZX8nNeobLpUbrBe9UIt/CCfkUpc2UBXgugQ=; b=fnglK6QhCEKDKqZ8hbIEQyOHYUPE6Z9tEOYKInnzeY7rVHNJSqfkzCbK8v6eQpGgqzAVZc MGrK7+R7YhCmQKjbrjU+WCCXTv9/zjbqlEJYU1UF122QnefcB3ZdHpkvBjhutpYtyrvuj1 PQz38a8cjKt6LOcy8h18MKUlvBsg42s= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:06 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 08/52] qemu: Use g_autoptr in qemuMonitorJSONGetCPUDefinitions 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-MC-Unique: ertUkbCJP1KuCwB5LwIgYg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_autoptr src/qemu/qemu_monitor_json.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index f4794b2a43..c330026692 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5578,8 +5578,8 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, qemuMonitorCPUDefInfoPtr **cpus) { int ret =3D -1; - virJSONValuePtr cmd; - virJSONValuePtr reply =3D NULL; + g_autoptr(virJSONValue) cmd =3D NULL; + g_autoptr(virJSONValue) reply =3D NULL; virJSONValuePtr data; qemuMonitorCPUDefInfoPtr *cpulist =3D NULL; size_t n =3D 0; @@ -5679,8 +5679,6 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, qemuMonitorCPUDefInfoFree(cpulist[i]); VIR_FREE(cpulist); } - virJSONValueFree(cmd); - virJSONValueFree(reply); return ret; } =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960605; cv=none; d=zoho.com; s=zohoarc; b=IyocnVgqJM6uKnHa9LjLCCkPjpPEAxxAUa2mBCs8RHqyUuSLlZUqKM6l4Soaa9V1WXFNGcQwmOV247QUzTfkNPxCfX0238DJaUVnf21VvGCUEgLjAI/eg95IZWo84rfPhYTQflxLn15O5zEHynGooB1s+XOZfyjI0JKFQWr70Ps= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960605; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=7sAW45DrQ5mSXkjD+++nevsb6SgPOGT9eIHTV2UxAo0=; b=CWZySyHf4/2TPjqtp3wahXoSaNB/2986touMWdRxsWmcjpNbL2c4mUARUuH60drW+CWbZvYkNj4Uz00v4JlVpvwbbQ4wlFztzDBJkKhgiO85G284Q0E5Gaje+ipg9HSr+RgqMeIQVGuSMhmJ33CUcU+8C4XINlSdUDZ6ZlLhI6A= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960605901752.5320576412497; Tue, 5 Nov 2019 05:30:05 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-254-EBecjfDIOlKsZnzNZpKgvQ-1; Tue, 05 Nov 2019 08:29:01 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8E343107ACE5; Tue, 5 Nov 2019 13:28:51 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 625A560C88; Tue, 5 Nov 2019 13:28:51 +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 2169E4E599; Tue, 5 Nov 2019 13:28:51 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0gn004025 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id D909A5C1B2; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8928E5C28C for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 7C73E105B26; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960603; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=7sAW45DrQ5mSXkjD+++nevsb6SgPOGT9eIHTV2UxAo0=; b=Di6Bi7tzk8YYlefXQ8H+VyhASwSzBCGlMG/o5O7ZqppJJY/SBvNkUPaSfJopXsMjT5s83h 7/eKK0W5FL1Q11P9kaomxLn1AZyNMJ8FXpVuzGFCa0wUZsyBuw83Xw+cOCcCaeSu7Ha9nr iR3Gq/LhBL4XwZvmoeamF95FB7NRemo= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:07 +0100 Message-Id: <245af60b8282900e4de14baec58b938da607a14c.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 09/52] qemu: Change return type of virQEMUCapsFetchCPUDefinitions 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: EBecjfDIOlKsZnzNZpKgvQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The function would return a valid virDomainCapsCPUModelsPtr with empty CPU models list if query-cpu-definitions exists in QEMU, but returns GenericError meaning it's not in fact implemented. This behaviour is a bit strange especially after such virDomainCapsCPUModels structure is stored in capabilities XML and parsed back, which will result in NULL virDomainCapsCPUModelsPtr rather than a structure containing nothing. Let's just keep virDomainCapsCPUModelsPtr NULL if the QMP command is not implemented and change the return value to int so that callers can easily check for failure or success. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - g_steal_pointer src/qemu/qemu_capabilities.c | 32 ++++++++++++++++++++------------ src/qemu/qemu_capabilities.h | 5 +++-- src/qemu/qemu_process.c | 17 ++++++++++------- 3 files changed, 33 insertions(+), 21 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 33b91d23dc..c88cf2f3b0 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2442,17 +2442,26 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemu= Caps, } =20 =20 -virDomainCapsCPUModelsPtr +int virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, - virArch arch) + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels) { virDomainCapsCPUModelsPtr models =3D NULL; qemuMonitorCPUDefInfoPtr *cpus =3D NULL; int ncpus =3D 0; size_t i; + int ret =3D -1; + + *cpuModels =3D NULL; =20 if ((ncpus =3D qemuMonitorGetCPUDefinitions(mon, &cpus)) < 0) - return NULL; + return -1; + + if (ncpus =3D=3D 0) { + ret =3D 0; + goto cleanup; + } =20 /* QEMU 2.11 for Power renamed all CPU models to lower case, we need to * translate them back to libvirt's upper case model names. */ @@ -2461,7 +2470,7 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, char **name; =20 if (virCPUGetModels(arch, &libvirtModels) < 0) - goto error; + goto cleanup; =20 for (name =3D libvirtModels; name && *name; name++) { for (i =3D 0; i < ncpus; i++) { @@ -2475,7 +2484,7 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, } =20 if (!(models =3D virDomainCapsCPUModelsNew(ncpus))) - goto error; + goto cleanup; =20 for (i =3D 0; i < ncpus; i++) { virDomainCapsCPUUsable usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; @@ -2487,19 +2496,18 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, =20 if (virDomainCapsCPUModelsAddSteal(models, &cpus[i]->name, usable, &cpus[i]->blockers) < 0) - goto error; + goto cleanup; } =20 + *cpuModels =3D g_steal_pointer(&models); + ret =3D 0; + cleanup: for (i =3D 0; i < ncpus; i++) qemuMonitorCPUDefInfoFree(cpus[i]); VIR_FREE(cpus); - return models; - - error: virObjectUnref(models); - models =3D NULL; - goto cleanup; + return ret; } =20 =20 @@ -2513,7 +2521,7 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemu= Caps, if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS)) return 0; =20 - if (!(models =3D virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch))) + if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &models) < 0) return -1; =20 if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 67dccc522e..ba3fe3d2b6 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -573,8 +573,9 @@ virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(= virQEMUCapsPtr qemuCaps, virDomainVirtType t= ype, const char **modelW= hitelist, const char **modelB= lacklist); -virDomainCapsCPUModelsPtr virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mo= n, - virArch arch); +int virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels); =20 typedef enum { /* Host CPU definition reported in domain capabilities. */ diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 4c61332871..bdd01993a2 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4345,27 +4345,30 @@ qemuProcessUpdateAndVerifyCPU(virQEMUDriverPtr driv= er, } =20 =20 -static virDomainCapsCPUModelsPtr +static int qemuProcessFetchCPUDefinitions(virQEMUDriverPtr driver, virDomainObjPtr vm, - qemuDomainAsyncJob asyncJob) + qemuDomainAsyncJob asyncJob, + virDomainCapsCPUModelsPtr *cpuModels) { qemuDomainObjPrivatePtr priv =3D vm->privateData; virDomainCapsCPUModelsPtr models =3D NULL; + int rc; =20 if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0) goto error; =20 - models =3D virQEMUCapsFetchCPUDefinitions(priv->mon, vm->def->os.arch); + rc =3D virQEMUCapsFetchCPUDefinitions(priv->mon, vm->def->os.arch, &mo= dels); =20 - if (qemuDomainObjExitMonitor(driver, vm) < 0) + if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0) goto error; =20 - return models; + *cpuModels =3D models; + return 0; =20 error: virObjectUnref(models); - return NULL; + return -1; } =20 =20 @@ -4390,7 +4393,7 @@ qemuProcessUpdateCPU(virQEMUDriverPtr driver, if (qemuProcessUpdateLiveGuestCPU(vm, cpu, disabled) < 0) goto cleanup; =20 - if (!(models =3D qemuProcessFetchCPUDefinitions(driver, vm, asyncJob))= || + if (qemuProcessFetchCPUDefinitions(driver, vm, asyncJob, &models) < 0 = || virCPUTranslate(vm->def->os.arch, vm->def->cpu, models) < 0) goto cleanup; =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960527; cv=none; d=zoho.com; s=zohoarc; b=gSL1za+PTLrSipMjqZI/mEw9LOVqInLcYMU6SJKvzSH4gXbHVoxTkaVO1U1mAzFPDdERlR7004l0xdlV4PY1rxNNDLtjc7vVxnbPtGqHSakWOs10v/CoO15vf4+2GaVf3N6psVanElOJ/A+ArXHJ3KscWgYvsfqsM0FCq/jhR1A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960527; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=09XB7lnSUSIRC395WvqWJGGddMF7iQfqklMe9amKhdY=; b=jVaULJVMvIdxRBiPtFLRpvLyt6P0ZztA4TaS0l3/FIUbbLAlTw9BZbVS5qHdePUbkb5BZhfGdRKx6dIr9SlNSg0N1D/3MTNSSCPA45zzN8CwSwegD1dUaBTYQKBNvWH5ZSO5cANot3Pc0OnkHLEjjZJJcBTwSLA/DZxON6SljzQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960527809231.7034632112642; Tue, 5 Nov 2019 05:28:47 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-333-Os0nj64SN5eXrfAh8Asb5g-1; Tue, 05 Nov 2019 08:28:44 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6BD5A107ACC8; Tue, 5 Nov 2019 13:28:39 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 44A541001B00; Tue, 5 Nov 2019 13:28:39 +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 03B604E580; Tue, 5 Nov 2019 13:28:39 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0N1003989 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id A20C01001B32; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2E4D51001B11 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 7F7D1105B27; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960526; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=09XB7lnSUSIRC395WvqWJGGddMF7iQfqklMe9amKhdY=; b=AXwzIiu1C9hrjf8+70gwjelC4ulWkpbmuhfnAZYxRRRkazn3LNwzWwN8C9G8KheJwsyFw9 H/fHs3GmjJekJECwkVbqg7moVtf0RAkX6NyUryIexNHH+iP+7YLCG3EnRRSfEfUB188ykf hgzmAxq1hFyHcd755Gt+yk3y/MPugPw= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:08 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 10/52] qemu: Introduce qemuMonitorCPUDefs struct 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-MC-Unique: Os0nj64SN5eXrfAh8Asb5g-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" It is a container for a CPU models list (qemuMonitorCPUDefInfo) and a number of elements in this list. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - v1 reviewed by J=C3=A1n Tomko, but the patch had to be changed because of the previous patch =20 Version 3: - new functions use glib src/qemu/qemu_capabilities.c | 30 +++++++++------------ src/qemu/qemu_monitor.c | 36 +++++++++++++++++++------ src/qemu/qemu_monitor.h | 14 ++++++++-- src/qemu/qemu_monitor_json.c | 52 ++++++++++++++---------------------- src/qemu/qemu_monitor_json.h | 2 +- tests/qemumonitorjsontest.c | 38 ++++++++++---------------- 6 files changed, 88 insertions(+), 84 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index c88cf2f3b0..e8b857b8cf 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2447,18 +2447,17 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, virArch arch, virDomainCapsCPUModelsPtr *cpuModels) { + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; virDomainCapsCPUModelsPtr models =3D NULL; - qemuMonitorCPUDefInfoPtr *cpus =3D NULL; - int ncpus =3D 0; size_t i; int ret =3D -1; =20 *cpuModels =3D NULL; =20 - if ((ncpus =3D qemuMonitorGetCPUDefinitions(mon, &cpus)) < 0) + if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0) return -1; =20 - if (ncpus =3D=3D 0) { + if (!defs) { ret =3D 0; goto cleanup; } @@ -2473,29 +2472,29 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, goto cleanup; =20 for (name =3D libvirtModels; name && *name; name++) { - for (i =3D 0; i < ncpus; i++) { - if (STRCASENEQ(cpus[i]->name, *name)) + for (i =3D 0; i < defs->ncpus; i++) { + if (STRCASENEQ(defs->cpus[i]->name, *name)) continue; =20 - VIR_FREE(cpus[i]->name); - cpus[i]->name =3D g_strdup(*name); + VIR_FREE(defs->cpus[i]->name); + defs->cpus[i]->name =3D g_strdup(*name); } } } =20 - if (!(models =3D virDomainCapsCPUModelsNew(ncpus))) + if (!(models =3D virDomainCapsCPUModelsNew(defs->ncpus))) goto cleanup; =20 - for (i =3D 0; i < ncpus; i++) { + for (i =3D 0; i < defs->ncpus; i++) { virDomainCapsCPUUsable usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; =20 - if (cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_YES) + if (defs->cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_YES) usable =3D VIR_DOMCAPS_CPU_USABLE_YES; - else if (cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_NO) + else if (defs->cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_NO) usable =3D VIR_DOMCAPS_CPU_USABLE_NO; =20 - if (virDomainCapsCPUModelsAddSteal(models, &cpus[i]->name, usable, - &cpus[i]->blockers) < 0) + if (virDomainCapsCPUModelsAddSteal(models, &defs->cpus[i]->name, u= sable, + &defs->cpus[i]->blockers) < 0) goto cleanup; } =20 @@ -2503,9 +2502,6 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, ret =3D 0; =20 cleanup: - for (i =3D 0; i < ncpus; i++) - qemuMonitorCPUDefInfoFree(cpus[i]); - VIR_FREE(cpus); virObjectUnref(models); return ret; } diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 224d6a76c9..44c8ba2adb 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -3553,25 +3553,45 @@ qemuMonitorMachineInfoFree(qemuMonitorMachineInfoPt= r machine) =20 int qemuMonitorGetCPUDefinitions(qemuMonitorPtr mon, - qemuMonitorCPUDefInfoPtr **cpus) + qemuMonitorCPUDefsPtr *cpuDefs) { - VIR_DEBUG("cpus=3D%p", cpus); + VIR_DEBUG("cpuDefs=3D%p", cpuDefs); =20 QEMU_CHECK_MONITOR(mon); =20 - return qemuMonitorJSONGetCPUDefinitions(mon, cpus); + return qemuMonitorJSONGetCPUDefinitions(mon, cpuDefs); } =20 =20 void -qemuMonitorCPUDefInfoFree(qemuMonitorCPUDefInfoPtr cpu) +qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs) { - if (!cpu) + size_t i; + + if (!defs) return; =20 - virStringListFree(cpu->blockers); - VIR_FREE(cpu->name); - VIR_FREE(cpu); + for (i =3D 0; i < defs->ncpus; i++) { + g_strfreev(defs->cpus[i]->blockers); + g_free(defs->cpus[i]->name); + g_free(defs->cpus[i]); + } + + g_free(defs->cpus); + g_free(defs); +} + + +qemuMonitorCPUDefsPtr +qemuMonitorCPUDefsNew(size_t count) +{ + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; + + defs =3D g_new0(qemuMonitorCPUDefs, 1); + defs->cpus =3D g_new0(qemuMonitorCPUDefInfoPtr, count); + defs->ncpus =3D count; + + return g_steal_pointer(&defs); } =20 =20 diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index c4b7196794..00f4dd437f 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1112,9 +1112,19 @@ struct _qemuMonitorCPUDefInfo { char **blockers; /* NULL-terminated string list */ }; =20 +typedef struct _qemuMonitorCPUDefs qemuMonitorCPUDefs; +typedef qemuMonitorCPUDefs *qemuMonitorCPUDefsPtr; +struct _qemuMonitorCPUDefs { + size_t ncpus; + qemuMonitorCPUDefInfoPtr *cpus; +}; + int qemuMonitorGetCPUDefinitions(qemuMonitorPtr mon, - qemuMonitorCPUDefInfoPtr **cpus); -void qemuMonitorCPUDefInfoFree(qemuMonitorCPUDefInfoPtr cpu); + qemuMonitorCPUDefsPtr *cpuDefs); +qemuMonitorCPUDefsPtr qemuMonitorCPUDefsNew(size_t count); +void qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs); +G_DEFINE_AUTOPTR_CLEANUP_FUNC(qemuMonitorCPUDefs, qemuMonitorCPUDefsFree); + =20 typedef enum { QEMU_MONITOR_CPU_PROPERTY_BOOLEAN, diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index c330026692..8f04be79c1 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5575,56 +5575,53 @@ int qemuMonitorJSONGetMachines(qemuMonitorPtr mon, =20 int qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, - qemuMonitorCPUDefInfoPtr **cpus) + qemuMonitorCPUDefsPtr *cpuDefs) { - int ret =3D -1; + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; g_autoptr(virJSONValue) cmd =3D NULL; g_autoptr(virJSONValue) reply =3D NULL; virJSONValuePtr data; - qemuMonitorCPUDefInfoPtr *cpulist =3D NULL; - size_t n =3D 0; + size_t ncpus; size_t i; =20 - *cpus =3D NULL; + *cpuDefs =3D NULL; =20 if (!(cmd =3D qemuMonitorJSONMakeCommand("query-cpu-definitions", NULL= ))) return -1; =20 if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0) - goto cleanup; + return -1; =20 /* Urgh, some QEMU architectures have the query-cpu-definitions * command, but return 'GenericError' with string "Not supported", * instead of simply omitting the command entirely :-( */ - if (qemuMonitorJSONHasError(reply, "GenericError")) { - ret =3D 0; - goto cleanup; - } + if (qemuMonitorJSONHasError(reply, "GenericError")) + return 0; =20 if (qemuMonitorJSONCheckReply(cmd, reply, VIR_JSON_TYPE_ARRAY) < 0) - goto cleanup; + return -1; =20 data =3D virJSONValueObjectGetArray(reply, "return"); - n =3D virJSONValueArraySize(data); + ncpus =3D virJSONValueArraySize(data); =20 - if (VIR_ALLOC_N(cpulist, n) < 0) - goto cleanup; + if (!(defs =3D qemuMonitorCPUDefsNew(ncpus))) + return -1; =20 - for (i =3D 0; i < n; i++) { + for (i =3D 0; i < defs->ncpus; i++) { virJSONValuePtr child =3D virJSONValueArrayGet(data, i); const char *tmp; qemuMonitorCPUDefInfoPtr cpu; =20 if (VIR_ALLOC(cpu) < 0) - goto cleanup; + return -1; =20 - cpulist[i] =3D cpu; + defs->cpus[i] =3D cpu; =20 if (!(tmp =3D virJSONValueObjectGetString(child, "name"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("query-cpu-definitions reply data was missing= 'name'")); - goto cleanup; + return -1; } =20 cpu->name =3D g_strdup(tmp); @@ -5640,7 +5637,7 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("unavailable-features in query-cpu-defini= tions " "reply data was not an array")); - goto cleanup; + return -1; } =20 len =3D virJSONValueArraySize(blockers); @@ -5652,7 +5649,7 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, =20 cpu->usable =3D VIR_TRISTATE_BOOL_NO; if (VIR_ALLOC_N(cpu->blockers, len + 1) < 0) - goto cleanup; + return -1; =20 for (j =3D 0; j < len; j++) { virJSONValuePtr blocker =3D virJSONValueArrayGet(blockers,= j); @@ -5661,7 +5658,7 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("unexpected value in unavailable-feat= ures " "array")); - goto cleanup; + return -1; } =20 cpu->blockers[j] =3D g_strdup(virJSONValueGetString(blocke= r)); @@ -5669,17 +5666,8 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, } } =20 - ret =3D n; - *cpus =3D cpulist; - cpulist =3D NULL; - - cleanup: - if (cpulist) { - for (i =3D 0; i < n; i++) - qemuMonitorCPUDefInfoFree(cpulist[i]); - VIR_FREE(cpulist); - } - return ret; + *cpuDefs =3D g_steal_pointer(&defs); + return 0; } =20 =20 diff --git a/src/qemu/qemu_monitor_json.h b/src/qemu/qemu_monitor_json.h index e85a606792..7e6d1b9919 100644 --- a/src/qemu/qemu_monitor_json.h +++ b/src/qemu/qemu_monitor_json.h @@ -379,7 +379,7 @@ int qemuMonitorJSONGetMachines(qemuMonitorPtr mon, ATTRIBUTE_NONNULL(2); =20 int qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, - qemuMonitorCPUDefInfoPtr **cpus) + qemuMonitorCPUDefsPtr *cpuDefs) ATTRIBUTE_NONNULL(2); =20 int qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon, diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c index 963b54d27f..c84ff0d6b4 100644 --- a/tests/qemumonitorjsontest.c +++ b/tests/qemumonitorjsontest.c @@ -428,10 +428,7 @@ testQemuMonitorJSONGetCPUDefinitions(const void *opaqu= e) { const testGenericData *data =3D opaque; virDomainXMLOptionPtr xmlopt =3D data->xmlopt; - int ret =3D -1; - qemuMonitorCPUDefInfoPtr *cpus =3D NULL; - int ncpus =3D 0; - size_t i; + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; g_autoptr(qemuMonitorTest) test =3D NULL; =20 if (!(test =3D qemuMonitorTestNewSchema(xmlopt, data->schema))) @@ -453,31 +450,30 @@ testQemuMonitorJSONGetCPUDefinitions(const void *opaq= ue) " } " " ]" "}") < 0) - goto cleanup; + return -1; =20 - if ((ncpus =3D qemuMonitorGetCPUDefinitions(qemuMonitorTestGetMonitor(= test), - &cpus)) < 0) - goto cleanup; + if (qemuMonitorGetCPUDefinitions(qemuMonitorTestGetMonitor(test), &def= s) < 0) + return -1; =20 - if (ncpus !=3D 3) { + if (defs->ncpus !=3D 3) { virReportError(VIR_ERR_INTERNAL_ERROR, - "ncpus %d is not 3", ncpus); - goto cleanup; + "ncpus %zu is not 3", defs->ncpus); + return -1; } =20 #define CHECK_FULL(i, wantname, Usable) \ do { \ - if (STRNEQ(cpus[i]->name, (wantname))) { \ + if (STRNEQ(defs->cpus[i]->name, (wantname))) { \ virReportError(VIR_ERR_INTERNAL_ERROR, \ "name %s is not %s", \ - cpus[i]->name, (wantname)); \ - goto cleanup; \ + defs->cpus[i]->name, (wantname)); \ + return -1; \ } \ - if (cpus[i]->usable !=3D (Usable)) { \ + if (defs->cpus[i]->usable !=3D (Usable)) { \ virReportError(VIR_ERR_INTERNAL_ERROR, \ "%s: expecting usable flag %d, got %d", \ - cpus[i]->name, Usable, cpus[i]->usable); \ - goto cleanup; \ + defs->cpus[i]->name, Usable, defs->cpus[i]->usa= ble); \ + return -1; \ } \ } while (0) =20 @@ -496,13 +492,7 @@ testQemuMonitorJSONGetCPUDefinitions(const void *opaqu= e) #undef CHECK_USABLE #undef CHECK_FULL =20 - ret =3D 0; - - cleanup: - for (i =3D 0; i < ncpus; i++) - qemuMonitorCPUDefInfoFree(cpus[i]); - VIR_FREE(cpus); - return ret; + return 0; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960724; cv=none; d=zoho.com; s=zohoarc; b=cGSd/D6QwlHjuG6AubD4dnyDI08E4hrj2ahlQU1chzt+TaUJieE5j07MSEWZexi0DNCHMPH3h7joMWAAhiKPBpns0LEtkwJIPXczlMLiKnkymh5kzXQfSh39dbkmwvXCSgimLBS6Uc2SzFulNMikWsoNUMEk6E+eHTAndoF2w1U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960724; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=M1VMuH1Q5eeOgjahiUj1xAa/d5S9MVqMdtPRkAO8Dz4=; b=oNvVDJzDDMXmtFz1Ma5WSRX5044+xJrajylXSlUNdubrTJy3Y3ix5fy6AudGNrbHcb02Sk4ccUrtcyUICiqi4f6jwN7kcs/dVgUE8ooWuxALgWrwRuvXP28sWg2TTsBbrnOTpyywYWkMX7WiZItBRVoPyZ8HvDnFNcIIqHvstq0= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960723996425.64261657046757; Tue, 5 Nov 2019 05:32:03 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-378-a5yXU-5sNFyV8uahYAivxg-1; Tue, 05 Nov 2019 08:28:55 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AB924808245; Tue, 5 Nov 2019 13:28:47 +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 7E08D5D70D; Tue, 5 Nov 2019 13:28:47 +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 2FE0B18033C7; Tue, 5 Nov 2019 13:28:47 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0NI003981 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id 7C2A81001B32; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2D8741001902 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 82B19105B28; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960723; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=M1VMuH1Q5eeOgjahiUj1xAa/d5S9MVqMdtPRkAO8Dz4=; b=ieM88HM2Cpe6NKHRkysdBUvN80gwe7q88j4Y1GmW+pvGMdVTgoPrNWroNnBiiPnKm2rO1/ JCTNr2QExH/VrPrezGLigMSUogqlUpqPfTaeY62ghWDW82t60dTI6PE2pYfciQGtITnRYL Dr+7/eH6+mtf4+81INlx+3j7N7vRxSU= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:09 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 11/52] qemu: Flatten qemuMonitorCPUDefs.cpus 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: a5yXU-5sNFyV8uahYAivxg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Let's store qemuMonitorCPUDefInfo directly in the array of CPUs in qemuMonitorCPUDefs rather then using an array of pointers. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - trivial rebase =20 Version 3: - minor change caused by g_new0 introduced in v3 of the previous patch src/qemu/qemu_capabilities.c | 14 +++++++------- src/qemu/qemu_monitor.c | 7 +++---- src/qemu/qemu_monitor.h | 2 +- src/qemu/qemu_monitor_json.c | 7 +------ tests/qemumonitorjsontest.c | 8 ++++---- 5 files changed, 16 insertions(+), 22 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index e8b857b8cf..af51a701b1 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2473,11 +2473,11 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, =20 for (name =3D libvirtModels; name && *name; name++) { for (i =3D 0; i < defs->ncpus; i++) { - if (STRCASENEQ(defs->cpus[i]->name, *name)) + if (STRCASENEQ(defs->cpus[i].name, *name)) continue; =20 - VIR_FREE(defs->cpus[i]->name); - defs->cpus[i]->name =3D g_strdup(*name); + VIR_FREE(defs->cpus[i].name); + defs->cpus[i].name =3D g_strdup(*name); } } } @@ -2488,13 +2488,13 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, for (i =3D 0; i < defs->ncpus; i++) { virDomainCapsCPUUsable usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; =20 - if (defs->cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_YES) + if (defs->cpus[i].usable =3D=3D VIR_TRISTATE_BOOL_YES) usable =3D VIR_DOMCAPS_CPU_USABLE_YES; - else if (defs->cpus[i]->usable =3D=3D VIR_TRISTATE_BOOL_NO) + else if (defs->cpus[i].usable =3D=3D VIR_TRISTATE_BOOL_NO) usable =3D VIR_DOMCAPS_CPU_USABLE_NO; =20 - if (virDomainCapsCPUModelsAddSteal(models, &defs->cpus[i]->name, u= sable, - &defs->cpus[i]->blockers) < 0) + if (virDomainCapsCPUModelsAddSteal(models, &defs->cpus[i].name, us= able, + &defs->cpus[i].blockers) < 0) goto cleanup; } =20 diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 44c8ba2adb..f906472cd1 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -3572,9 +3572,8 @@ qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs) return; =20 for (i =3D 0; i < defs->ncpus; i++) { - g_strfreev(defs->cpus[i]->blockers); - g_free(defs->cpus[i]->name); - g_free(defs->cpus[i]); + g_strfreev(defs->cpus[i].blockers); + g_free(defs->cpus[i].name); } =20 g_free(defs->cpus); @@ -3588,7 +3587,7 @@ qemuMonitorCPUDefsNew(size_t count) g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; =20 defs =3D g_new0(qemuMonitorCPUDefs, 1); - defs->cpus =3D g_new0(qemuMonitorCPUDefInfoPtr, count); + defs->cpus =3D g_new0(qemuMonitorCPUDefInfo, count); defs->ncpus =3D count; =20 return g_steal_pointer(&defs); diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index 00f4dd437f..f275e910cf 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1116,7 +1116,7 @@ typedef struct _qemuMonitorCPUDefs qemuMonitorCPUDefs; typedef qemuMonitorCPUDefs *qemuMonitorCPUDefsPtr; struct _qemuMonitorCPUDefs { size_t ncpus; - qemuMonitorCPUDefInfoPtr *cpus; + qemuMonitorCPUDefInfoPtr cpus; }; =20 int qemuMonitorGetCPUDefinitions(qemuMonitorPtr mon, diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index 8f04be79c1..a6cf70c70a 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5611,12 +5611,7 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, for (i =3D 0; i < defs->ncpus; i++) { virJSONValuePtr child =3D virJSONValueArrayGet(data, i); const char *tmp; - qemuMonitorCPUDefInfoPtr cpu; - - if (VIR_ALLOC(cpu) < 0) - return -1; - - defs->cpus[i] =3D cpu; + qemuMonitorCPUDefInfoPtr cpu =3D defs->cpus + i; =20 if (!(tmp =3D virJSONValueObjectGetString(child, "name"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c index c84ff0d6b4..81680d97f8 100644 --- a/tests/qemumonitorjsontest.c +++ b/tests/qemumonitorjsontest.c @@ -463,16 +463,16 @@ testQemuMonitorJSONGetCPUDefinitions(const void *opaq= ue) =20 #define CHECK_FULL(i, wantname, Usable) \ do { \ - if (STRNEQ(defs->cpus[i]->name, (wantname))) { \ + if (STRNEQ(defs->cpus[i].name, (wantname))) { \ virReportError(VIR_ERR_INTERNAL_ERROR, \ "name %s is not %s", \ - defs->cpus[i]->name, (wantname)); \ + defs->cpus[i].name, (wantname)); \ return -1; \ } \ - if (defs->cpus[i]->usable !=3D (Usable)) { \ + if (defs->cpus[i].usable !=3D (Usable)) { \ virReportError(VIR_ERR_INTERNAL_ERROR, \ "%s: expecting usable flag %d, got %d", \ - defs->cpus[i]->name, Usable, defs->cpus[i]->usa= ble); \ + defs->cpus[i].name, Usable, defs->cpus[i].usabl= e); \ return -1; \ } \ } while (0) --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960723; cv=none; d=zoho.com; s=zohoarc; b=LHQB9DUUR4Ylxl4cbQb3nHw0HnJ3aBQdyRahqlmCC1SpsqyxxaUueTt/ePlqZ6ydAhrgUZ4UvSpVXk8hwRn42R0fu9Er8a02pmmKotDuUKaH4wTwShSZboThQWOHJuYqLQcTBOQYyRBjYDOn3+4rW62tnumZZb7YIHa/2nWiKoU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960723; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=kTaTkpTYpR0r6ow6CWGJ/4Y7f/kKhjXzkEMaREDHIgo=; b=XeOh5PQMDsbYT6AEeDzBJkKj7JxWLbjP8oTEaVxwqL4MnJEU3gSbVJ1zrUxJn9KhyVJeQ4SiZi+EmE41n4N1jgOKf/UONjC6HZpa2LzU8teX8bdqfm427u49RDxyOie6dAGO7Axo5iwKlhs9w5Vzmmiiwg8VrQKRKxqfFlVItTc= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960723076289.639592457542; Tue, 5 Nov 2019 05:32:03 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-205-1jtU8MOqMPOQLgfBOI52oA-1; Tue, 05 Nov 2019 08:28:38 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id EF4A3801E7E; Tue, 5 Nov 2019 13:28:32 +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 C38BC608B5; Tue, 5 Nov 2019 13:28:32 +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 791E018034F0; Tue, 5 Nov 2019 13:28:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRwij003900 for ; Tue, 5 Nov 2019 08:27:58 -0500 Received: by smtp.corp.redhat.com (Postfix) id 182C7600C8; Tue, 5 Nov 2019 13:27:58 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E02ED600C6 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 85E5A105B29; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960722; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=kTaTkpTYpR0r6ow6CWGJ/4Y7f/kKhjXzkEMaREDHIgo=; b=G+xsbaAYQDltrMuOPUcXibeOMWor+AecFmqWlKqlYlJ3kBW8KLOz6wMl4u4vDxFz0UpRAM +d2XgZ7A9yMm4QDgj9fvz4SkKX+9TKa06GBaFO2Njsf9WAzjAny0IwxqNMoXWiMMMKXpVi YoGUohxTwOwC7tIL6YBIQPeXLptrubI= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:10 +0100 Message-Id: <32489af45f5a7f62b6e24b86af6657ca8372a3a5.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 12/52] qemu: Add qemuMonitorCPUDefsCopy 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: 1jtU8MOqMPOQLgfBOI52oA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - more glib functions - the function now returns the pointer to the copy rather than int as it can never fail src/qemu/qemu_monitor.c | 23 +++++++++++++++++++++++ src/qemu/qemu_monitor.h | 1 + 2 files changed, 24 insertions(+) diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index f906472cd1..39c3122074 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -3594,6 +3594,29 @@ qemuMonitorCPUDefsNew(size_t count) } =20 =20 +qemuMonitorCPUDefsPtr +qemuMonitorCPUDefsCopy(qemuMonitorCPUDefsPtr src) +{ + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; + size_t i; + + if (!src) + return NULL; + + defs =3D qemuMonitorCPUDefsNew(src->ncpus); + for (i =3D 0; i < src->ncpus; i++) { + qemuMonitorCPUDefInfoPtr cpuDst =3D defs->cpus + i; + qemuMonitorCPUDefInfoPtr cpuSrc =3D src->cpus + i; + + cpuDst->usable =3D cpuSrc->usable; + cpuDst->name =3D g_strdup(cpuSrc->name); + cpuDst->blockers =3D g_strdupv(cpuSrc->blockers); + } + + return g_steal_pointer(&defs); +} + + int qemuMonitorGetCPUModelExpansion(qemuMonitorPtr mon, qemuMonitorCPUModelExpansionType type, diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index f275e910cf..629379802c 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1122,6 +1122,7 @@ struct _qemuMonitorCPUDefs { int qemuMonitorGetCPUDefinitions(qemuMonitorPtr mon, qemuMonitorCPUDefsPtr *cpuDefs); qemuMonitorCPUDefsPtr qemuMonitorCPUDefsNew(size_t count); +qemuMonitorCPUDefsPtr qemuMonitorCPUDefsCopy(qemuMonitorCPUDefsPtr src); void qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs); G_DEFINE_AUTOPTR_CLEANUP_FUNC(qemuMonitorCPUDefs, qemuMonitorCPUDefsFree); =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960507; cv=none; d=zoho.com; s=zohoarc; b=Wx3YjnOv4G48Xzc6M3ViN7ysW0OF6WYHj3LyeumLry1A/DX+7Dc+RpedHelmP24HF/EPP/IpIg3vEBq7lkBxtGfYuaVEquwQQMDx8LAsNxwpcpS3TLJZCSMDS4ciQqHPS/p48VxupZ1VTwKv2p07HpcPY7O0c1Yj3kal9bWYbhY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960507; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=4I0sJG6LaK90R5PovKrcvnxP9Pgu6QRhgrLsoH6fobY=; b=JhAK5EaGfd86zhQ/rfhy5+oFWSzbW1HLWD6tp8JmjdU43hTVFglS7hd5t7kLFSlH/frZPptntm2UwUNfdyJLSbbBfdIWvzRTHNXfU34PfiKNrMZGnkZOnK8anvFIh81pbdX/F30AuOXQ9tE1UF29KiIby9rvHxzDXvpCMpB3Y08= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960507766452.71999542171307; Tue, 5 Nov 2019 05:28:27 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-352-O5xhf77POtWrXV8ZqNXTMQ-1; Tue, 05 Nov 2019 08:28:24 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 73F53180496F; Tue, 5 Nov 2019 13:28:19 +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 47C9D600D5; Tue, 5 Nov 2019 13:28:19 +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 F256F1803C40; Tue, 5 Nov 2019 13:28:18 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRw70003902 for ; Tue, 5 Nov 2019 08:27:58 -0500 Received: by smtp.corp.redhat.com (Postfix) id 21E71600C6; Tue, 5 Nov 2019 13:27:58 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id EB559600C4 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 893C5105B2A; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960506; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=4I0sJG6LaK90R5PovKrcvnxP9Pgu6QRhgrLsoH6fobY=; b=CAxLw7f/PevKRqWyDPYnsLFIgoh4jkT4hn1ubDdAOQ+CHfYv1w9BNRiFjMh3d/YKNacM41 m1d73glbY61pihZGxmGNdjr8ZI2SpQgL4VQZxgp1ZPKlNg00vw5+78u1sWG0s1SzAClqSl p3W4+ZQA3W5HFZWOWNS1qv/pAWq4pTg= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:11 +0100 Message-Id: <03b523c95f28e1480f19aeceff9296e99323c28a.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 13/52] qemu: Use g_autofree in virQEMUCapsLoadCPUModels 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: O5xhf77POtWrXV8ZqNXTMQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_autofree src/qemu/qemu_capabilities.c | 58 +++++++++++++++--------------------- 1 file changed, 24 insertions(+), 34 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index af51a701b1..5136fe9202 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3461,15 +3461,10 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, virDomainVirtType type) { virDomainCapsCPUModelsPtr cpus =3D NULL; - xmlNodePtr *nodes =3D NULL; - char *str =3D NULL; + g_autofree xmlNodePtr * nodes =3D NULL; size_t i; int n; - int ret =3D -1; xmlNodePtr node; - xmlNodePtr *blockerNodes =3D NULL; - char **blockers =3D NULL; - int nblockers; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) n =3D virXPathNodeSet("./cpu[@type=3D'kvm']", ctxt, &nodes); @@ -3479,16 +3474,14 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, if (n < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to parse qemu capabilities cpus")); - goto cleanup; + return -1; } =20 - if (n =3D=3D 0) { - ret =3D 0; - goto cleanup; - } + if (n =3D=3D 0) + return 0; =20 if (!(cpus =3D virDomainCapsCPUModelsNew(n))) - goto cleanup; + return -1; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) qemuCaps->kvmCPUModels =3D cpus; @@ -3497,19 +3490,24 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, =20 for (i =3D 0; i < n; i++) { int usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; - - if ((str =3D virXMLPropString(nodes[i], "usable")) && - (usable =3D virDomainCapsCPUUsableTypeFromString(str)) < 0) { + g_autofree char * strUsable =3D NULL; + g_autofree char * name =3D NULL; + g_autofree xmlNodePtr * blockerNodes =3D NULL; + VIR_AUTOSTRINGLIST blockers =3D NULL; + int nblockers; + + if ((strUsable =3D virXMLPropString(nodes[i], "usable")) && + (usable =3D virDomainCapsCPUUsableTypeFromString(strUsable)) <= 0) { virReportError(VIR_ERR_INTERNAL_ERROR, - _("unknown value '%s' in attribute 'usable'"), = str); - goto cleanup; + _("unknown value '%s' in attribute 'usable'"), + strUsable); + return -1; } - VIR_FREE(str); =20 - if (!(str =3D virXMLPropString(nodes[i], "name"))) { + if (!(name =3D virXMLPropString(nodes[i], "name"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing cpu name in QEMU capabilities cache"= )); - goto cleanup; + return -1; } =20 node =3D ctxt->node; @@ -3520,38 +3518,30 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, if (nblockers < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to parse CPU blockers in QEMU capabil= ities")); - goto cleanup; + return -1; } =20 if (nblockers > 0) { size_t j; =20 if (VIR_ALLOC_N(blockers, nblockers + 1) < 0) - goto cleanup; + return -1; =20 for (j =3D 0; j < nblockers; j++) { if (!(blockers[j] =3D virXMLPropString(blockerNodes[j], "n= ame"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing blocker name in QEMU " "capabilities cache")); - goto cleanup; + return -1; } } - VIR_FREE(blockerNodes); } =20 - if (virDomainCapsCPUModelsAddSteal(cpus, &str, usable, &blockers) = < 0) - goto cleanup; + if (virDomainCapsCPUModelsAddSteal(cpus, &name, usable, &blockers)= < 0) + return -1; } =20 - ret =3D 0; - - cleanup: - VIR_FREE(nodes); - VIR_FREE(str); - VIR_FREE(blockerNodes); - virStringListFree(blockers); - return ret; + return 0; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960616; cv=none; d=zoho.com; s=zohoarc; b=HBGjLpImBV4fj2T9meqYjS7AekM5id0UhAA3sufFOuZHIl1wbK3KNHzYy+a068inthJUOM6d3nfibdB84avSLiPghrv1Gn8nscgiaLp9epGyakHOL7NTn5EkWF4wBensB5Ylbs//qcjCPnNdsH+6EYBhqIvtIgWVe4c51Rdb+n4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960616; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=N+HrNcg8uP4boznLofEFF51LCZDCVtnl+MCBPNowut0=; b=n+whpReqk80XnZNAwIetk/XrQfp9Ivw7rGO2eRtwd5ZwNPi/O5k4iQMoJ3tV23QgarTOadjI8LVPfPruekOfqUuMVRALBdF/qt56xPNgZ8zxpEGK/EhUkAEpU3diDDvYLOqNGvyo44ErwSs2lOCHPbEDXznzW5xceSiMPJij0+4= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960616121937.4546072688612; Tue, 5 Nov 2019 05:30:16 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-227-dG_JaoUYMUqpxcf575HT1w-1; Tue, 05 Nov 2019 08:28:40 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9C6561005509; Tue, 5 Nov 2019 13:28:35 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 714E4608B6; Tue, 5 Nov 2019 13:28:35 +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 3079A4E576; Tue, 5 Nov 2019 13:28:35 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0M5003970 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5A9421001B35; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2EED71001B32 for ; Tue, 5 Nov 2019 13:27:57 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 8DB8A105B2B; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960615; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=N+HrNcg8uP4boznLofEFF51LCZDCVtnl+MCBPNowut0=; b=FLrMAyUM2pXQKwBE/3Tk2WnTv+MY6RjD4KEEo6/6r9z2kTe71PZ2T6D8wws76XJhbfJMAw J38kDAhlAynuaMqX8+yrcAT5H5bFJaQh9rYjnqiCfskeMl1TAHPcywyXuCegqP9NmbqbaG u3c8sGgucH5oHrqUw2dTGVj9o6x4qS8= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:12 +0100 Message-Id: <181580c010833c3b57a5e74899300bc263025f61.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 14/52] qemu: Use virDomainCapsCPUUsable in qemuMonitorCPUDefInfo 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: dG_JaoUYMUqpxcf575HT1w-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" While virDomainCapsCPUModel structure contains 'usable' field with virDomainCapsCPUUsable type, the lower level structure specific to QEMU driver used virTriStateBool for the same thing and we had to translate between them. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 11 +++-------- src/qemu/qemu_monitor.h | 2 +- src/qemu/qemu_monitor_json.c | 4 ++-- tests/qemumonitorjsontest.c | 4 ++-- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 5136fe9202..2a93488520 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2486,14 +2486,9 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, goto cleanup; =20 for (i =3D 0; i < defs->ncpus; i++) { - virDomainCapsCPUUsable usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; - - if (defs->cpus[i].usable =3D=3D VIR_TRISTATE_BOOL_YES) - usable =3D VIR_DOMCAPS_CPU_USABLE_YES; - else if (defs->cpus[i].usable =3D=3D VIR_TRISTATE_BOOL_NO) - usable =3D VIR_DOMCAPS_CPU_USABLE_NO; - - if (virDomainCapsCPUModelsAddSteal(models, &defs->cpus[i].name, us= able, + if (virDomainCapsCPUModelsAddSteal(models, + &defs->cpus[i].name, + defs->cpus[i].usable, &defs->cpus[i].blockers) < 0) goto cleanup; } diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index 629379802c..0eed8b3f9e 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1107,7 +1107,7 @@ typedef struct _qemuMonitorCPUDefInfo qemuMonitorCPUD= efInfo; typedef qemuMonitorCPUDefInfo *qemuMonitorCPUDefInfoPtr; =20 struct _qemuMonitorCPUDefInfo { - virTristateBool usable; + virDomainCapsCPUUsable usable; char *name; char **blockers; /* NULL-terminated string list */ }; diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index a6cf70c70a..54963233e6 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5638,11 +5638,11 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, len =3D virJSONValueArraySize(blockers); =20 if (len =3D=3D 0) { - cpu->usable =3D VIR_TRISTATE_BOOL_YES; + cpu->usable =3D VIR_DOMCAPS_CPU_USABLE_YES; continue; } =20 - cpu->usable =3D VIR_TRISTATE_BOOL_NO; + cpu->usable =3D VIR_DOMCAPS_CPU_USABLE_NO; if (VIR_ALLOC_N(cpu->blockers, len + 1) < 0) return -1; =20 diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c index 81680d97f8..16a1d40a56 100644 --- a/tests/qemumonitorjsontest.c +++ b/tests/qemumonitorjsontest.c @@ -478,11 +478,11 @@ testQemuMonitorJSONGetCPUDefinitions(const void *opaq= ue) } while (0) =20 #define CHECK(i, wantname) \ - CHECK_FULL(i, wantname, VIR_TRISTATE_BOOL_ABSENT) + CHECK_FULL(i, wantname, VIR_DOMCAPS_CPU_USABLE_UNKNOWN) =20 #define CHECK_USABLE(i, wantname, usable) \ CHECK_FULL(i, wantname, \ - usable ? VIR_TRISTATE_BOOL_YES : VIR_TRISTATE_BOOL_NO) + usable ? VIR_DOMCAPS_CPU_USABLE_YES : VIR_DOMCAPS_CPU_USABL= E_NO) =20 CHECK(0, "qemu64"); CHECK_USABLE(1, "Opteron_G4", false); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960571; cv=none; d=zoho.com; s=zohoarc; b=QyLJfFwTyfKPn5U1lX969+wAyyg38TQy8ImyOF5OoYQj4HkvuMVtuBgRG20jmkUsCpQjFKGJAWa2mzagGdaXCV/gBF2RJDSPEn4flF1hZR3Js9BRIJIQ542J11t+FtFL/9wNEIVmvSYwv1EobzCysWG2EdHZCwq+Z/k1jI3XWhY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960571; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=XAApQJCg0D891dXWxoQJw3U2SyZ4dxc84R8uzj+UeWg=; b=JL8Y8Z0hfpi6/hMOzP6dpeQ35Sy8t06wJpBfMvq2rKf/xCZjRvah76jga1OosKVwclo+7u8eRRf4VtKfd4wfzlXbuFgQCcSLGsxTL0/qW1C3pRcqED5alSolifMEpLLw/olhR6qFA7L/1Sc27NHFYz/8f8clr6l06xDP6rOJzx0= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960571192544.8196075050165; Tue, 5 Nov 2019 05:29:31 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-371-tAKvi2zDNQOZGp1b8es2Hg-1; Tue, 05 Nov 2019 08:29:26 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 31FA7100551A; Tue, 5 Nov 2019 13:29:20 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 05ADD608B6; Tue, 5 Nov 2019 13:29:20 +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 AE7964EDAE; Tue, 5 Nov 2019 13:29:19 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS3Pw004127 for ; Tue, 5 Nov 2019 08:28:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 61A5E5C1B2; Tue, 5 Nov 2019 13:28:03 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 366B55C28C for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 90450105B2C; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960570; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=XAApQJCg0D891dXWxoQJw3U2SyZ4dxc84R8uzj+UeWg=; b=FYNgsZITSSTipmXuXBcJzG4qjFi9+r4JrpwuhiZyU4xVX8jeHCd/iUxL1lRGg3VmeW32aq 5nCrCXQtxHi3Xx7muAapoK7r5869malFlqbRpZxCbEi0VO2FjyUM3lLX3CYb5K3QZXPO09 nq2GXUXUj3jdMStk5wvmVacaThpv/ec= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:13 +0100 Message-Id: <28c16cf2c0ffb4c6e34604319e597b0c9d44cd8a.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 15/52] qemu: Introduce virQEMUCapsCPUDefsToModels 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: tAKvi2zDNQOZGp1b8es2Hg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The function translates qemuMonitorCPUDefsPtr (used by QEMU caps probing code) into virDomainCapsCPUModelsPtr used by domain capabilities. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - trivial rebase =20 Version 3: - g_autoptr, g_steal_pointer src/qemu/qemu_capabilities.c | 58 ++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 23 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 2a93488520..1497c4f645 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1881,6 +1881,35 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, } =20 =20 +static virDomainCapsCPUModelsPtr +virQEMUCapsCPUDefsToModels(qemuMonitorCPUDefsPtr defs, + const char **modelWhitelist, + const char **modelBlacklist) +{ + g_autoptr(virDomainCapsCPUModels) cpuModels =3D NULL; + size_t i; + + if (!(cpuModels =3D virDomainCapsCPUModelsNew(defs->ncpus))) + return NULL; + + for (i =3D 0; i < defs->ncpus; i++) { + qemuMonitorCPUDefInfoPtr cpu =3D defs->cpus + i; + + if (modelWhitelist && !virStringListHasString(modelWhitelist, cpu-= >name)) + continue; + + if (modelBlacklist && virStringListHasString(modelBlacklist, cpu->= name)) + continue; + + if (virDomainCapsCPUModelsAdd(cpuModels, cpu->name, cpu->usable, + cpu->blockers) < 0) + return NULL; + } + + return g_steal_pointer(&cpuModels); +} + + virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemuCaps, virDomainVirtType type, @@ -2448,19 +2477,15 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, virDomainCapsCPUModelsPtr *cpuModels) { g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; - virDomainCapsCPUModelsPtr models =3D NULL; size_t i; - int ret =3D -1; =20 *cpuModels =3D NULL; =20 if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0) return -1; =20 - if (!defs) { - ret =3D 0; - goto cleanup; - } + if (!defs) + return 0; =20 /* QEMU 2.11 for Power renamed all CPU models to lower case, we need to * translate them back to libvirt's upper case model names. */ @@ -2469,7 +2494,7 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, char **name; =20 if (virCPUGetModels(arch, &libvirtModels) < 0) - goto cleanup; + return -1; =20 for (name =3D libvirtModels; name && *name; name++) { for (i =3D 0; i < defs->ncpus; i++) { @@ -2482,23 +2507,10 @@ virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, } } =20 - if (!(models =3D virDomainCapsCPUModelsNew(defs->ncpus))) - goto cleanup; - - for (i =3D 0; i < defs->ncpus; i++) { - if (virDomainCapsCPUModelsAddSteal(models, - &defs->cpus[i].name, - defs->cpus[i].usable, - &defs->cpus[i].blockers) < 0) - goto cleanup; - } - - *cpuModels =3D g_steal_pointer(&models); - ret =3D 0; + if (!(*cpuModels =3D virQEMUCapsCPUDefsToModels(defs, NULL, NULL))) + return -1; =20 - cleanup: - virObjectUnref(models); - return ret; + return 0; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960516; cv=none; d=zoho.com; s=zohoarc; b=gZEOiqV1l5wPXixre5op9ERtSwSSN/VAmNtVKI9cWXN57AMHCMvoH7Gn2JgYzSxFcwUE6eAMGWwQG1G8hIMyImBw+h6BF64Wz3JL/bvQDvYITudxCHY7KdzHnxrCR+0Yw+Pj05h+1k5/amngzmDculiMP19rV8LQPSPu9TWQG6s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960516; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=d5oJXghjIqkMr4/CA0tKOvWUK/3LYuyNf3/FZ7CV09U=; b=aBdoGIFeebQ7TDCaaa0P5svYVpFyeh1bbdC7GTMH0uySwAGjBBtx3dI+lthSORx2AA8Ars/JpmBJxRzaiOopdIu97krRxxzcuw5Ez966vCRcb7DTm4nlwv463xaqWqB//Ak7YmV2vLDo45CSdnZG2MmwCN4LdP+w9lE8P1De4qE= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960516148116.21578212828513; Tue, 5 Nov 2019 05:28:36 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-189-KIqm5EmVNnGHLPEEMeBGwg-1; Tue, 05 Nov 2019 08:28:33 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CA439800A02; Tue, 5 Nov 2019 13:28:27 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 977A9600D5; Tue, 5 Nov 2019 13:28:27 +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 EE8A54E567; Tue, 5 Nov 2019 13:28:26 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRx26003932 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5AF435D727; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0B5095D726 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 94671105B2D; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960515; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=d5oJXghjIqkMr4/CA0tKOvWUK/3LYuyNf3/FZ7CV09U=; b=fgKfmBxX0Mf44qGHMYupy7Vg6erZkSxMtbZRtlCjOw32rR7/qLyJ9bGfeirIu8QIbjnrYG LowZsVCrvyfhTJNtY5Y9xKLDUHCfqUzvL0ne8BM2Q9xp0A/YgYTKBrExsUEhvc7W52+CYX evZWnBegIUMCgKg+B1jzXj+awlfJ1W8= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:14 +0100 Message-Id: <8d372eb937486d770d2d5c0239bbc249aed67d04.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 16/52] qemu: Rename virQEMUCaps{Get, Fetch}CPUDefinitions 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: KIqm5EmVNnGHLPEEMeBGwg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The functions return virDomainCapsCPUModelsPtr and thus they should be called *CPUModels for consistency. Functions called *CPUDefinitions will work on qemuMonitorCPUDefsPtr. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - no change src/qemu/qemu_capabilities.c | 28 ++++++++++++++-------------- src/qemu/qemu_capabilities.h | 14 +++++++------- src/qemu/qemu_driver.c | 2 +- src/qemu/qemu_process.c | 4 ++-- tests/cputest.c | 2 +- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 1497c4f645..dfffc45d1d 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1911,10 +1911,10 @@ virQEMUCapsCPUDefsToModels(qemuMonitorCPUDefsPtr de= fs, =20 =20 virDomainCapsCPUModelsPtr -virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemuCaps, - virDomainVirtType type, - const char **modelWhitelist, - const char **modelBlacklist) +virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, + virDomainVirtType type, + const char **modelWhitelist, + const char **modelBlacklist) { virDomainCapsCPUModelsPtr cpuModels; =20 @@ -2472,9 +2472,9 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCa= ps, =20 =20 int -virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, - virArch arch, - virDomainCapsCPUModelsPtr *cpuModels) +virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels) { g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; size_t i; @@ -2524,7 +2524,7 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemu= Caps, if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS)) return 0; =20 - if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &models) < 0) + if (virQEMUCapsFetchCPUModels(mon, qemuCaps->arch, &models) < 0) return -1; =20 if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) @@ -3145,7 +3145,7 @@ virQEMUCapsInitCPUModelX86(virQEMUCapsPtr qemuCaps, if (!(data =3D virQEMUCapsGetCPUModelX86Data(qemuCaps, model, migratab= le))) goto cleanup; =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type, NULL, NULL); + cpuModels =3D virQEMUCapsGetCPUModels(qemuCaps, type, NULL, NULL); =20 if (cpuDecode(cpu, data, cpuModels) < 0) goto cleanup; @@ -3234,7 +3234,7 @@ virQEMUCapsInitHostCPUModel(virQEMUCapsPtr qemuCaps, =20 VIR_DEBUG("No host CPU model info from QEMU; probing host CPU dire= ctly"); =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, type, NULL, N= ULL); + cpuModels =3D virQEMUCapsGetCPUModels(qemuCaps, type, NULL, NULL); hostCPU =3D virQEMUCapsProbeHostCPU(hostArch, cpuModels); =20 if (!hostCPU || @@ -5281,10 +5281,10 @@ virQEMUCapsFillDomainCPUCaps(virCapsPtr caps, VIR_AUTOSTRINGLIST models =3D NULL; =20 if (virCPUGetModels(domCaps->arch, &models) >=3D 0) { - domCaps->cpu.custom =3D virQEMUCapsGetCPUDefinitions(qemuCaps, - domCaps->vi= rttype, - (const char= **)models, - blacklist); + domCaps->cpu.custom =3D virQEMUCapsGetCPUModels(qemuCaps, + domCaps->virttyp= e, + (const char **)m= odels, + blacklist); } else { domCaps->cpu.custom =3D NULL; } diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index ba3fe3d2b6..923706c3bf 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -569,13 +569,13 @@ int virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuC= aps, const char **name, size_t count, virDomainCapsCPUUsable usable); -virDomainCapsCPUModelsPtr virQEMUCapsGetCPUDefinitions(virQEMUCapsPtr qemu= Caps, - virDomainVirtType t= ype, - const char **modelW= hitelist, - const char **modelB= lacklist); -int virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, - virArch arch, - virDomainCapsCPUModelsPtr *cpuModels); +virDomainCapsCPUModelsPtr virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, + virDomainVirtType type, + const char **modelWhitel= ist, + const char **modelBlackl= ist); +int virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels); =20 typedef enum { /* Host CPU definition reported in domain capabilities. */ diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 76787bf56a..8240a6e74e 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -13730,7 +13730,7 @@ qemuConnectBaselineHypervisorCPU(virConnectPtr conn, if (!qemuCaps) goto cleanup; =20 - if (!(cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, virttype, N= ULL, NULL)) || + if (!(cpuModels =3D virQEMUCapsGetCPUModels(qemuCaps, virttype, NULL, = NULL)) || cpuModels->nmodels =3D=3D 0) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, _("QEMU '%s' does not support any CPU models for " diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index bdd01993a2..2ea524ab33 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4358,7 +4358,7 @@ qemuProcessFetchCPUDefinitions(virQEMUDriverPtr drive= r, if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0) goto error; =20 - rc =3D virQEMUCapsFetchCPUDefinitions(priv->mon, vm->def->os.arch, &mo= dels); + rc =3D virQEMUCapsFetchCPUModels(priv->mon, vm->def->os.arch, &models); =20 if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0) goto error; @@ -6127,7 +6127,7 @@ qemuProcessUpdateGuestCPU(virDomainDefPtr def, VIR_QEMU_CAPS_HOST_CPU_MI= GRATABLE)) < 0) return -1; =20 - cpuModels =3D virQEMUCapsGetCPUDefinitions(qemuCaps, def->virtType= , NULL, NULL); + cpuModels =3D virQEMUCapsGetCPUModels(qemuCaps, def->virtType, NUL= L, NULL); =20 if (virCPUTranslate(def->os.arch, def->cpu, cpuModels) < 0) return -1; diff --git a/tests/cputest.c b/tests/cputest.c index 11c061e37a..ef2d4e28df 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -548,7 +548,7 @@ cpuTestGetCPUModels(const struct data *data, if (!(qemuCaps =3D cpuTestMakeQEMUCaps(data))) return -1; =20 - *models =3D virQEMUCapsGetCPUDefinitions(qemuCaps, VIR_DOMAIN_VIRT_KVM= , NULL, NULL); + *models =3D virQEMUCapsGetCPUModels(qemuCaps, VIR_DOMAIN_VIRT_KVM, NUL= L, NULL); =20 virObjectUnref(qemuCaps); =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960512; cv=none; d=zoho.com; s=zohoarc; b=D4LXL7vDF147NXZpbyDq4XZphcESz03g+QGIb3bCCMrQi5bEXRC/y8FbAoqWt6eHCutP99ECD+KJuOUBef+luLiUwxLySgsBSumiQXfvpLHyyJ7XoZNhk8DJ+h/zEi7M38hFEwuqEkcsKez+famFPDEXFOnuJR8Ds5ZOUbWQXKA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960512; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=yBYu7y+E+g31stYTUC/Vko7rfirnphNdOJJR3zwNwdI=; b=KW+QMNZyvuwWW/r9NmQmt9St6sk2ITdESZt+2JB7t0CYzvlYPnnT0ZYEKX+saTpZnhQwMgcaBBsFnXK/vz8dirHSY0C0hZZUipigHA1uydhgBDbYxpc/z7y2rNxw2/i//1PHLnciIgOujL7p/CfDAyPGrJ1fCPgi2I5e9ugIjNA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960512526735.5481875492216; Tue, 5 Nov 2019 05:28:32 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-419-5Iw63wvkNOKxqba0K7OgGw-1; Tue, 05 Nov 2019 08:28:29 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AA56885B6EF; Tue, 5 Nov 2019 13:28:23 +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 7A2D6608B4; Tue, 5 Nov 2019 13:28:23 +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 333251803C43; Tue, 5 Nov 2019 13:28:23 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRx2p003930 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id 538AF608B6; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 28FDD608B9 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 98D0A105B2E; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960511; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=yBYu7y+E+g31stYTUC/Vko7rfirnphNdOJJR3zwNwdI=; b=Ck1caF5zwna8WcaZdqrUzCvzoT7qtyikxd9kuhWA+99/y5wsb6oboihdWuK8/niBh9wB86 EJ+tgYnRa7kDb8Xtm6tLA85y5uLfVRFknBvH341Em/eQUunbAMkiZktKbWTPLNfsQ5Ce14 sPbBo/OISzOkb9VqYtm67RPV/wrn8tA= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:15 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 17/52] qemu: Split virQEMUCapsFetchCPUModels 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: 5Iw63wvkNOKxqba0K7OgGw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Most of the code moved to a new virQEMUCapsFetchCPUDefinitions function and the existing virQEMUCapsFetchCPUModels just becomes a small wrapper around virQEMUCapsFetchCPUDefinitions and virQEMUCapsCPUDefsToModels. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - g_autoptr, g_steal_pointer src/qemu/qemu_capabilities.c | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index dfffc45d1d..431841e61e 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2471,15 +2471,15 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemu= Caps, } =20 =20 -int -virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, - virArch arch, - virDomainCapsCPUModelsPtr *cpuModels) +static int +virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, + virArch arch, + qemuMonitorCPUDefsPtr *cpuDefs) { g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; size_t i; =20 - *cpuModels =3D NULL; + *cpuDefs =3D NULL; =20 if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0) return -1; @@ -2507,7 +2507,24 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, } } =20 - if (!(*cpuModels =3D virQEMUCapsCPUDefsToModels(defs, NULL, NULL))) + *cpuDefs =3D g_steal_pointer(&defs); + return 0; +} + + +int +virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels) +{ + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; + + *cpuModels =3D NULL; + + if (virQEMUCapsFetchCPUDefinitions(mon, arch, &defs) < 0) + return -1; + + if (defs && !(*cpuModels =3D virQEMUCapsCPUDefsToModels(defs, NULL, NU= LL))) return -1; =20 return 0; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960543; cv=none; d=zoho.com; s=zohoarc; b=H5ITOq5iykM9nylmEU1dBsvn6yLfPlFSu3Ry8hs5sJItLQAVgsNWLiRss1pd9BIotIb7ZcLf+RDuSs9aCgLztr0FSuY4yl9ldGkMEyFuOUrUPWnGJTUb5tw9fIDgmXPd41kZJ+ZJhJkJVQGPpu77JAIgA7+dMk5dC7sEp3jMAW8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960543; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=9Ulr+yFfoHCn/qcNzD5IG6UqiuV3BRyQF9SrdCEMpok=; b=QdVtoiOoxcDsAqQhwIOFRBKM0TP2dTM/Exj9JBKV5mjmbDJFlmP0BBpcHgFgTQ50/hmpXTIyIWovFkoKo1FItpcp2h4WAbnDVlfrf+4M7d1oQ+glD+ts0YRkR4Ir9JmrPwkOJRiQ+ciMbP8LPVUebknAatQcwknG1ki35/06tns= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960543271591.7311518220087; Tue, 5 Nov 2019 05:29:03 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-331-IZLVDlbDM5-z2xsXnGzQwA-1; Tue, 05 Nov 2019 08:28:59 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 966672F62; Tue, 5 Nov 2019 13:28:46 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6A5ED5EE0F; Tue, 5 Nov 2019 13:28:46 +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 2CC8F4E583; Tue, 5 Nov 2019 13:28:46 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS09u003995 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id B23F85D728; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 617C75D72C for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 9DBBA105B2F; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960542; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=9Ulr+yFfoHCn/qcNzD5IG6UqiuV3BRyQF9SrdCEMpok=; b=dqeWQTU5n167dty5vEUDj0PyebJSSddmtrzH4cEQNnp+aIf1OuWTtl8GQRMp/VQ+ouFqHV 1qyDfebPZyWkAE2C4ZBIj6fyfbXca8WDC9uBAamjejU5Ow+3QGVF6kJ+uERsMYH2ThdrVN UPNV7DFCSxLVmo6u2Ob07bQSEShnW7s= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:16 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 18/52] qemu: Switch qemuCaps to use qemuMonitorCPUDefs 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: IZLVDlbDM5-z2xsXnGzQwA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" We will need to keep some QEMU-specific data for each CPU model supported by a QEMU binary. Instead of complicating the generic virDomainCapsCPUModelsPtr, we can just directly store qemuMonitorCPUDefsPtr returned by the capabilities probing code. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - adapted to changes made by the new patches =20 Version 3: - glib functions - implicit translation between virDomainCapsCPUUsable and virTristateBo= ol is gone since "qemu: Use virDomainCapsCPUUsable in qemuMonitorCPUDefInfo" patch src/qemu/qemu_capabilities.c | 108 +++++++++++++++++------------------ 1 file changed, 52 insertions(+), 56 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 431841e61e..ccb337ee2f 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -607,8 +607,8 @@ struct _virQEMUCaps { virArch arch; =20 virHashTablePtr domCapsCache; - virDomainCapsCPUModelsPtr kvmCPUModels; - virDomainCapsCPUModelsPtr tcgCPUModels; + qemuMonitorCPUDefsPtr kvmCPUModels; + qemuMonitorCPUDefsPtr tcgCPUModels; =20 size_t nmachineTypes; struct virQEMUCapsMachineType *machineTypes; @@ -1620,17 +1620,8 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qem= uCaps) =20 ret->arch =3D qemuCaps->arch; =20 - if (qemuCaps->kvmCPUModels) { - ret->kvmCPUModels =3D virDomainCapsCPUModelsCopy(qemuCaps->kvmCPUM= odels); - if (!ret->kvmCPUModels) - goto error; - } - - if (qemuCaps->tcgCPUModels) { - ret->tcgCPUModels =3D virDomainCapsCPUModelsCopy(qemuCaps->tcgCPUM= odels); - if (!ret->tcgCPUModels) - goto error; - } + ret->kvmCPUModels =3D qemuMonitorCPUDefsCopy(qemuCaps->kvmCPUModels); + ret->tcgCPUModels =3D qemuMonitorCPUDefsCopy(qemuCaps->tcgCPUModels); =20 if (virQEMUCapsHostCPUDataCopy(&ret->kvmCPU, &qemuCaps->kvmCPU) < 0 || virQEMUCapsHostCPUDataCopy(&ret->tcgCPU, &qemuCaps->tcgCPU) < 0) @@ -1855,25 +1846,36 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCap= s, virDomainCapsCPUUsable usable) { size_t i; - virDomainCapsCPUModelsPtr cpus =3D NULL; + size_t start; + qemuMonitorCPUDefsPtr defs =3D NULL; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM && qemuCaps->kvmCPUModels) - cpus =3D qemuCaps->kvmCPUModels; + defs =3D qemuCaps->kvmCPUModels; else if (type =3D=3D VIR_DOMAIN_VIRT_QEMU && qemuCaps->tcgCPUModels) - cpus =3D qemuCaps->tcgCPUModels; + defs =3D qemuCaps->tcgCPUModels; + + if (defs) { + start =3D defs->ncpus; =20 - if (!cpus) { - if (!(cpus =3D virDomainCapsCPUModelsNew(count))) + if (VIR_EXPAND_N(defs->cpus, defs->ncpus, count) < 0) + return -1; + } else { + start =3D 0; + + if (!(defs =3D qemuMonitorCPUDefsNew(count))) return -1; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvmCPUModels =3D cpus; + qemuCaps->kvmCPUModels =3D defs; else - qemuCaps->tcgCPUModels =3D cpus; + qemuCaps->tcgCPUModels =3D defs; } =20 for (i =3D 0; i < count; i++) { - if (virDomainCapsCPUModelsAdd(cpus, name[i], usable, NULL) < 0) + qemuMonitorCPUDefInfoPtr cpu =3D defs->cpus + start + i; + + cpu->usable =3D usable; + if (VIR_STRDUP(cpu->name, name[i]) < 0) return -1; } =20 @@ -1916,20 +1918,17 @@ virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, const char **modelWhitelist, const char **modelBlacklist) { - virDomainCapsCPUModelsPtr cpuModels; + qemuMonitorCPUDefsPtr defs; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - cpuModels =3D qemuCaps->kvmCPUModels; + defs =3D qemuCaps->kvmCPUModels; else - cpuModels =3D qemuCaps->tcgCPUModels; + defs =3D qemuCaps->tcgCPUModels; =20 - if (!cpuModels) + if (!defs) return NULL; =20 - if (modelWhitelist || modelBlacklist) - return virDomainCapsCPUModelsFilter(cpuModels, modelWhitelist, mod= elBlacklist); - - return virDomainCapsCPUModelsCopy(cpuModels); + return virQEMUCapsCPUDefsToModels(defs, modelWhitelist, modelBlacklist= ); } =20 =20 @@ -1989,7 +1988,7 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCaps, virDomainVirtType type, virCPUMode mode) { - virDomainCapsCPUModelsPtr cpus; + qemuMonitorCPUDefsPtr cpus; =20 switch (mode) { case VIR_CPU_MODE_HOST_PASSTHROUGH: @@ -2005,7 +2004,7 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCaps, cpus =3D qemuCaps->kvmCPUModels; else cpus =3D qemuCaps->tcgCPUModels; - return cpus && cpus->nmodels > 0; + return cpus && cpus->ncpus > 0; =20 case VIR_CPU_MODE_LAST: break; @@ -2536,18 +2535,18 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qe= muCaps, qemuMonitorPtr mon, bool tcg) { - virDomainCapsCPUModelsPtr models =3D NULL; + qemuMonitorCPUDefsPtr defs =3D NULL; =20 if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS)) return 0; =20 - if (virQEMUCapsFetchCPUModels(mon, qemuCaps->arch, &models) < 0) + if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &defs) < 0) return -1; =20 if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) - qemuCaps->tcgCPUModels =3D models; + qemuCaps->tcgCPUModels =3D defs; else - qemuCaps->kvmCPUModels =3D models; + qemuCaps->kvmCPUModels =3D defs; =20 return 0; } @@ -3484,7 +3483,7 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, xmlXPathContextPtr ctxt, virDomainVirtType type) { - virDomainCapsCPUModelsPtr cpus =3D NULL; + g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; g_autofree xmlNodePtr * nodes =3D NULL; size_t i; int n; @@ -3504,20 +3503,14 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, if (n =3D=3D 0) return 0; =20 - if (!(cpus =3D virDomainCapsCPUModelsNew(n))) + if (!(defs =3D qemuMonitorCPUDefsNew(n))) return -1; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvmCPUModels =3D cpus; - else - qemuCaps->tcgCPUModels =3D cpus; - for (i =3D 0; i < n; i++) { + qemuMonitorCPUDefInfoPtr cpu =3D defs->cpus + i; int usable =3D VIR_DOMCAPS_CPU_USABLE_UNKNOWN; g_autofree char * strUsable =3D NULL; - g_autofree char * name =3D NULL; g_autofree xmlNodePtr * blockerNodes =3D NULL; - VIR_AUTOSTRINGLIST blockers =3D NULL; int nblockers; =20 if ((strUsable =3D virXMLPropString(nodes[i], "usable")) && @@ -3527,8 +3520,9 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, strUsable); return -1; } + cpu->usable =3D usable; =20 - if (!(name =3D virXMLPropString(nodes[i], "name"))) { + if (!(cpu->name =3D virXMLPropString(nodes[i], "name"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing cpu name in QEMU capabilities cache"= )); return -1; @@ -3548,11 +3542,11 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, if (nblockers > 0) { size_t j; =20 - if (VIR_ALLOC_N(blockers, nblockers + 1) < 0) + if (VIR_ALLOC_N(cpu->blockers, nblockers + 1) < 0) return -1; =20 for (j =3D 0; j < nblockers; j++) { - if (!(blockers[j] =3D virXMLPropString(blockerNodes[j], "n= ame"))) { + if (!(cpu->blockers[j] =3D virXMLPropString(blockerNodes[j= ], "name"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing blocker name in QEMU " "capabilities cache")); @@ -3560,11 +3554,13 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, } } } - - if (virDomainCapsCPUModelsAddSteal(cpus, &name, usable, &blockers)= < 0) - return -1; } =20 + if (type =3D=3D VIR_DOMAIN_VIRT_KVM) + qemuCaps->kvmCPUModels =3D g_steal_pointer(&defs); + else + qemuCaps->tcgCPUModels =3D g_steal_pointer(&defs); + return 0; } =20 @@ -3973,23 +3969,23 @@ virQEMUCapsFormatCPUModels(virQEMUCapsPtr qemuCaps, virBufferPtr buf, virDomainVirtType type) { - virDomainCapsCPUModelsPtr cpus; + qemuMonitorCPUDefsPtr defs; const char *typeStr; size_t i; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) { typeStr =3D "kvm"; - cpus =3D qemuCaps->kvmCPUModels; + defs =3D qemuCaps->kvmCPUModels; } else { typeStr =3D "tcg"; - cpus =3D qemuCaps->tcgCPUModels; + defs =3D qemuCaps->tcgCPUModels; } =20 - if (!cpus) + if (!defs) return; =20 - for (i =3D 0; i < cpus->nmodels; i++) { - virDomainCapsCPUModelPtr cpu =3D cpus->models + i; + for (i =3D 0; i < defs->ncpus; i++) { + qemuMonitorCPUDefInfoPtr cpu =3D defs->cpus + i; =20 virBufferAsprintf(buf, "name); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960549; cv=none; d=zoho.com; s=zohoarc; b=WSgz7ZN/9GAMY7l1qNkJROVMhbG0kYByplWn+xsb64Ot18tCGXV84yujTkibzltBwJ2YE5AAM09Kijkti3vu4QIWB3il5bn/UaqgyRAnUIcfnO8WTziddGCF2drc4jCl5KId2TPYD8sWrtLQOLadBjgkPb9LA7OB9p1IqE1JDMM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960549; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=J+hg7jI9TAd5fgCDjzMFU5VpZxlgeXTurty3ncviFgw=; b=LxRKNnugXGJDXKHxfY4DOMSJ9V7XXkjeZbnQ5NHuTqvhRiJEl0spSkjmBY+auf6CH0yMZEoAf0Wpuk3JO9hp8DikMaP13VQi1O5B2MIn7KLncLnCuQvrt+FTFSA1O1ECGoB1XJ4ZHdtbMk5jQDgAkJgnjZMddl1vuEDhb1cHfUQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 157296054905359.32270871728463; Tue, 5 Nov 2019 05:29:09 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-196-2tyfwdZCMaayeg00KaSgow-1; Tue, 05 Nov 2019 08:28:49 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3677E107ACC6; Tue, 5 Nov 2019 13:28:43 +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 0FBA6608B4; Tue, 5 Nov 2019 13:28:43 +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 C29BD180350A; Tue, 5 Nov 2019 13:28:42 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0On003994 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id B0EAD5C557; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 867C55C1B2 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id A26C0105B30; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960548; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=J+hg7jI9TAd5fgCDjzMFU5VpZxlgeXTurty3ncviFgw=; b=J4UxAKRBMHTmk0k5aTCGNFtg8eL0UOgU3O5YHbF5TEfI0BktDmtFfgcOgsSVUXhEYT2rnv jT5rKA6sTjwfV0UsH5pYYriXk39mzR1+DPbfOcmV60V//D4zfpbUMq1341y5GS5luWHuYO jDuuX2XBWXPpo6viARYydBsAj8futZg= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:17 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 19/52] conf: Drop unused virDomainCapsCPUModelsFilter 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: 2tyfwdZCMaayeg00KaSgow-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - no change src/conf/domain_capabilities.c | 33 --------------------------------- src/conf/domain_capabilities.h | 3 --- src/libvirt_private.syms | 1 - 3 files changed, 37 deletions(-) diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index 0a89ccd071..fdeb468570 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -181,39 +181,6 @@ virDomainCapsCPUModelsCopy(virDomainCapsCPUModelsPtr o= ld) } =20 =20 -virDomainCapsCPUModelsPtr -virDomainCapsCPUModelsFilter(virDomainCapsCPUModelsPtr old, - const char **models, - const char **blacklist) -{ - virDomainCapsCPUModelsPtr cpuModels; - size_t i; - - if (!(cpuModels =3D virDomainCapsCPUModelsNew(0))) - return NULL; - - for (i =3D 0; i < old->nmodels; i++) { - if (models && !virStringListHasString(models, old->models[i].name)) - continue; - - if (blacklist && virStringListHasString(blacklist, old->models[i].= name)) - continue; - - if (virDomainCapsCPUModelsAdd(cpuModels, - old->models[i].name, - old->models[i].usable, - old->models[i].blockers) < 0) - goto error; - } - - return cpuModels; - - error: - virObjectUnref(cpuModels); - return NULL; -} - - int virDomainCapsCPUModelsAddSteal(virDomainCapsCPUModelsPtr cpuModels, char **name, diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h index 36500435fd..d989f76d41 100644 --- a/src/conf/domain_capabilities.h +++ b/src/conf/domain_capabilities.h @@ -196,9 +196,6 @@ virDomainCapsPtr virDomainCapsNew(const char *path, =20 virDomainCapsCPUModelsPtr virDomainCapsCPUModelsNew(size_t nmodels); virDomainCapsCPUModelsPtr virDomainCapsCPUModelsCopy(virDomainCapsCPUModel= sPtr old); -virDomainCapsCPUModelsPtr virDomainCapsCPUModelsFilter(virDomainCapsCPUMod= elsPtr old, - const char **models, - const char **blackl= ist); int virDomainCapsCPUModelsAddSteal(virDomainCapsCPUModelsPtr cpuModels, char **name, virDomainCapsCPUUsable usable, diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 94509d6f43..fe42c6769f 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -193,7 +193,6 @@ virDomainAuditVcpu; virDomainCapsCPUModelsAdd; virDomainCapsCPUModelsAddSteal; virDomainCapsCPUModelsCopy; -virDomainCapsCPUModelsFilter; virDomainCapsCPUModelsGet; virDomainCapsCPUModelsNew; virDomainCapsCPUUsableTypeFromString; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960525; cv=none; d=zoho.com; s=zohoarc; b=jahDksprRYl+NGBojkhxa7XezZGs/GaZp6U2wVn/821yTlzTke5efurt8ikciB3KEaCPZ9QUq63/azaN7IkQ2ugYnUCUNVE8QTjO7/vkCLtYte8R12zRuTUH0O85mCWmYCEfXS2q+TDuLxqb/01dIYlh/sGTtatIvHOq8sqYM3M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960525; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=yXUqTZEAxRMgSZp+YX6T+Md2ECBmcc7vIm6gGeGirqg=; b=e5n91ChyoaKbBTisNH0n4OjQjyxQi7fvmxDQQQM6gAOuckkh23johdpjSSLAWUAeFS6PXT/H9h0QvU8xPAEw/NqpVgp2oLyfwtDZRrYvnQsGJbdRfinDyCDAhkU5f8ivN1O4ThkYQnoRD6F3hzSZj9UpRVi6cf3K7y+4pnM+/V0= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 157296052544390.2649301822695; Tue, 5 Nov 2019 05:28:45 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-383-fxIxgvHXP9O6E1UvAXYRxw-1; Tue, 05 Nov 2019 08:28:41 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AFCE7100551B; Tue, 5 Nov 2019 13:28:36 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7E75060FC5; Tue, 5 Nov 2019 13:28:36 +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 3E0CD4E57B; Tue, 5 Nov 2019 13:28:36 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRxeZ003934 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5EBE1600C8; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 33B1F600C4 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id A710C105B31; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960524; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=yXUqTZEAxRMgSZp+YX6T+Md2ECBmcc7vIm6gGeGirqg=; b=VZDZBcPJaRqFrzukXvDxMio8EzoVeKnl3DQBVCsOj1TJ9SWYfy2CLZU+j0kxEsu2LtqTmb Y4eFfiqmce+GX9xW7xmLQ899YXfPKX/E5f4b1cUuo3QTkskcfGzp69IJNcKn2UvUo0cz4T YvyCSQ01U6XmQeTVtyUdR+/lnDFwQiI= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:18 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 20/52] conf: Drop virDomainCapsCPUModelsAddSteal 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: fxIxgvHXP9O6E1UvAXYRxw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Both virDomainCapsCPUModelsAdd and virDomainCapsCPUModelsAddSteal are so simple we can just squash the code in a single function. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_steal_pointer src/conf/domain_capabilities.c | 33 ++++++++++----------------------- src/conf/domain_capabilities.h | 4 ---- src/libvirt_private.syms | 1 - 3 files changed, 10 insertions(+), 28 deletions(-) diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index fdeb468570..da47643f34 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -181,27 +181,6 @@ virDomainCapsCPUModelsCopy(virDomainCapsCPUModelsPtr o= ld) } =20 =20 -int -virDomainCapsCPUModelsAddSteal(virDomainCapsCPUModelsPtr cpuModels, - char **name, - virDomainCapsCPUUsable usable, - char ***blockers) -{ - if (VIR_RESIZE_N(cpuModels->models, cpuModels->nmodels_max, - cpuModels->nmodels, 1) < 0) - return -1; - - cpuModels->models[cpuModels->nmodels].usable =3D usable; - cpuModels->models[cpuModels->nmodels].name =3D g_steal_pointer(&*name); - - if (blockers) - cpuModels->models[cpuModels->nmodels].blockers =3D g_steal_pointer= (&*blockers); - - cpuModels->nmodels++; - return 0; -} - - int virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr cpuModels, const char *name, @@ -210,6 +189,7 @@ virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr cpu= Models, { g_autofree char * nameCopy =3D NULL; VIR_AUTOSTRINGLIST blockersCopy =3D NULL; + virDomainCapsCPUModelPtr cpu; =20 if (VIR_STRDUP(nameCopy, name) < 0) return -1; @@ -217,10 +197,17 @@ virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr c= puModels, if (virStringListCopy(&blockersCopy, (const char **)blockers) < 0) return -1; =20 - if (virDomainCapsCPUModelsAddSteal(cpuModels, &nameCopy, - usable, &blockersCopy) < 0) + if (VIR_RESIZE_N(cpuModels->models, cpuModels->nmodels_max, + cpuModels->nmodels, 1) < 0) return -1; =20 + cpu =3D cpuModels->models + cpuModels->nmodels; + cpuModels->nmodels++; + + cpu->usable =3D usable; + cpu->name =3D g_steal_pointer(&nameCopy); + cpu->blockers =3D g_steal_pointer(&blockersCopy); + return 0; } =20 diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h index d989f76d41..d93c06c2e1 100644 --- a/src/conf/domain_capabilities.h +++ b/src/conf/domain_capabilities.h @@ -196,10 +196,6 @@ virDomainCapsPtr virDomainCapsNew(const char *path, =20 virDomainCapsCPUModelsPtr virDomainCapsCPUModelsNew(size_t nmodels); virDomainCapsCPUModelsPtr virDomainCapsCPUModelsCopy(virDomainCapsCPUModel= sPtr old); -int virDomainCapsCPUModelsAddSteal(virDomainCapsCPUModelsPtr cpuModels, - char **name, - virDomainCapsCPUUsable usable, - char ***blockers); int virDomainCapsCPUModelsAdd(virDomainCapsCPUModelsPtr cpuModels, const char *name, virDomainCapsCPUUsable usable, diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index fe42c6769f..df9d07d297 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -191,7 +191,6 @@ virDomainAuditVcpu; =20 # conf/domain_capabilities.h virDomainCapsCPUModelsAdd; -virDomainCapsCPUModelsAddSteal; virDomainCapsCPUModelsCopy; virDomainCapsCPUModelsGet; virDomainCapsCPUModelsNew; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960785; cv=none; d=zoho.com; s=zohoarc; b=YqjjOmeT9jEoPzTeOnSikSxgVL4vXDEKeTISP3KZhohyTH6dx1NgTur1NMU2c2Nckq1opDBs0ChYuse4Ouq+ZLergHnm6J+yxKmfLakB8NTjHL3BexpTI881FKLkm2Zpi0Ouw7X4T7gMt6aEkrBNtlqGta8zanTE9tlXCXgN5WM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960785; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=MzYrkHwk5rLU6+YscnheJJ278qRdK6rxrsj1jU8+cb8=; b=GV/yCMF2W7xEvWl0qxi0x3r1YxS4sgbm4HyNikgROKdzcPVTadBOSV4VerRQdGIeWGx1CQSqsE/QYLrgM8aK/PVG5WSgHRBD2i9LxOB5hynBocNnJGnIZHwf3+B9q7F08nnVAiFlVGsS8IUAMXj4NeueYQ+sXmSFxCa4cWBU9wc= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960785807476.9917564232958; Tue, 5 Nov 2019 05:33:05 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-162-fpeDk8CRNDaCh8BJ6UG4JQ-1; Tue, 05 Nov 2019 08:28:38 -0500 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D85BF107ACC6; Tue, 5 Nov 2019 13:28:31 +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 AF7F927089; Tue, 5 Nov 2019 13:28:31 +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 619D018034EB; Tue, 5 Nov 2019 13:28:31 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRx4c003950 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id A2AFE600CC; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 53B6C600C6 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id ABFE8105C7E; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960784; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=MzYrkHwk5rLU6+YscnheJJ278qRdK6rxrsj1jU8+cb8=; b=Xf7TfeCtRynziOcn7LJpnmFv04m0ot+PYyzSVeMMg315GBvPIdMEn9xb7HEmxD/zu7eipI tt2DfPtM/UOVPKw2/Lh7FghVhoxXOXWiAjwR5Ln2jiquGBYcg87iMzxTF1LhLaHSaMw9h6 CtCCEhqkcZknHgaf7co5ofzjOvkkkC4= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:19 +0100 Message-Id: <1087e4789046a1efdb8adcc96d5993562cdce5a4.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 21/52] qemu: Store typename from query-cpu-definitions in qemuCaps 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-MC-Unique: fpeDk8CRNDaCh8BJ6UG4JQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" We need to create a mapping between CPU model names and their corresponding QOM types. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - ignore empty typename strings =20 Version 3: - g_strdup src/qemu/qemu_capabilities.c | 3 + src/qemu/qemu_monitor.c | 2 + src/qemu/qemu_monitor.h | 1 + src/qemu/qemu_monitor_json.c | 5 + .../caps_2.10.0.aarch64.xml | 126 ++--- .../caps_2.10.0.ppc64.xml | 512 ++++++++--------- .../caps_2.10.0.s390x.xml | 264 ++++----- .../caps_2.10.0.x86_64.xml | 132 ++--- .../caps_2.11.0.s390x.xml | 264 ++++----- .../caps_2.11.0.x86_64.xml | 136 ++--- .../caps_2.12.0.aarch64.xml | 136 ++--- .../caps_2.12.0.ppc64.xml | 516 +++++++++--------- .../caps_2.12.0.s390x.xml | 264 ++++----- .../caps_2.12.0.x86_64.xml | 180 +++--- .../qemucapabilitiesdata/caps_2.9.0.ppc64.xml | 512 ++++++++--------- .../qemucapabilitiesdata/caps_2.9.0.s390x.xml | 256 ++++----- .../caps_2.9.0.x86_64.xml | 128 ++--- .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 516 +++++++++--------- .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 272 ++++----- .../caps_3.0.0.x86_64.xml | 184 +++---- .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 516 +++++++++--------- .../caps_3.1.0.x86_64.xml | 196 +++---- .../caps_4.0.0.aarch64.xml | 148 ++--- .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 516 +++++++++--------- .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 284 +++++----- .../caps_4.0.0.x86_64.xml | 196 +++---- .../caps_4.1.0.x86_64.xml | 400 +++++++------- .../caps_4.2.0.aarch64.xml | 148 ++--- .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 516 +++++++++--------- .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 300 +++++----- .../caps_4.2.0.x86_64.xml | 400 +++++++------- 31 files changed, 4020 insertions(+), 4009 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index ccb337ee2f..665fee28eb 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3528,6 +3528,8 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, return -1; } =20 + cpu->type =3D virXMLPropString(nodes[i], "typename"); + node =3D ctxt->node; ctxt->node =3D nodes[i]; nblockers =3D virXPathNodeSet("./blocker", ctxt, &blockerNodes); @@ -3989,6 +3991,7 @@ virQEMUCapsFormatCPUModels(virQEMUCapsPtr qemuCaps, =20 virBufferAsprintf(buf, "name); + virBufferEscapeString(buf, " typename=3D'%s'", cpu->type); if (cpu->usable) { virBufferAsprintf(buf, " usable=3D'%s'", virDomainCapsCPUUsableTypeToString(cpu->usab= le)); diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 39c3122074..a1cdb19318 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -3574,6 +3574,7 @@ qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs) for (i =3D 0; i < defs->ncpus; i++) { g_strfreev(defs->cpus[i].blockers); g_free(defs->cpus[i].name); + g_free(defs->cpus[i].type); } =20 g_free(defs->cpus); @@ -3610,6 +3611,7 @@ qemuMonitorCPUDefsCopy(qemuMonitorCPUDefsPtr src) =20 cpuDst->usable =3D cpuSrc->usable; cpuDst->name =3D g_strdup(cpuSrc->name); + cpuDst->type =3D g_strdup(cpuSrc->type); cpuDst->blockers =3D g_strdupv(cpuSrc->blockers); } =20 diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index 0eed8b3f9e..824b580344 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1109,6 +1109,7 @@ typedef qemuMonitorCPUDefInfo *qemuMonitorCPUDefInfoP= tr; struct _qemuMonitorCPUDefInfo { virDomainCapsCPUUsable usable; char *name; + char *type; char **blockers; /* NULL-terminated string list */ }; =20 diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index 54963233e6..3f3bfc1720 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5621,6 +5621,11 @@ qemuMonitorJSONGetCPUDefinitions(qemuMonitorPtr mon, =20 cpu->name =3D g_strdup(tmp); =20 + if ((tmp =3D virJSONValueObjectGetString(child, "typename")) && + *tmp && + VIR_STRDUP(cpu->type, tmp) < 0) + return -1; + if (virJSONValueObjectHasKey(child, "unavailable-features")) { virJSONValuePtr blockers; size_t j; diff --git a/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml b/tests/qem= ucapabilitiesdata/caps_2.10.0.aarch64.xml index f0bf003528..ad4f5447ed 100644 --- a/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml @@ -144,69 +144,69 @@ 61700287 (v2.10.0) aarch64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ... -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960528; cv=none; d=zoho.com; s=zohoarc; b=od/OTO2F6TvjPhuexm+qs7sZemzbUlJpVVuuHr6kn5zjSW4gfJNfGlw0Dxprk5Isy2uI+HJbEcYPGV3cy8xKA26X7Fb4nvvcHZ/Benx1hoAT/CB0PTczuq6nHckNZJ3G8ZfYidkJ1XBjEBz66ynEPVNn7KWSu1Y2kgHRFrPklm4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960528; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YTDl3HikzvdoJN5ayzPPNxRFOjkknaufP3dw3GYMtII=; b=W7ewUyyj2Nq0l1UF5tfuz0YSKyFtZwMS6T5ueTZpOFuGZFv8k5LkcVwmPd8V/RcGKrYZ2G0IhOw+WkGeSZ9AmZWGsUx1WvbYucaIRIUafFWV8QucG1p1X5pE4fkdQjiIY6WJ2exzdSKg/ZO+Ouw5lvM3zMu8EEdxx2YTSHsgRnw= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960528735603.1362036855805; Tue, 5 Nov 2019 05:28:48 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-153-ezAUCXGGOO2m9AMRXyF2oQ-1; Tue, 05 Nov 2019 08:28:45 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id 868D9107ACFA; Tue, 5 Nov 2019 13:28:40 +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 5BBAD5D9C9; Tue, 5 Nov 2019 13:28:40 +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 0356518034FE; Tue, 5 Nov 2019 13:28:40 +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 xA5DRxBG003945 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id 8167127065; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 57F6B26FDF for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id B07D1105CDD; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960527; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=YTDl3HikzvdoJN5ayzPPNxRFOjkknaufP3dw3GYMtII=; b=Fhyy2tABV+uwKwSe8DOmQa3jVEZs3AGt53juzorIL6pGeMROhZmdGSiFV4GkGTWMaXf+V+ gPzAAVpM6Qe1v9Iv3t+9ZO+M2VvOq7rw+XDockwsjnrJwI1Z0JzEpqhwzoVQglwIKIAFZI 1eIp4K21RulE8XSkceiGG5KVUn5rSC0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:20 +0100 Message-Id: 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 v3 22/52] qemu: Drop unused virQEMUCapsGetDefaultMachine 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: , 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-MC-Unique: ezAUCXGGOO2m9AMRXyF2oQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - no change src/qemu/qemu_capabilities.c | 12 ------------ src/qemu/qemu_capabilities.h | 1 - 2 files changed, 13 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 665fee28eb..435e65daed 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2114,18 +2114,6 @@ const char *virQEMUCapsGetCanonicalMachine(virQEMUCa= psPtr qemuCaps, return name; } =20 -const char * -virQEMUCapsGetDefaultMachine(virQEMUCapsPtr qemuCaps) -{ - size_t i; - - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (qemuCaps->machineTypes[i].qemuDefault) - return qemuCaps->machineTypes[i].name; - } - - return NULL; -} =20 int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, const char *name) diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 923706c3bf..f43e56a9ca 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -602,7 +602,6 @@ bool virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuC= aps, virCPUMode mode); const char *virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuCaps, const char *name); -const char *virQEMUCapsGetDefaultMachine(virQEMUCapsPtr qemuCaps); int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, const char *name); bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960627; cv=none; d=zoho.com; s=zohoarc; b=NYYF2EMHvyeVJNbVQHfTt48tBPt4RIkonKhPprOgmzYxG81N2Dvm6DJlKCrn/8YHb9VczQSwUuysEtXWVCsyZOsYTJT/4lYPUMPaRREqiIeL9DqWFdemtr9GZUTtg+aMD2WHlj+Yp5UVoWPCRzrHs7N+Niu3OiuOspNJ8bsfV6U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960627; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=W0SFhASfsktC9bQBy2fH2PsReXxj7O1y3iE9u+hlObY=; b=ZdnqcfPWdkbv2Li9y81BNRLXzMSVt3XND9Hcgf7iI8rb2q6EPnrEDedZ6mL1YXaq5olrvpWOiJ5sEPsWA+9rdPwUWKcnTE4d1/7dUhZgZVYyQWg1HBrkhEO7qHFON+nqa2eQm/Ez/6ZQ8wAft+zFfbSdxnKg4/QYm7Lsnw386I8= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960626990291.82507643829695; Tue, 5 Nov 2019 05:30:26 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-415-GV0_2JDfMnieEos8qBktKw-1; Tue, 05 Nov 2019 08:29:06 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3D700DB31; Tue, 5 Nov 2019 13:28:58 +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 0BBCC5D729; Tue, 5 Nov 2019 13:28:58 +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 A97F01802221; Tue, 5 Nov 2019 13:28:57 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS1eY004034 for ; Tue, 5 Nov 2019 08:28:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 06E935C1B2; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 869F85C241 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id B5C2B105D11; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960626; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=W0SFhASfsktC9bQBy2fH2PsReXxj7O1y3iE9u+hlObY=; b=AVaITayuyFJht+Cjfmj2g+4zE+8OjOl79CYtQ1Xg/kxnal3ja4+73aScfsB7U3OzTm/5FP 2+ZxBDv5TcLwZ/aETTztiNKNWJ6iUamLKv1WiuGdWGXe47n4P4mlxZw6wRc+FEpGOQ271w CughVo/UaHm5vud57TkkX5ocPXhPi74= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:21 +0100 Message-Id: <0b19096ebc9343f238718893e6b4beb5f6135c81.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 23/52] qemu: Add virQEMUCaps{Load, Format}Accel 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: GV0_2JDfMnieEos8qBktKw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The new functions are designed to load and format capabilities which depend on the accelerator (host CPU expansion and CPU models). Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 40 +- .../caps_2.10.0.x86_64.xml | 216 ++++----- .../caps_2.11.0.x86_64.xml | 154 +++---- .../caps_2.12.0.x86_64.xml | 430 +++++++++--------- .../caps_2.9.0.x86_64.xml | 114 ++--- .../caps_3.0.0.x86_64.xml | 238 +++++----- .../caps_3.1.0.x86_64.xml | 366 +++++++-------- .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 68 +-- .../caps_4.0.0.x86_64.xml | 362 +++++++-------- .../caps_4.1.0.x86_64.xml | 398 ++++++++-------- .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 80 ++-- .../caps_4.2.0.x86_64.xml | 404 ++++++++-------- 12 files changed, 1444 insertions(+), 1426 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 435e65daed..54f2ecb7f4 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3555,6 +3555,21 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, } =20 =20 +static int +virQEMUCapsLoadAccel(virQEMUCapsPtr qemuCaps, + xmlXPathContextPtr ctxt, + virDomainVirtType type) +{ + if (virQEMUCapsLoadHostCPUModelInfo(qemuCaps, ctxt, type) < 0) + return -1; + + if (virQEMUCapsLoadCPUModels(qemuCaps, ctxt, type) < 0) + return -1; + + return 0; +} + + struct _virQEMUCapsCachePriv { char *libDir; uid_t runUid; @@ -3766,12 +3781,8 @@ virQEMUCapsLoadCache(virArch hostArch, } VIR_FREE(str); =20 - if (virQEMUCapsLoadHostCPUModelInfo(qemuCaps, ctxt, VIR_DOMAIN_VIRT_KV= M) < 0 || - virQEMUCapsLoadHostCPUModelInfo(qemuCaps, ctxt, VIR_DOMAIN_VIRT_QE= MU) < 0) - goto cleanup; - - if (virQEMUCapsLoadCPUModels(qemuCaps, ctxt, VIR_DOMAIN_VIRT_KVM) < 0 = || - virQEMUCapsLoadCPUModels(qemuCaps, ctxt, VIR_DOMAIN_VIRT_QEMU) < 0) + if (virQEMUCapsLoadAccel(qemuCaps, ctxt, VIR_DOMAIN_VIRT_KVM) < 0 || + virQEMUCapsLoadAccel(qemuCaps, ctxt, VIR_DOMAIN_VIRT_QEMU) < 0) goto cleanup; =20 if ((n =3D virXPathNodeSet("./machine", ctxt, &nodes)) < 0) { @@ -4003,6 +4014,16 @@ virQEMUCapsFormatCPUModels(virQEMUCapsPtr qemuCaps, } =20 =20 +static void +virQEMUCapsFormatAccel(virQEMUCapsPtr qemuCaps, + virBufferPtr buf, + virDomainVirtType type) +{ + virQEMUCapsFormatHostCPUModelInfo(qemuCaps, buf, type); + virQEMUCapsFormatCPUModels(qemuCaps, buf, type); +} + + static void virQEMUCapsFormatSEVInfo(virQEMUCapsPtr qemuCaps, virBufferPtr buf) { @@ -4065,11 +4086,8 @@ virQEMUCapsFormatCache(virQEMUCapsPtr qemuCaps) virBufferAsprintf(&buf, "%s\n", virArchToString(qemuCaps->arch)); =20 - virQEMUCapsFormatHostCPUModelInfo(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); - virQEMUCapsFormatHostCPUModelInfo(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU= ); - - virQEMUCapsFormatCPUModels(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); - virQEMUCapsFormatCPUModels(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); + virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); + virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); =20 for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { virBufferEscapeString(&buf, " + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -654,114 +762,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ... -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960522; cv=none; d=zoho.com; s=zohoarc; b=S/UMUTaW+deWzIugq7pfUAsr/y7F0tEkpkZOD1tpN0DPmtC4v4wd3CvcjmnJ/z2YrTrvsLPRYE6ZLKj+88VPpBKfCeCZiBBldm+1ybHP696sPP662S+MVbQZ+KvNps2d193LfHAxAx90NJ3TuhWPIXuiwZxOSKzTNNw9g9R+Yaw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960522; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=kp60a32zLNdQmTqGrwtv+t+iF7efvhVSkt+2vB8WXZE=; b=e8RU4ODt53/an8ZmTy5uZMmJ/0ONT3OBEqjUZjpuvzSQXy4+M41xxq/y9mGxPRnUZnW36YClGUD0sUo7l19pRiP1L24daFQ7dvg5KJAzNyYsF1dQg/1oSZo+SEYmeCDFneYiX/7/k1mTtiosMjJCtVW2C5aZmwE63tzCJE9qhEI= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960522713915.4434515063057; Tue, 5 Nov 2019 05:28:42 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-285-DJeU-G2KMp-QkwrTf1d8lA-1; Tue, 05 Nov 2019 08:28:38 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9FA97801E6B; Tue, 5 Nov 2019 13:28:32 +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 697A9600CC; Tue, 5 Nov 2019 13:28:32 +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 1A5F018034EE; Tue, 5 Nov 2019 13:28:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DRxh2003955 for ; Tue, 5 Nov 2019 08:27:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id AFA37600CC; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 60CB7600C4 for ; Tue, 5 Nov 2019 13:27:59 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id BA92C105D6D; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960521; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=kp60a32zLNdQmTqGrwtv+t+iF7efvhVSkt+2vB8WXZE=; b=RclhAboe3Y5dGog8IypqtD3hst+eN07bDSZNEb9qxYgU8XEqpCM8iPYg0qOT6OZYX2s7Ha dkPxv14s9GujiSNjfGxf2ggT+uWQDY+4Hluduibv6BXJv8nheFo7j0Dm0mpjyhujGdpAUx kjMOaEprAL3guhuR752t2X4qCx2oWKo= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:22 +0100 Message-Id: <46ce6a21a426c28bac950313a2c1a4fde2648ac6.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 24/52] qemu: Introduce virQEMUCapsAccel structure 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: DJeU-G2KMp-QkwrTf1d8lA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" This is container for capabilities data that depend on the accelerator. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 66 ++++++++++++++++++++---------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 54f2ecb7f4..c6a2f65239 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -576,6 +576,13 @@ struct _virQEMUCapsHostCPUData { virCPUDefPtr full; }; =20 +typedef struct _virQEMUCapsAccel virQEMUCapsAccel; +typedef virQEMUCapsAccel *virQEMUCapsAccelPtr; +struct _virQEMUCapsAccel { + virQEMUCapsHostCPUData hostCPU; + qemuMonitorCPUDefsPtr cpuModels; +}; + /* * Update the XML parser/formatter when adding more * information to this struct so that it gets cached @@ -607,8 +614,6 @@ struct _virQEMUCaps { virArch arch; =20 virHashTablePtr domCapsCache; - qemuMonitorCPUDefsPtr kvmCPUModels; - qemuMonitorCPUDefsPtr tcgCPUModels; =20 size_t nmachineTypes; struct virQEMUCapsMachineType *machineTypes; @@ -618,8 +623,9 @@ struct _virQEMUCaps { =20 virSEVCapability *sevCapabilities; =20 - virQEMUCapsHostCPUData kvmCPU; - virQEMUCapsHostCPUData tcgCPU; + /* Capabilities which may differ depending on the accelerator. */ + virQEMUCapsAccel kvm; + virQEMUCapsAccel tcg; }; =20 struct virQEMUCapsSearchData { @@ -1620,11 +1626,11 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qe= muCaps) =20 ret->arch =3D qemuCaps->arch; =20 - ret->kvmCPUModels =3D qemuMonitorCPUDefsCopy(qemuCaps->kvmCPUModels); - ret->tcgCPUModels =3D qemuMonitorCPUDefsCopy(qemuCaps->tcgCPUModels); + ret->kvm.cpuModels =3D qemuMonitorCPUDefsCopy(qemuCaps->kvm.cpuModels); + ret->tcg.cpuModels =3D qemuMonitorCPUDefsCopy(qemuCaps->tcg.cpuModels); =20 - if (virQEMUCapsHostCPUDataCopy(&ret->kvmCPU, &qemuCaps->kvmCPU) < 0 || - virQEMUCapsHostCPUDataCopy(&ret->tcgCPU, &qemuCaps->tcgCPU) < 0) + if (virQEMUCapsHostCPUDataCopy(&ret->kvm.hostCPU, &qemuCaps->kvm.hostC= PU) < 0 || + virQEMUCapsHostCPUDataCopy(&ret->tcg.hostCPU, &qemuCaps->tcg.hostC= PU) < 0) goto error; =20 if (VIR_ALLOC_N(ret->machineTypes, qemuCaps->nmachineTypes) < 0) @@ -1670,8 +1676,8 @@ void virQEMUCapsDispose(void *obj) VIR_FREE(qemuCaps->machineTypes); =20 virHashFree(qemuCaps->domCapsCache); - virObjectUnref(qemuCaps->kvmCPUModels); - virObjectUnref(qemuCaps->tcgCPUModels); + virObjectUnref(qemuCaps->kvm.cpuModels); + virObjectUnref(qemuCaps->tcg.cpuModels); =20 virBitmapFree(qemuCaps->flags); =20 @@ -1683,8 +1689,8 @@ void virQEMUCapsDispose(void *obj) =20 virSEVCapabilitiesFree(qemuCaps->sevCapabilities); =20 - virQEMUCapsHostCPUDataClear(&qemuCaps->kvmCPU); - virQEMUCapsHostCPUDataClear(&qemuCaps->tcgCPU); + virQEMUCapsHostCPUDataClear(&qemuCaps->kvm.hostCPU); + virQEMUCapsHostCPUDataClear(&qemuCaps->tcg.hostCPU); } =20 void @@ -1849,10 +1855,10 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCap= s, size_t start; qemuMonitorCPUDefsPtr defs =3D NULL; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM && qemuCaps->kvmCPUModels) - defs =3D qemuCaps->kvmCPUModels; - else if (type =3D=3D VIR_DOMAIN_VIRT_QEMU && qemuCaps->tcgCPUModels) - defs =3D qemuCaps->tcgCPUModels; + if (type =3D=3D VIR_DOMAIN_VIRT_KVM && qemuCaps->kvm.cpuModels) + defs =3D qemuCaps->kvm.cpuModels; + else if (type =3D=3D VIR_DOMAIN_VIRT_QEMU && qemuCaps->tcg.cpuModels) + defs =3D qemuCaps->tcg.cpuModels; =20 if (defs) { start =3D defs->ncpus; @@ -1866,9 +1872,9 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, return -1; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvmCPUModels =3D defs; + qemuCaps->kvm.cpuModels =3D defs; else - qemuCaps->tcgCPUModels =3D defs; + qemuCaps->tcg.cpuModels =3D defs; } =20 for (i =3D 0; i < count; i++) { @@ -1921,9 +1927,9 @@ virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, qemuMonitorCPUDefsPtr defs; =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - defs =3D qemuCaps->kvmCPUModels; + defs =3D qemuCaps->kvm.cpuModels; else - defs =3D qemuCaps->tcgCPUModels; + defs =3D qemuCaps->tcg.cpuModels; =20 if (!defs) return NULL; @@ -1937,9 +1943,9 @@ virQEMUCapsGetHostCPUData(virQEMUCapsPtr qemuCaps, virDomainVirtType type) { if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - return &qemuCaps->kvmCPU; + return &qemuCaps->kvm.hostCPU; else - return &qemuCaps->tcgCPU; + return &qemuCaps->tcg.hostCPU; } =20 =20 @@ -2001,9 +2007,9 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCaps, =20 case VIR_CPU_MODE_CUSTOM: if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - cpus =3D qemuCaps->kvmCPUModels; + cpus =3D qemuCaps->kvm.cpuModels; else - cpus =3D qemuCaps->tcgCPUModels; + cpus =3D qemuCaps->tcg.cpuModels; return cpus && cpus->ncpus > 0; =20 case VIR_CPU_MODE_LAST: @@ -2532,9 +2538,9 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemu= Caps, return -1; =20 if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) - qemuCaps->tcgCPUModels =3D defs; + qemuCaps->tcg.cpuModels =3D defs; else - qemuCaps->kvmCPUModels =3D defs; + qemuCaps->kvm.cpuModels =3D defs; =20 return 0; } @@ -3547,9 +3553,9 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, } =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvmCPUModels =3D g_steal_pointer(&defs); + qemuCaps->kvm.cpuModels =3D g_steal_pointer(&defs); else - qemuCaps->tcgCPUModels =3D g_steal_pointer(&defs); + qemuCaps->tcg.cpuModels =3D g_steal_pointer(&defs); =20 return 0; } @@ -3976,10 +3982,10 @@ virQEMUCapsFormatCPUModels(virQEMUCapsPtr qemuCaps, =20 if (type =3D=3D VIR_DOMAIN_VIRT_KVM) { typeStr =3D "kvm"; - defs =3D qemuCaps->kvmCPUModels; + defs =3D qemuCaps->kvm.cpuModels; } else { typeStr =3D "tcg"; - defs =3D qemuCaps->tcgCPUModels; + defs =3D qemuCaps->tcg.cpuModels; } =20 if (!defs) --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960580; cv=none; d=zoho.com; s=zohoarc; b=UaK7ZRYIxT8N+NzoM8WcKL9jndAOInfAN047bto7YvUPPOXbWSGihQL+c4ptn76TIhC5ixKRD20qp+EN+Q+QyFTLDpriTMiP43LeOQNWYMdQl6Wb4SmjIcPXwm4/J1IT8MzDEIKG5SOf7l+UiCbdEVASEzGYYRm68Uyou4wDoK4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960580; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=om1rMhMpf7x+HMY2Oal+UU+zcTQutQOOZidKLMFxNHA=; b=Lj1Al5ls55LgwI8hKjH7Bz6dqmbMnzYuniBBoLSo9t754zmnYr9VuPA2bjpED4FX0ZypICcM4DJqxaKPwWILtFqFK4epg9DLWsonC2EhpWvs0T16PDQMhqghJLXSwBSG8oIZHj1fH8bTAvy/PA5J+oWU7G2pviq3nrrp6t97coM= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960580930184.25824748953096; Tue, 5 Nov 2019 05:29:40 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-46-Cj6U4rkVONK_qssJFL36sA-1; Tue, 05 Nov 2019 08:29:38 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 00F1A1005513; Tue, 5 Nov 2019 13:29:33 +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 CB72F60FF9; Tue, 5 Nov 2019 13:29:32 +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 8C23718006D2; Tue, 5 Nov 2019 13:29:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS5EO004153 for ; Tue, 5 Nov 2019 08:28:05 -0500 Received: by smtp.corp.redhat.com (Postfix) id 0607060CD0; Tue, 5 Nov 2019 13:28:05 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D039160E1C for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id BF327105D73; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960579; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=om1rMhMpf7x+HMY2Oal+UU+zcTQutQOOZidKLMFxNHA=; b=gTsK5u4BpnF81/CIxQWAUA0I69GZLY88UHkIpy7QgyfvbNPH9OYzd/xXvPwLCgKN38BcEg nQSJaFYqKfqyI4wIH2dr0c9RF7Ra316BOK1J1xGuoMkxojGRYWfVhthF6BviWAopR3Z/hT JBd0bLxLGTfiSzyCY5rswb1+5drKu0c= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:23 +0100 Message-Id: <5c38ad2d2bfe1a23fbcfa863b9c7731f53456711.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 25/52] qemu: Introduce virQEMUCapsAccelCopy 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: Cj6U4rkVONK_qssJFL36sA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index c6a2f65239..92041190eb 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1600,6 +1600,19 @@ virQEMUCapsSEVInfoCopy(virSEVCapabilityPtr *dst, } =20 =20 +static int +virQEMUCapsAccelCopy(virQEMUCapsAccelPtr dst, + virQEMUCapsAccelPtr src) +{ + if (virQEMUCapsHostCPUDataCopy(&dst->hostCPU, &src->hostCPU) < 0) + return -1; + + dst->cpuModels =3D qemuMonitorCPUDefsCopy(src->cpuModels); + + return 0; +} + + virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qemuCaps) { virQEMUCapsPtr ret =3D virQEMUCapsNew(); @@ -1626,11 +1639,8 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qem= uCaps) =20 ret->arch =3D qemuCaps->arch; =20 - ret->kvm.cpuModels =3D qemuMonitorCPUDefsCopy(qemuCaps->kvm.cpuModels); - ret->tcg.cpuModels =3D qemuMonitorCPUDefsCopy(qemuCaps->tcg.cpuModels); - - if (virQEMUCapsHostCPUDataCopy(&ret->kvm.hostCPU, &qemuCaps->kvm.hostC= PU) < 0 || - virQEMUCapsHostCPUDataCopy(&ret->tcg.hostCPU, &qemuCaps->tcg.hostC= PU) < 0) + if (virQEMUCapsAccelCopy(&ret->kvm, &qemuCaps->kvm) < 0 || + virQEMUCapsAccelCopy(&ret->tcg, &qemuCaps->tcg) < 0) goto error; =20 if (VIR_ALLOC_N(ret->machineTypes, qemuCaps->nmachineTypes) < 0) --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960671; cv=none; d=zoho.com; s=zohoarc; b=CVOhj8myPAzepA57LkxxNQKfmlpEVAhAfFwwvKWPp9D5E6FlIQLYBrNCEygw6d4sab4QT2O9UfbWPEr4rksrMbDYL4HzfdTSt+2OrSwXjbulHycgfsBkc4XSNt9Nfdpfc7YnIo1zaWYoBiKGroM6+TWBLLelokaeQ2D6+C+rXMI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960671; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=7Jv0WLlwrrPkY2JuhvJr/yxIjFB0jTCGebQd9qD1ql4=; b=Mm90IZE7Nc2z49cQoWm9vPK8cZW3NRtqQRHDIZzPbxvYqgh+j0OTRSMfYRvI0eq/sgQqL624DKgGepUhyZQY9+Ni2KxLIejfWx4jBatRwDvKgm8vT2J2A1sJWeVCa/+YqGA80aR3V6yLQeqfyLvL6mSqbGdOFNCGlSCT78wFCjA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960671699965.4986527155995; Tue, 5 Nov 2019 05:31:11 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-286-9jRy8VW4N_icweI6KjLjJg-1; Tue, 05 Nov 2019 08:29:28 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 2D3D01005511; Tue, 5 Nov 2019 13:29:24 +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 EE15A61069; Tue, 5 Nov 2019 13:29:23 +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 997DF180203C; Tue, 5 Nov 2019 13:29:23 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS36Q004133 for ; Tue, 5 Nov 2019 08:28:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 904FD5D9C9; Tue, 5 Nov 2019 13:28:03 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6571F5DA2C for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id C57A3105D74; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960670; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=7Jv0WLlwrrPkY2JuhvJr/yxIjFB0jTCGebQd9qD1ql4=; b=TsrYxEG+mBMic8qg60nix87V1vLT+fxrbC2ewD4EOmWgm+qq4+NFQqeeLydk1ojaqQKF8O QVX12E08UPQLboG189FPwCu6sDcanYXoxreQABfcPsbMg3hJArZhdCupHPluMnye7m7nFw uIXKwU54W6ncHaoRYgcrJWtYnVKCcqI= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:24 +0100 Message-Id: <3c78525019f6b1d375870d3ebc11b96dab40a728.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 26/52] qemu: Introduce virQEMUCapsAccelClear 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: 9jRy8VW4N_icweI6KjLjJg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 92041190eb..a0b5047276 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1674,6 +1674,14 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qem= uCaps) } =20 =20 +static void +virQEMUCapsAccelClear(virQEMUCapsAccelPtr caps) +{ + virQEMUCapsHostCPUDataClear(&caps->hostCPU); + virObjectUnref(caps->cpuModels); +} + + void virQEMUCapsDispose(void *obj) { virQEMUCapsPtr qemuCaps =3D obj; @@ -1686,9 +1694,6 @@ void virQEMUCapsDispose(void *obj) VIR_FREE(qemuCaps->machineTypes); =20 virHashFree(qemuCaps->domCapsCache); - virObjectUnref(qemuCaps->kvm.cpuModels); - virObjectUnref(qemuCaps->tcg.cpuModels); - virBitmapFree(qemuCaps->flags); =20 VIR_FREE(qemuCaps->package); @@ -1699,8 +1704,8 @@ void virQEMUCapsDispose(void *obj) =20 virSEVCapabilitiesFree(qemuCaps->sevCapabilities); =20 - virQEMUCapsHostCPUDataClear(&qemuCaps->kvm.hostCPU); - virQEMUCapsHostCPUDataClear(&qemuCaps->tcg.hostCPU); + virQEMUCapsAccelClear(&qemuCaps->kvm); + virQEMUCapsAccelClear(&qemuCaps->tcg); } =20 void --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960539; cv=none; d=zoho.com; s=zohoarc; b=mhG01BC01Qm4Cx3nxZkYjf2Ytdaqd7UwWBfW7SJ1ExrX5VA2hvXPiQmNu8yS6W3SfR5dXZSgc5rL3NZHGzD6q3suSvyNm/Zj3D71cRCxJBn4Mc6uXeMCp08sMwmER5LYYtzXQ/tdooB5tfRi7tFFlp2OBJyq4jKNTv7zA4A2xtw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960539; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=6i/jN8XKmODRRmDMJk0aIHs2Nmaz/jbkgYFObVW23Ds=; b=Knrvq3c3U5mArWmHiot34z1J4IXReDtXG3Al80i2S2/m4ZRvN4TAZA9SZJcgpMfdXU0mTWqKltFHD24BE0JDl/87Fg5blrQcZ5aadEwNPxdm8QZL7YilWNFpckrvfX3+KJYKyq/cjZCPKQvGtQw9ovBDNQm8m4o6t1N5f3q3CSs= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960539079530.8172326404858; Tue, 5 Nov 2019 05:28:59 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-246-0HWNoftpNfifwdVuYQDShA-1; Tue, 05 Nov 2019 08:28:56 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7056A800C73; Tue, 5 Nov 2019 13:28:50 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 34DB561069; Tue, 5 Nov 2019 13:28:50 +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 D20B94E597; Tue, 5 Nov 2019 13:28:49 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0TA004007 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id C1BFD5C1B2; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 973355C553 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id CBC7E105D75; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960538; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=6i/jN8XKmODRRmDMJk0aIHs2Nmaz/jbkgYFObVW23Ds=; b=JOh8K4w4aFTt1jCYvwCG+WEUr3U3ESO3/8cndZ1wmfbvPpP7RccKF9wIQ6s64phPXGQieD NiqMUYNan/BfqegFx8Vua7+dHckVYOuLDC6OP5fDX67O/ScUc3ilXln5w9ngndNhW+fQ25 /vQejh7us/hyWMzDoDD5Rd7H2X0y0C0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:25 +0100 Message-Id: <13a402a9663668ad242fe9591d94a669f7305c40.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 27/52] qemu: Introduce and use virQEMUCapsGetAccel 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: 0HWNoftpNfifwdVuYQDShA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The function can be used to get the pointer to all data which depend on the accelerator. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a0b5047276..e4188f7833 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -719,6 +719,17 @@ virQEMUCapsFindTarget(virArch hostarch, } =20 =20 +static virQEMUCapsAccelPtr +virQEMUCapsGetAccel(virQEMUCapsPtr qemuCaps, + virDomainVirtType type) +{ + if (type =3D=3D VIR_DOMAIN_VIRT_KVM) + return &qemuCaps->kvm; + + return &qemuCaps->tcg; +} + + static void virQEMUCapsSetDefaultMachine(virQEMUCapsPtr qemuCaps, size_t defIdx) @@ -1868,12 +1879,8 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, { size_t i; size_t start; - qemuMonitorCPUDefsPtr defs =3D NULL; - - if (type =3D=3D VIR_DOMAIN_VIRT_KVM && qemuCaps->kvm.cpuModels) - defs =3D qemuCaps->kvm.cpuModels; - else if (type =3D=3D VIR_DOMAIN_VIRT_QEMU && qemuCaps->tcg.cpuModels) - defs =3D qemuCaps->tcg.cpuModels; + virQEMUCapsAccelPtr accel =3D virQEMUCapsGetAccel(qemuCaps, type); + qemuMonitorCPUDefsPtr defs =3D accel->cpuModels; =20 if (defs) { start =3D defs->ncpus; @@ -1886,10 +1893,7 @@ virQEMUCapsAddCPUDefinitions(virQEMUCapsPtr qemuCaps, if (!(defs =3D qemuMonitorCPUDefsNew(count))) return -1; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvm.cpuModels =3D defs; - else - qemuCaps->tcg.cpuModels =3D defs; + accel->cpuModels =3D defs; } =20 for (i =3D 0; i < count; i++) { @@ -1941,12 +1945,7 @@ virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, { qemuMonitorCPUDefsPtr defs; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - defs =3D qemuCaps->kvm.cpuModels; - else - defs =3D qemuCaps->tcg.cpuModels; - - if (!defs) + if (!(defs =3D virQEMUCapsGetAccel(qemuCaps, type)->cpuModels)) return NULL; =20 return virQEMUCapsCPUDefsToModels(defs, modelWhitelist, modelBlacklist= ); @@ -2021,10 +2020,7 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCap= s, VIR_QEMU_CAPS_HOST_CPU_REPORTED); =20 case VIR_CPU_MODE_CUSTOM: - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - cpus =3D qemuCaps->kvm.cpuModels; - else - cpus =3D qemuCaps->tcg.cpuModels; + cpus =3D virQEMUCapsGetAccel(qemuCaps, type)->cpuModels; return cpus && cpus->ncpus > 0; =20 case VIR_CPU_MODE_LAST: --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960723; cv=none; d=zoho.com; s=zohoarc; b=VihD75ydLJdiURtTQDNOrR67cLa50cnUqFwdsx8Roy+QE+JeKKKwMVicjaTr+izC4zh8u635vkECfZDw/Zd2SVf8bW7cVM6/WkBtw8l3VsitSOyMUqp4up74t+MAqMIi6oEog1mDbAfVon+VSAxW/DUSzpSL2eGA0pg7RSs9N9I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960723; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=17Y3de1ERLjZMLdq+9RF7gGbwnFU1Sxp+ghBzfqRC5o=; b=YmTmAbqApIprXUtbk4zNV4CkHaSEXz4EGrkdmy7CfDhpyEluybGVoxWqzIXylsa/8OXfKFhkdlQNnRqypI3nNo1Rv/TLZbnOeWnq5aQq2iPXuJUFKYkhRWpSY2ClTaiGuCsmos5YUmWgRTwzK67djLuFHxIbEIY1R+E6xrdjMXs= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960723345402.75538325363186; Tue, 5 Nov 2019 05:32:03 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-329-vJ1x6NMGMEKd44QLUrn_Lg-1; Tue, 05 Nov 2019 08:28:41 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5413D801E7D; Tue, 5 Nov 2019 13:28:36 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2986260FC4; Tue, 5 Nov 2019 13:28:36 +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 DA8414E579; Tue, 5 Nov 2019 13:28:35 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0bE004008 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id C422B5C553; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9A2B05C554 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id D1EB5105D76; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960722; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=17Y3de1ERLjZMLdq+9RF7gGbwnFU1Sxp+ghBzfqRC5o=; b=ZvcsTnr+ygj2MCxSD7d/nrd60u9YUSmG4n8+KWZUpV6RdxCtaoTx7LFxuVNNLmPUGTtA1R 7nrIx2rMj0kWUTz2khZye18JhyBFmfz/pw5eGL1oSQQofGFb7k6Ador1YIZuWSTuYlq/O9 zXCRU1a3qa2YKt78Db0yUWY3hrnQxt4= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:26 +0100 Message-Id: <619bbf239f24b5b31bb0d45dd3f86346699a3b48.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 28/52] qemu: Drop virQEMUCapsGetHostCPUData 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: vJ1x6NMGMEKd44QLUrn_Lg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" It was very similar to virQEMUCapsGetAccel. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index e4188f7833..62667cb882 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1952,24 +1952,14 @@ virQEMUCapsGetCPUModels(virQEMUCapsPtr qemuCaps, } =20 =20 -static virQEMUCapsHostCPUDataPtr -virQEMUCapsGetHostCPUData(virQEMUCapsPtr qemuCaps, - virDomainVirtType type) -{ - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - return &qemuCaps->kvm.hostCPU; - else - return &qemuCaps->tcg.hostCPU; -} - - virCPUDefPtr virQEMUCapsGetHostModel(virQEMUCapsPtr qemuCaps, virDomainVirtType type, virQEMUCapsHostCPUType cpuType) { - virQEMUCapsHostCPUDataPtr cpuData =3D virQEMUCapsGetHostCPUData(qemuCa= ps, type); + virQEMUCapsHostCPUDataPtr cpuData; =20 + cpuData =3D &virQEMUCapsGetAccel(qemuCaps, type)->hostCPU; switch (cpuType) { case VIR_QEMU_CAPS_HOST_CPU_REPORTED: return cpuData->reported; @@ -1994,8 +1984,9 @@ virQEMUCapsSetHostModel(virQEMUCapsPtr qemuCaps, virCPUDefPtr migratable, virCPUDefPtr full) { - virQEMUCapsHostCPUDataPtr cpuData =3D virQEMUCapsGetHostCPUData(qemuCa= ps, type); + virQEMUCapsHostCPUDataPtr cpuData; =20 + cpuData =3D &virQEMUCapsGetAccel(qemuCaps, type)->hostCPU; cpuData->reported =3D reported; cpuData->migratable =3D migratable; cpuData->full =3D full; @@ -3333,9 +3324,7 @@ qemuMonitorCPUModelInfoPtr virQEMUCapsGetCPUModelInfo(virQEMUCapsPtr qemuCaps, virDomainVirtType type) { - virQEMUCapsHostCPUDataPtr cpuData =3D virQEMUCapsGetHostCPUData(qemuCa= ps, type); - - return cpuData->info; + return virQEMUCapsGetAccel(qemuCaps, type)->hostCPU.info; } =20 =20 @@ -3344,9 +3333,7 @@ virQEMUCapsSetCPUModelInfo(virQEMUCapsPtr qemuCaps, virDomainVirtType type, qemuMonitorCPUModelInfoPtr modelInfo) { - virQEMUCapsHostCPUDataPtr cpuData =3D virQEMUCapsGetHostCPUData(qemuCa= ps, type); - - cpuData->info =3D modelInfo; + virQEMUCapsGetAccel(qemuCaps, type)->hostCPU.info =3D modelInfo; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960615; cv=none; d=zoho.com; s=zohoarc; b=DOn+ZptdSdQsUTH9CNake3ax5RvjA27pbp1WSquH/Nbn+CuxFlSw+RPNyGI+38TTECYMv4PYaRLoLCRGtEmfJg/R1jBs7PxhuNshvEXxGEjaHzP8iy0sVVfKRwqmPHQ6mJR8ww6lfDfU+YVWoEXFxn6cu5twIgIQaKkKyN6Wjro= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960615; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=6v4Ed3DUcClh2sNN1B6+nuxwz0vTukpagrdIOyuCJJ8=; b=KdVXsVav7zzVg0DhHpVQpWyJ11PvQe/upUI54+N/bfcUrIwP0QU89S8ZCcDp1TOes4ceiQ18fjykW+KKVdPZHuizZmYfpjPi6HcF3AhIkyJjaZiBK6Ul47lyovP36etiJVWsdZBGZ1Z4I2xelAubfOEHcSIY8JlRcqho5khLDGQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960615503447.3570043062431; Tue, 5 Nov 2019 05:30:15 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-242-TuqQAVotNpCIdgcLQDO_Ig-1; Tue, 05 Nov 2019 08:29:00 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id 28A601005513; Tue, 5 Nov 2019 13:28:54 +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 02E0A5DA7E; Tue, 5 Nov 2019 13:28:54 +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 B54AA1802219; Tue, 5 Nov 2019 13:28:53 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS0hr004009 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id C3A0F608B7; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 98D90608B6 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id D8257105D77; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960614; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=6v4Ed3DUcClh2sNN1B6+nuxwz0vTukpagrdIOyuCJJ8=; b=YdD9920A3a0bIGpdlrJiWN6gfW0aeZ6ZYJBgn/SULD4vz+sW6OT6vfDcpkigbajva4xgvg 5t1suReCdBdhw5hxsMNjo9EzbDATGw1/tCTy83NP16knICnYb2OqTqQrVJNEUwFsPyy2eo F4bUSOJ9bwsmjIaGZK87N8qol707J4c= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:27 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 29/52] qemu: Refactor virQEMUCapsLoadAccel 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: , 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-MC-Unique: TuqQAVotNpCIdgcLQDO_Ig-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" And make it use virQEMUCapsGetAccel once rather than repeating the same code in all functions called from virQEMUCapsLoadAccel. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 40 ++++++++++++++---------------------- 1 file changed, 15 insertions(+), 25 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 62667cb882..d19bcebdeb 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3338,26 +3338,22 @@ virQEMUCapsSetCPUModelInfo(virQEMUCapsPtr qemuCaps, =20 =20 static int -virQEMUCapsLoadHostCPUModelInfo(virQEMUCapsPtr qemuCaps, +virQEMUCapsLoadHostCPUModelInfo(virQEMUCapsAccelPtr caps, xmlXPathContextPtr ctxt, - virDomainVirtType virtType) + const char *typeStr) { char *str =3D NULL; xmlNodePtr hostCPUNode; xmlNodePtr *nodes =3D NULL; VIR_XPATH_NODE_AUTORESTORE(ctxt); qemuMonitorCPUModelInfoPtr hostCPU =3D NULL; + g_autofree char *xpath =3D g_strdup_printf("./hostCPU[@type=3D'%s']", = typeStr); int ret =3D -1; size_t i; int n; int val; =20 - if (virtType =3D=3D VIR_DOMAIN_VIRT_KVM) - hostCPUNode =3D virXPathNode("./hostCPU[@type=3D'kvm']", ctxt); - else - hostCPUNode =3D virXPathNode("./hostCPU[@type=3D'tcg']", ctxt); - - if (!hostCPUNode) { + if (!(hostCPUNode =3D virXPathNode(xpath, ctxt))) { ret =3D 0; goto cleanup; } @@ -3458,8 +3454,7 @@ virQEMUCapsLoadHostCPUModelInfo(virQEMUCapsPtr qemuCa= ps, } } =20 - virQEMUCapsSetCPUModelInfo(qemuCaps, virtType, hostCPU); - hostCPU =3D NULL; + caps->hostCPU.info =3D g_steal_pointer(&hostCPU); ret =3D 0; =20 cleanup: @@ -3471,22 +3466,18 @@ virQEMUCapsLoadHostCPUModelInfo(virQEMUCapsPtr qemu= Caps, =20 =20 static int -virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, +virQEMUCapsLoadCPUModels(virQEMUCapsAccelPtr caps, xmlXPathContextPtr ctxt, - virDomainVirtType type) + const char *typeStr) { g_autoptr(qemuMonitorCPUDefs) defs =3D NULL; g_autofree xmlNodePtr * nodes =3D NULL; + g_autofree char *xpath =3D g_strdup_printf("./cpu[@type=3D'%s']", type= Str); size_t i; int n; xmlNodePtr node; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - n =3D virXPathNodeSet("./cpu[@type=3D'kvm']", ctxt, &nodes); - else - n =3D virXPathNodeSet("./cpu[@type=3D'tcg']", ctxt, &nodes); - - if (n < 0) { + if ((n =3D virXPathNodeSet(xpath, ctxt, &nodes)) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to parse qemu capabilities cpus")); return -1; @@ -3550,11 +3541,7 @@ virQEMUCapsLoadCPUModels(virQEMUCapsPtr qemuCaps, } } =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) - qemuCaps->kvm.cpuModels =3D g_steal_pointer(&defs); - else - qemuCaps->tcg.cpuModels =3D g_steal_pointer(&defs); - + caps->cpuModels =3D g_steal_pointer(&defs); return 0; } =20 @@ -3564,10 +3551,13 @@ virQEMUCapsLoadAccel(virQEMUCapsPtr qemuCaps, xmlXPathContextPtr ctxt, virDomainVirtType type) { - if (virQEMUCapsLoadHostCPUModelInfo(qemuCaps, ctxt, type) < 0) + virQEMUCapsAccelPtr caps =3D virQEMUCapsGetAccel(qemuCaps, type); + const char *typeStr =3D type =3D=3D VIR_DOMAIN_VIRT_KVM ? "kvm" : "tcg= "; + + if (virQEMUCapsLoadHostCPUModelInfo(caps, ctxt, typeStr) < 0) return -1; =20 - if (virQEMUCapsLoadCPUModels(qemuCaps, ctxt, type) < 0) + if (virQEMUCapsLoadCPUModels(caps, ctxt, typeStr) < 0) return -1; =20 return 0; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960529; cv=none; d=zoho.com; s=zohoarc; b=ZIBkY8Lhic/mt5oHkrK29UypAbmdBMlrPKQY4wV6YaQDZumjLlqCUGWhQY5ZU9Lz6OxQSM3MEFWgfvStA8AgQ5IQcTk8lBP/OLRCPa9as2XlHUxnPsEh3D8QtlnakKJNZR2mjJIo+DRHVdeFXeHe/6ZXn4VHoDbVaJwPRfJGPGU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960529; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ZOhRUoEQZ7klnDP+xxRZWdyOTuuJ8riTsCkIRwq2K8A=; b=Yqb/edq+1aExi3M9Zr6CA3SsEWVwduQLdd65CM2pZE5tdLMWxtB+oxbXj1MV/t8BPqh3eurOYAiqg9UQWZcawD+W/qUE6mGwvKwKda0PP/x1lLdSOkgoaEKwkNKWLYnq5gR2wZn1RbY7v4UXg9UZLli/SKIs4+hQoBuCV+or6tQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960529152526.4411014461318; Tue, 5 Nov 2019 05:28:49 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-260-gP331j6mMvGRxtbWBgdzhA-1; Tue, 05 Nov 2019 08:28:45 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 39B75801E68; Tue, 5 Nov 2019 13:28:40 +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 EEDB960FC4; Tue, 5 Nov 2019 13:28:39 +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 ABD2F18034FC; Tue, 5 Nov 2019 13:28:39 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS04h004012 for ; Tue, 5 Nov 2019 08:28:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id CA6301001902; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9FBAE1001B00 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id DE58E105D78; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960528; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=ZOhRUoEQZ7klnDP+xxRZWdyOTuuJ8riTsCkIRwq2K8A=; b=TevXrAFN+uYo8300W4Rpr5mwKSM4wfLFHqeZLGeQQWeEh0yUW3mscEAz/Un1vjgby/wNJf We6RPnKmo4N/cgbHqmlxIhNUjXkodGUAZ5mT7amyMC7gfWN0sgGP/fsuUS+IUbCWb484ME 4zPdLi+MwoBhcsmSXHTv6x3A+O9g7g0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:28 +0100 Message-Id: <5eaf2adc607421392c95af1af4bdf082b15ff7f9.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 30/52] qemu: Refactor virQEMUCapsFormatAccel 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: gP331j6mMvGRxtbWBgdzhA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" And make it use virQEMUCapsGetAccel once rather than repeating the same code in all functions called from virQEMUCapsFormatAccel. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index d19bcebdeb..2bd0297364 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3905,12 +3905,11 @@ virQEMUCapsLoadCache(virArch hostArch, =20 =20 static void -virQEMUCapsFormatHostCPUModelInfo(virQEMUCapsPtr qemuCaps, +virQEMUCapsFormatHostCPUModelInfo(virQEMUCapsAccelPtr caps, virBufferPtr buf, - virDomainVirtType type) + const char *typeStr) { - qemuMonitorCPUModelInfoPtr model =3D virQEMUCapsGetCPUModelInfo(qemuCa= ps, type); - const char *typeStr =3D type =3D=3D VIR_DOMAIN_VIRT_KVM ? "kvm" : "tcg= "; + qemuMonitorCPUModelInfoPtr model =3D caps->hostCPU.info; size_t i; =20 if (!model) @@ -3960,22 +3959,13 @@ virQEMUCapsFormatHostCPUModelInfo(virQEMUCapsPtr qe= muCaps, =20 =20 static void -virQEMUCapsFormatCPUModels(virQEMUCapsPtr qemuCaps, +virQEMUCapsFormatCPUModels(virQEMUCapsAccelPtr caps, virBufferPtr buf, - virDomainVirtType type) + const char *typeStr) { - qemuMonitorCPUDefsPtr defs; - const char *typeStr; + qemuMonitorCPUDefsPtr defs =3D caps->cpuModels; size_t i; =20 - if (type =3D=3D VIR_DOMAIN_VIRT_KVM) { - typeStr =3D "kvm"; - defs =3D qemuCaps->kvm.cpuModels; - } else { - typeStr =3D "tcg"; - defs =3D qemuCaps->tcg.cpuModels; - } - if (!defs) return; =20 @@ -4013,8 +4003,11 @@ virQEMUCapsFormatAccel(virQEMUCapsPtr qemuCaps, virBufferPtr buf, virDomainVirtType type) { - virQEMUCapsFormatHostCPUModelInfo(qemuCaps, buf, type); - virQEMUCapsFormatCPUModels(qemuCaps, buf, type); + virQEMUCapsAccelPtr caps =3D virQEMUCapsGetAccel(qemuCaps, type); + const char *typeStr =3D type =3D=3D VIR_DOMAIN_VIRT_KVM ? "kvm" : "tcg= "; + + virQEMUCapsFormatHostCPUModelInfo(caps, buf, typeStr); + virQEMUCapsFormatCPUModels(caps, buf, typeStr); } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960531; cv=none; d=zoho.com; s=zohoarc; b=PtRHbzH56Dh4+cUv7IOG6kqE2+2fzf3Oocdhej2BtAvMTO76zlfXMJgIoy3yYOkJ0A64aZIeGhXReD/So0UmluOaYNTchtS1k71UZDctvf6tdReDht2DKj5cO0rF58U3epHIxNYNjxS6YnurmgTak/GOClYaRP9d0L7ebUy3yxE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960531; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=4x6BXQ1y1/Fvp03igaM4ZkanjCfzSKlj9o6u5/f6erc=; b=KTksIgiUj/L8H5w92G3T/xpaKgvjkRkbto2sYw2SkJCYl7igT2jJolfCapjJg9jSzYsweJIXdVIJR8KE4opCkwUVR277ELGHxTIK1qxHeVT0YX6t4xQsGOFHHDqgfTBEBfWk2y+tl40r7yzEJxb7Rk5TefLp+lHazbIrWAcP/Cc= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960531974321.8678926094517; Tue, 5 Nov 2019 05:28:51 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-158-f1M8M1ngNDiIjZlTNRAqIQ-1; Tue, 05 Nov 2019 08:28:49 -0500 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 00D0A1005502; Tue, 5 Nov 2019 13:28:44 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C9A712706E; Tue, 5 Nov 2019 13:28:43 +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 857B64E567; Tue, 5 Nov 2019 13:28:43 +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 xA5DS198004035 for ; Tue, 5 Nov 2019 08:28:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 0775827064; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id CD7071A8D8 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id E4A65105D79; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960531; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=4x6BXQ1y1/Fvp03igaM4ZkanjCfzSKlj9o6u5/f6erc=; b=bl60MXUXMS/1N9wO6fZUDG3VhrLm4TdLi04WErDRHR/nWIJaH1Gq5wm3t23CT8wUFAPC2e O6hSDhg5uMxY7M0RvM6Uty+AzZoBZecKqYrmA2OMYu1KYRCUqDhO2cvIbMm6MRb5rrsl6r aCre4e/yV2n+PqnpBHeEeoW/OJwSW7M= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:29 +0100 Message-Id: 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 v3 31/52] qemu: Introduce virQEMUCapsProbeCPUDefinitionsTest 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-MC-Unique: f1M8M1ngNDiIjZlTNRAqIQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" It is a tiny wrapper around virQEMUCapsProbeQMPCPUDefinitions which will soon get private parameters and thus it cannot be exposed outside qemu_capabilities. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new ptach src/qemu/qemu_capabilities.c | 10 +++++++++- src/qemu/qemu_capspriv.h | 5 ++--- tests/cputest.c | 5 ++--- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 2bd0297364..2dca1b353b 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2526,7 +2526,7 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, } =20 =20 -int +static int virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemuCaps, qemuMonitorPtr mon, bool tcg) @@ -2548,6 +2548,14 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qem= uCaps, } =20 =20 +int +virQEMUCapsProbeCPUDefinitionsTest(virQEMUCapsPtr qemuCaps, + qemuMonitorPtr mon) +{ + return virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, mon, false); +} + + static int virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps, qemuMonitorPtr mon, diff --git a/src/qemu/qemu_capspriv.h b/src/qemu/qemu_capspriv.h index e8fe48d8f0..9fc3f43f32 100644 --- a/src/qemu/qemu_capspriv.h +++ b/src/qemu/qemu_capspriv.h @@ -95,9 +95,8 @@ virQEMUCapsSetSEVCapabilities(virQEMUCapsPtr qemuCaps, virSEVCapability *capabilities); =20 int -virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemuCaps, - qemuMonitorPtr mon, - bool tcg); +virQEMUCapsProbeCPUDefinitionsTest(virQEMUCapsPtr qemuCaps, + qemuMonitorPtr mon); =20 void virQEMUCapsSetMicrocodeVersion(virQEMUCapsPtr qemuCaps, diff --git a/tests/cputest.c b/tests/cputest.c index ef2d4e28df..f3d23ebd36 100644 --- a/tests/cputest.c +++ b/tests/cputest.c @@ -513,9 +513,8 @@ cpuTestMakeQEMUCaps(const struct data *data) virQEMUCapsSetCPUModelInfo(qemuCaps, VIR_DOMAIN_VIRT_KVM, model); model =3D NULL; =20 - if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, - qemuMonitorTestGetMonitor(testMo= n), - false) < 0) + if (virQEMUCapsProbeCPUDefinitionsTest(qemuCaps, + qemuMonitorTestGetMonitor(testM= on)) < 0) goto error; =20 cleanup: --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960548; cv=none; d=zoho.com; s=zohoarc; b=c+LIRgqIuoOrA6RSVI3G8suwgtVCGjhjSRFeGurFM6YtbrgxX2yEyaKMN8njPu8z0jAL+LLO25Coq9/v5LHc8N5ql8JUuClEMq80vdhPXea0E2cpkTxGi3goIs3YhgP6L68zOGy51iuya8ZH+O1vDN+Y3a/8HtpodcMC8qocfsk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960548; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=9LxpGyoYNJOJPq2oH7QFe6jiGrRkHZqsBJm8uoQa+qA=; b=a8xyJQKWImzDnk+/VVIaj/I0iXjIioMKWPf7iwammJChyyqWd6bvh9IOS0Xc6GtdtuRazHCD26kA1G9tl1rzWSYma89qSSYUYjHnfKNdCp2h3VPHfNXOF/TP83XyWjB03A3byTlzOyGldn+3mQj+3BXpnmV0WS44wsz7OPa7Kew= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960548387247.12755186909385; Tue, 5 Nov 2019 05:29:08 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-135-AxNOmVagOLq29E7xKumtbA-1; Tue, 05 Nov 2019 08:29:05 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 7AAA3107ACC6; Tue, 5 Nov 2019 13:28:59 +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 44EB160C88; Tue, 5 Nov 2019 13:28:59 +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 E7F441802223; Tue, 5 Nov 2019 13:28:58 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS155004049 for ; Tue, 5 Nov 2019 08:28:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 20A4A5D726; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C57405D728 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id EADCD105D7A; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960547; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=9LxpGyoYNJOJPq2oH7QFe6jiGrRkHZqsBJm8uoQa+qA=; b=GDlbHgG/UlK15LzI/N4iroOaJmztrL9S1N2qLmTt3OEieWUJGJgaV/WV2h00avcUWc9kiz ZyL5KbuzUn0zX1Jj2UyHgIc72NqN1YZDLOwdrGk2rw0UIVUYZtJ1Qd1N23J1xmX4eXLZJ3 JyagQvfQ0Z0MfEYL1n3sNh6FD4zRvfg= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:30 +0100 Message-Id: <1991e478772aa77ca8bb329db4b48119b642ad39.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 32/52] qemu: Refactor probing of accelerator dependent data 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: AxNOmVagOLq29E7xKumtbA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" To avoid duplicating code which selects the right virQEMUCapsAccel data to be filled during probing. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 51 ++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 28 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 2dca1b353b..c66eef3e94 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2528,22 +2528,15 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, =20 static int virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemuCaps, - qemuMonitorPtr mon, - bool tcg) + virQEMUCapsAccelPtr accel, + qemuMonitorPtr mon) { - qemuMonitorCPUDefsPtr defs =3D NULL; - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS)) return 0; =20 - if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &defs) < 0) + if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &accel->cpuMod= els) < 0) return -1; =20 - if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) - qemuCaps->tcg.cpuModels =3D defs; - else - qemuCaps->kvm.cpuModels =3D defs; - return 0; } =20 @@ -2552,36 +2545,28 @@ int virQEMUCapsProbeCPUDefinitionsTest(virQEMUCapsPtr qemuCaps, qemuMonitorPtr mon) { - return virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, mon, false); + return virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, &qemuCaps->kvm, mon= ); } =20 =20 static int virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps, + virQEMUCapsAccelPtr accel, qemuMonitorPtr mon, - bool tcg) + virDomainVirtType virtType) { + const char *model =3D virtType =3D=3D VIR_DOMAIN_VIRT_KVM ? "host" : "= max"; qemuMonitorCPUModelInfoPtr modelInfo =3D NULL; qemuMonitorCPUModelInfoPtr nonMigratable =3D NULL; virHashTablePtr hash =3D NULL; - const char *model; virCPUDefPtr cpu; qemuMonitorCPUModelExpansionType type; - virDomainVirtType virtType; bool fail_no_props =3D true; int ret =3D -1; =20 if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION)) return 0; =20 - if (tcg || !virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) { - virtType =3D VIR_DOMAIN_VIRT_QEMU; - model =3D "max"; - } else { - virtType =3D VIR_DOMAIN_VIRT_KVM; - model =3D "host"; - } - if (VIR_ALLOC(cpu) < 0) goto cleanup; =20 @@ -2646,8 +2631,7 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps, modelInfo->migratability =3D true; } =20 - virQEMUCapsSetCPUModelInfo(qemuCaps, virtType, modelInfo); - modelInfo =3D NULL; + accel->hostCPU.info =3D g_steal_pointer(&modelInfo); ret =3D 0; =20 cleanup: @@ -4563,6 +4547,8 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, { int major, minor, micro; g_autofree char *package =3D NULL; + virQEMUCapsAccelPtr accel; + virDomainVirtType type; =20 /* @mon is supposed to be locked by callee */ =20 @@ -4600,6 +4586,13 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, if (virQEMUCapsProbeQMPKVMState(qemuCaps, mon) < 0) return -1; =20 + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) + type =3D VIR_DOMAIN_VIRT_KVM; + else + type =3D VIR_DOMAIN_VIRT_QEMU; + + accel =3D virQEMUCapsGetAccel(qemuCaps, type); + if (virQEMUCapsProbeQMPEvents(qemuCaps, mon) < 0) return -1; if (virQEMUCapsProbeQMPDevices(qemuCaps, mon) < 0) @@ -4608,7 +4601,7 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, return -1; if (virQEMUCapsProbeQMPMachineProps(qemuCaps, mon) < 0) return -1; - if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, mon, false) < 0) + if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, accel, mon) < 0) return -1; if (virQEMUCapsProbeQMPTPM(qemuCaps, mon) < 0) return -1; @@ -4628,7 +4621,7 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, /* The following probes rely on other previously probed capabilities. * No capabilities bits should be set below this point. */ =20 - if (virQEMUCapsProbeQMPHostCPU(qemuCaps, mon, false) < 0) + if (virQEMUCapsProbeQMPHostCPU(qemuCaps, accel, mon, type) < 0) return -1; =20 return 0; @@ -4639,10 +4632,12 @@ int virQEMUCapsInitQMPMonitorTCG(virQEMUCapsPtr qemuCaps, qemuMonitorPtr mon) { - if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, mon, true) < 0) + virQEMUCapsAccelPtr accel =3D virQEMUCapsGetAccel(qemuCaps, VIR_DOMAIN= _VIRT_QEMU); + + if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, accel, mon) < 0) return -1; =20 - if (virQEMUCapsProbeQMPHostCPU(qemuCaps, mon, true) < 0) + if (virQEMUCapsProbeQMPHostCPU(qemuCaps, accel, mon, VIR_DOMAIN_VIRT_Q= EMU) < 0) return -1; =20 return 0; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960606; cv=none; d=zoho.com; s=zohoarc; b=Yg9uZoszSWfWne1TcU2I0zBIqDIBss+e2R0OsHJonFiNhk4xshCjefSYVmcPBYI1YHkyuc+mwk6ufPXBoF18XXWKCLk6BeN2bARy271ILXtDbRO1mLQ4UCgM2mM50bTL5+/uoay6h7XaAuxNj9t7uVFDWnb1lAvOR+AwmKKPKEc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960606; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=g9rStb1QoeimPV3oqmwOgxQj0lEmTlrwrb2BusSJogQ=; b=HpiZxZ1GztZQzAdfeoAOrhK7HwdX5XcbBhhspPCF+Kc5qGoRxHLdQytH4x0QuSVkNw4AKoHWV7EoiV1KBLwRUnSh7rmQqdv8IGChro+sDXb+kqoBgTESaECE2S68SITK6dVL5s6CKRdoIJm3htLxyR28mYk2aYEkkg0KluwKOKg= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960606317422.87646102813926; Tue, 5 Nov 2019 05:30:06 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-36-AdQShkJ1NGKX-XHm2pf6og-1; Tue, 05 Nov 2019 08:29:36 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AEF7ADB24; Tue, 5 Nov 2019 13:29:31 +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 860B8600F6; Tue, 5 Nov 2019 13:29:31 +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 3A8F9180085D; Tue, 5 Nov 2019 13:29:31 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS6qv004166 for ; Tue, 5 Nov 2019 08:28:06 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3B2FB5D9C9; Tue, 5 Nov 2019 13:28:06 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E00A25D9CD for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id F120B105D7B; Tue, 5 Nov 2019 14:27:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960605; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=g9rStb1QoeimPV3oqmwOgxQj0lEmTlrwrb2BusSJogQ=; b=ZVKwIXDHVWWZO5aGs4Wd1H4WWA1bk6cAhocbtVZKZpW1wPnTQzqC/oD9CWfFLUERAdRvGd ye1yhu8uqhHITF82NZKdBU5lBspk+tIg5xaa0hI9jxvukjxybBJL14lLs9Pbwk7Yb/ek0W LdkfOrlPtYvNxZ8mnFPR8gkOLXmUS/k= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:31 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 33/52] qemu: Make virQEMUCapsGetMachineTypesCaps static 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: AdQShkJ1NGKX-XHm2pf6og-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 150 ++++++++++++++++++----------------- src/qemu/qemu_capabilities.h | 3 - 2 files changed, 76 insertions(+), 77 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index c66eef3e94..b9307730f1 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -831,6 +831,82 @@ virQEMUCapsInitGuest(virCapsPtr caps, return ret; } =20 + +static int +virQEMUCapsGetMachineTypesCaps(virQEMUCapsPtr qemuCaps, + size_t *nmachines, + virCapsGuestMachinePtr **machines) +{ + size_t i; + + *machines =3D NULL; + *nmachines =3D qemuCaps->nmachineTypes; + + if (*nmachines && + VIR_ALLOC_N(*machines, qemuCaps->nmachineTypes) < 0) + goto error; + + for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { + virCapsGuestMachinePtr mach; + if (VIR_ALLOC(mach) < 0) + goto error; + (*machines)[i] =3D mach; + if (qemuCaps->machineTypes[i].alias) { + mach->name =3D g_strdup(qemuCaps->machineTypes[i].alias); + mach->canonical =3D g_strdup(qemuCaps->machineTypes[i].name); + } else { + mach->name =3D g_strdup(qemuCaps->machineTypes[i].name); + } + mach->maxCpus =3D qemuCaps->machineTypes[i].maxCpus; + } + + /* Make sure all canonical machine types also have their own entry so = that + * /capabilities/guest/arch[@name=3D'...']/machine/text() XPath select= s all + * supported machine types. + */ + i =3D 0; + while (i < *nmachines) { + size_t j; + bool found =3D false; + virCapsGuestMachinePtr machine =3D (*machines)[i]; + + if (!machine->canonical) { + i++; + continue; + } + + for (j =3D 0; j < *nmachines; j++) { + if (STREQ(machine->canonical, (*machines)[j]->name)) { + found =3D true; + break; + } + } + + if (!found) { + virCapsGuestMachinePtr mach; + if (VIR_ALLOC(mach) < 0) + goto error; + if (VIR_INSERT_ELEMENT_COPY(*machines, i, *nmachines, mach) < = 0) { + VIR_FREE(mach); + goto error; + } + mach->name =3D g_strdup(machine->canonical); + mach->maxCpus =3D machine->maxCpus; + i++; + } + i++; + } + + return 0; + + error: + virCapabilitiesFreeMachines(*machines, *nmachines); + *nmachines =3D 0; + *machines =3D NULL; + return -1; +} + + int virQEMUCapsInitGuestFromBinary(virCapsPtr caps, const char *binary, @@ -2022,80 +2098,6 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCap= s, } =20 =20 -int virQEMUCapsGetMachineTypesCaps(virQEMUCapsPtr qemuCaps, - size_t *nmachines, - virCapsGuestMachinePtr **machines) -{ - size_t i; - - *machines =3D NULL; - *nmachines =3D qemuCaps->nmachineTypes; - - if (*nmachines && - VIR_ALLOC_N(*machines, qemuCaps->nmachineTypes) < 0) - goto error; - - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - virCapsGuestMachinePtr mach; - if (VIR_ALLOC(mach) < 0) - goto error; - (*machines)[i] =3D mach; - if (qemuCaps->machineTypes[i].alias) { - mach->name =3D g_strdup(qemuCaps->machineTypes[i].alias); - mach->canonical =3D g_strdup(qemuCaps->machineTypes[i].name); - } else { - mach->name =3D g_strdup(qemuCaps->machineTypes[i].name); - } - mach->maxCpus =3D qemuCaps->machineTypes[i].maxCpus; - } - - /* Make sure all canonical machine types also have their own entry so = that - * /capabilities/guest/arch[@name=3D'...']/machine/text() XPath select= s all - * supported machine types. - */ - i =3D 0; - while (i < *nmachines) { - size_t j; - bool found =3D false; - virCapsGuestMachinePtr machine =3D (*machines)[i]; - - if (!machine->canonical) { - i++; - continue; - } - - for (j =3D 0; j < *nmachines; j++) { - if (STREQ(machine->canonical, (*machines)[j]->name)) { - found =3D true; - break; - } - } - - if (!found) { - virCapsGuestMachinePtr mach; - if (VIR_ALLOC(mach) < 0) - goto error; - if (VIR_INSERT_ELEMENT_COPY(*machines, i, *nmachines, mach) < = 0) { - VIR_FREE(mach); - goto error; - } - mach->name =3D g_strdup(machine->canonical); - mach->maxCpus =3D machine->maxCpus; - i++; - } - i++; - } - - return 0; - - error: - virCapabilitiesFreeMachines(*machines, *nmachines); - *nmachines =3D 0; - *machines =3D NULL; - return -1; -} - - /** * virQEMUCapsGetCanonicalMachine: * @qemuCaps: qemu capabilities object diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index f43e56a9ca..ee779d90ed 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -606,9 +606,6 @@ int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCap= s, const char *name); bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, const char *name); -int virQEMUCapsGetMachineTypesCaps(virQEMUCapsPtr qemuCaps, - size_t *nmachines, - virCapsGuestMachinePtr **machines); =20 void virQEMUCapsFilterByMachineType(virQEMUCapsPtr qemuCaps, const char *machineType); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960546; cv=none; d=zoho.com; s=zohoarc; b=ZgtK98UC6Ib0hr25uuXHeoa7CC0WQb0CNzi7XbLkxYs/C9zJG7fStaOmk473IBZgMivTlw5bJp86iAfwwJbP5Yb/BOGCc8MSg2dYYglDcBmTJqDykcx8v3SNmJcmrJL3fJAItKK5jaAVYFANAb0eL4rPIOBlX/GH1YLUBtEDBNs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960546; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SB675NbSNM+uTlQyDxwvVL90EXUYZ6AKeUt8vpIcJps=; b=ZFXzs4kL7SPffAtq/IcgWZprwfIt4Gm7H5GZUBPd6cnUH99GMKu2hYv0nzv+lTkjUJhRl9i38q0pdZo2kl30+ZZUwrDAuWq2JNUFEOrPfMetI0EH0qDZDN3lB7HPn8og4Be3DUiSkMPLCp239BkQIrwIS4ySe1KJyUFaMR68mH0= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960546015870.8941695340474; Tue, 5 Nov 2019 05:29:06 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-80-oA8y_hbGMQaddF58V042Wg-1; Tue, 05 Nov 2019 08:29:00 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 2E25FDB2F; Tue, 5 Nov 2019 13:28:55 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0573D5D726; Tue, 5 Nov 2019 13:28:55 +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 BC3D54E59D; Tue, 5 Nov 2019 13:28:54 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS1HM004047 for ; Tue, 5 Nov 2019 08:28:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 18569608B8; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E29BA608B6 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 02E6B105D7C; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960543; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=SB675NbSNM+uTlQyDxwvVL90EXUYZ6AKeUt8vpIcJps=; b=ZOASgMzE4APOf8Gp5Htzv1nn9QUUlTYs3DdypoN9+LnaHvVHah10lDkIT+PZoZRvINDBBk YqmsJdvf+5LWy9K4oaLmcfxOHmef1u/xC+FlLJHqE14+4gidr1h8BLFywJMIocgHAMAZrg Cp1M1NCgoIIQspvtaUcfHNDMV1lCVUI= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:32 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 34/52] qemu: Make virQEMUCapsIsMachineSupported static 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: oA8y_hbGMQaddF58V042Wg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 28 ++++++++++++++-------------- src/qemu/qemu_capabilities.h | 3 --- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index b9307730f1..0f3c061003 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2429,6 +2429,20 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuC= aps, } =20 =20 +static bool +virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, + const char *canonical_machine) +{ + size_t i; + + for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { + if (STREQ(canonical_machine, qemuCaps->machineTypes[i].name)) + return true; + } + return false; +} + + static int virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps, qemuMonitorPtr mon) @@ -5146,20 +5160,6 @@ virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, } =20 =20 -bool -virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, - const char *canonical_machine) -{ - size_t i; - - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (STREQ(canonical_machine, qemuCaps->machineTypes[i].name)) - return true; - } - return false; -} - - /* * The preferred machine to use if none is listed explicitly * Note that this may differ from QEMU's own default machine diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index ee779d90ed..c0e1ce41e3 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -642,9 +642,6 @@ bool virQEMUCapsSupportsGICVersion(virQEMUCapsPtr qemuC= aps, virDomainVirtType virtType, virGICVersion version); =20 -bool virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, - const char *canonical_machine); - const char *virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps); =20 int virQEMUCapsInitGuestFromBinary(virCapsPtr caps, --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960551; cv=none; d=zoho.com; s=zohoarc; b=ST0SpMR6ob5d2Z6OfWssP83ksPsVf8QPG6r1JHdVvC0w1/5t6x+T7n7lzO1cCo5fU27c9GblS4CCyqBiDcT5NtGx5mnjmhtF0IjAmKA05hUdi7OBzPOU7Lwd/TuQ6qpItHFEYzET0ZIpmZPXUQbwWm8tbP3S9Fpx8OimxFla2aI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960551; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mhyeTyTQ6jVX8WMn4A8G7iqsUcE79+YYzBOav82SeaY=; b=GfJRyvLwkPRQkI1ZycaextYswUDSYDhHotuvy6mM1PO762SxENPouotpgLLZ3jTHv/gnkj8tjb1gj2qxY4WasNANzoHkl1uZSV1MeZZTFYAjET9/luR8AE5JSBTLIzzGSJu+cNvZR7O0LzXUIgBmcNII81ysKTTBUq1pKDpdKwM= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960551006540.2151615537638; Tue, 5 Nov 2019 05:29:11 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-210-yIbSRW9wNvGGnOYyhc8DqA-1; Tue, 05 Nov 2019 08:29:08 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 838D8100551A; Tue, 5 Nov 2019 13:29:02 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 47E4D60C88; Tue, 5 Nov 2019 13:29:02 +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 E94E24E9F6; Tue, 5 Nov 2019 13:29:01 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS13X004059 for ; Tue, 5 Nov 2019 08:28:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 47483608B6; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id EC437608B7 for ; Tue, 5 Nov 2019 13:28:00 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 086AE105D7D; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960550; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=mhyeTyTQ6jVX8WMn4A8G7iqsUcE79+YYzBOav82SeaY=; b=asTh2eh7uswwq0fnr66/S/OKzapE8kFFW4BDKod6jeflRI+VM56BwInkyf39P/zGJGrWNK kifcMn4jplaMXSFgvdqLHVNexAX9aGoR1In6KaZCjp6A7rYHVOTBlSs1iKCSpzEOYCSwM3 Dvb5FyRhj7r9M5ygex4Z1Pyd+0TJ4Ug= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:33 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 35/52] qemu: Refactor virQEMUCapsLoadCache a bit 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: yIbSRW9wNvGGnOYyhc8DqA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" All the code for loading machine type data was moved to a standalone virQEMUCapsLoadMachines function. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 93 +++++++++++++++++++++--------------- 1 file changed, 55 insertions(+), 38 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 0f3c061003..4c0cba6a62 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3554,6 +3554,60 @@ virQEMUCapsLoadCPUModels(virQEMUCapsAccelPtr caps, } =20 =20 +static int +virQEMUCapsLoadMachines(virQEMUCapsPtr qemuCaps, + xmlXPathContextPtr ctxt) +{ + g_autofree xmlNodePtr *nodes =3D NULL; + char *str =3D NULL; + size_t i; + int n; + + if ((n =3D virXPathNodeSet("./machine", ctxt, &nodes)) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("failed to parse qemu capabilities machines")); + return -1; + } + + if (n =3D=3D 0) + return 0; + + qemuCaps->nmachineTypes =3D n; + if (VIR_ALLOC_N(qemuCaps->machineTypes, qemuCaps->nmachineTypes) < 0) + return -1; + + for (i =3D 0; i < n; i++) { + if (!(qemuCaps->machineTypes[i].name =3D virXMLPropString(nodes[i]= , "name"))) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("missing machine name in QEMU capabilities ca= che")); + return -1; + } + qemuCaps->machineTypes[i].alias =3D virXMLPropString(nodes[i], "al= ias"); + + str =3D virXMLPropString(nodes[i], "maxCpus"); + if (str && + virStrToLong_ui(str, NULL, 10, &(qemuCaps->machineTypes[i].max= Cpus)) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("malformed machine cpu count in QEMU capabili= ties cache")); + return -1; + } + VIR_FREE(str); + + str =3D virXMLPropString(nodes[i], "hotplugCpus"); + if (STREQ_NULLABLE(str, "yes")) + qemuCaps->machineTypes[i].hotplugCpus =3D true; + VIR_FREE(str); + + str =3D virXMLPropString(nodes[i], "default"); + if (STREQ_NULLABLE(str, "yes")) + qemuCaps->machineTypes[i].qemuDefault =3D true; + VIR_FREE(str); + } + + return 0; +} + + static int virQEMUCapsLoadAccel(virQEMUCapsPtr qemuCaps, xmlXPathContextPtr ctxt, @@ -3787,45 +3841,8 @@ virQEMUCapsLoadCache(virArch hostArch, virQEMUCapsLoadAccel(qemuCaps, ctxt, VIR_DOMAIN_VIRT_QEMU) < 0) goto cleanup; =20 - if ((n =3D virXPathNodeSet("./machine", ctxt, &nodes)) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("failed to parse qemu capabilities machines")); + if (virQEMUCapsLoadMachines(qemuCaps, ctxt) < 0) goto cleanup; - } - if (n > 0) { - qemuCaps->nmachineTypes =3D n; - if (VIR_ALLOC_N(qemuCaps->machineTypes, qemuCaps->nmachineTypes) <= 0) - goto cleanup; - - for (i =3D 0; i < n; i++) { - if (!(qemuCaps->machineTypes[i].name =3D virXMLPropString(node= s[i], "name"))) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("missing machine name in QEMU capabilitie= s cache")); - goto cleanup; - } - qemuCaps->machineTypes[i].alias =3D virXMLPropString(nodes[i],= "alias"); - - str =3D virXMLPropString(nodes[i], "maxCpus"); - if (str && - virStrToLong_ui(str, NULL, 10, &(qemuCaps->machineTypes[i]= .maxCpus)) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("malformed machine cpu count in QEMU capa= bilities cache")); - goto cleanup; - } - VIR_FREE(str); - - str =3D virXMLPropString(nodes[i], "hotplugCpus"); - if (STREQ_NULLABLE(str, "yes")) - qemuCaps->machineTypes[i].hotplugCpus =3D true; - VIR_FREE(str); - - str =3D virXMLPropString(nodes[i], "default"); - if (STREQ_NULLABLE(str, "yes")) - qemuCaps->machineTypes[i].qemuDefault =3D true; - VIR_FREE(str); - } - } - VIR_FREE(nodes); =20 if ((n =3D virXPathNodeSet("./gic", ctxt, &nodes)) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960662; cv=none; d=zoho.com; s=zohoarc; b=U6JsErYrsI2ZUY3CbesZWuHKbtiZO8CFBfXlA2hMdMsYQsPL8QNN0H7zI/nS9CIPji8m5VUbQ/5tY5iPXwH1ovOEs8F4TkHVx4yP0vNrdkg29Y+fONufOpB5lzpsRP6HJyEjB/ksQQW5fuExvefjFk/1MP1Nde4diLWxVheAd80= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960662; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=uhbJaGc/RQxYmbE91zOUAGZRpGMaaS4lRbagjVsnIpI=; b=hCxvFUo3QXQOkoFcmSfJyN6FQoiac3K2Z8sFfQBvctSmdA9b68AqW5+mbTiKzXrIck2Nqb5w8ec3kUbATgjc0cXH7/b51Iec+C99EL15eINCS7Xltb0zgHbxNvGwk9myRZnhnzHPT6BcoJO8MI4tfApycXwumFt+QRyQc1y2+50= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960662825868.2571294526382; Tue, 5 Nov 2019 05:31:02 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-344-fRyrFZoLPVO5457Dm1R5uw-1; Tue, 05 Nov 2019 08:29:34 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 545C88017DD; Tue, 5 Nov 2019 13:29:29 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 1E69C5C883; Tue, 5 Nov 2019 13:29:29 +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 BAED346FBF; Tue, 5 Nov 2019 13:29:28 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS3TF004132 for ; Tue, 5 Nov 2019 08:28:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 893B5600C6; Tue, 5 Nov 2019 13:28:03 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5DE19600CC for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 0C507105D7E; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960661; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=uhbJaGc/RQxYmbE91zOUAGZRpGMaaS4lRbagjVsnIpI=; b=FGYA67mrVtH7hRmskxz+WlZO5NjCxVQ+0jQChuAqwfp5sWNj4sI+6CVS/bCfpgnrvA/4vw dK4aoPYBZDeldAdX8Bg8W+5tR78hXgOsJaNef2/sw69eI1bPMopWdIf+xAuIKEAvk7djYR hUQTpUPbrpJmiRk58a6/StuAiSoe1XQ= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:34 +0100 Message-Id: <6f1b0feb78266cbdce03165a3023069b4f352c49.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 36/52] qemu: Refactor virQEMUCapsFormatCache a bit 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: fRyrFZoLPVO5457Dm1R5uw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" All the code for formatting machine type data was moved to a standalone virQEMUCapsFormatMachines function. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 37 ++++++++++++++++++++++-------------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 4c0cba6a62..52a7248574 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -4023,6 +4023,28 @@ virQEMUCapsFormatCPUModels(virQEMUCapsAccelPtr caps, } =20 =20 +static void +virQEMUCapsFormatMachines(virQEMUCapsPtr qemuCaps, + virBufferPtr buf) +{ + size_t i; + + for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { + virBufferEscapeString(buf, "machineTypes[i].name); + virBufferEscapeString(buf, " alias=3D'%s'", + qemuCaps->machineTypes[i].alias); + if (qemuCaps->machineTypes[i].hotplugCpus) + virBufferAddLit(buf, " hotplugCpus=3D'yes'"); + virBufferAsprintf(buf, " maxCpus=3D'%u'", + qemuCaps->machineTypes[i].maxCpus); + if (qemuCaps->machineTypes[i].qemuDefault) + virBufferAddLit(buf, " default=3D'yes'"); + virBufferAddLit(buf, "/>\n"); + } +} + + static void virQEMUCapsFormatAccel(virQEMUCapsPtr qemuCaps, virBufferPtr buf, @@ -4101,20 +4123,7 @@ virQEMUCapsFormatCache(virQEMUCapsPtr qemuCaps) virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - virBufferEscapeString(&buf, "machineTypes[i].name); - if (qemuCaps->machineTypes[i].alias) - virBufferEscapeString(&buf, " alias=3D'%s'", - qemuCaps->machineTypes[i].alias); - if (qemuCaps->machineTypes[i].hotplugCpus) - virBufferAddLit(&buf, " hotplugCpus=3D'yes'"); - virBufferAsprintf(&buf, " maxCpus=3D'%u'", - qemuCaps->machineTypes[i].maxCpus); - if (qemuCaps->machineTypes[i].qemuDefault) - virBufferAddLit(&buf, " default=3D'yes'"); - virBufferAddLit(&buf, "/>\n"); - } + virQEMUCapsFormatMachines(qemuCaps, &buf); =20 for (i =3D 0; i < qemuCaps->ngicCapabilities; i++) { virGICCapabilityPtr cap; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960609; cv=none; d=zoho.com; s=zohoarc; b=QMxcaDziaYxhwpwzCbwBUjOgt+vSVFEZWm0DRBLPDTO10L4Fse2Qq1JlX12QW85xulmcn/XibFmFypeiug4V0Q1cf+AMMKJGCKlmvxKFUCk7tadqM4FyAsigL1AlbLdXGFWlPRLhbrQpi3WgsrfFknjBXlNhqXnzWJq6s7gIAXU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960609; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=uNAAnSzsl+NSCdlTKCwv/x/mLeDiS4hQ+gEBTA597pc=; b=bF6OOowiMwFDrpveEUObt5Bzf5FtC8Kmpg+WPDHO3FVrIyoSeJJrabiJS5GoPAMdjeJ72axA1drqyxHb4V7pduDKkV+wD/qzN00ylx+/e/iZfjlrMcpqALlsp4IjZYysY62ASRdF6h/5Y8zbUUtD5ky6xbMPXEg6xwtimzChDIw= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960609817386.5865995524937; Tue, 5 Nov 2019 05:30:09 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-207-sys4SaDSPzuBxBFr4A720w-1; Tue, 05 Nov 2019 08:29:30 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6D4DE1005516; Tue, 5 Nov 2019 13:29:25 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 410D25D9C9; Tue, 5 Nov 2019 13:29:25 +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 EC0CF4EDBD; Tue, 5 Nov 2019 13:29:24 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS31m004120 for ; Tue, 5 Nov 2019 08:28:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3C3E41001B11; Tue, 5 Nov 2019 13:28:03 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BBC781001B32 for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 14085105B1E; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960608; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=uNAAnSzsl+NSCdlTKCwv/x/mLeDiS4hQ+gEBTA597pc=; b=F5nBj4MQRHUQTm+Xt9x827SXyEyN7o13donRfXT5OjraEm5KKDJeyEmm7kayNaEEx3bVl9 wEJW3zm8anIoCdmhmZcUSjDuQAjC8TODHiq+11InvGWlMOGAkeTU7kbsS129UrFQ8BP50b 0kd4rA7uePmWXZQhFhHzXfDjywYlTjs= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:35 +0100 Message-Id: <64279f2ffbd66465f1ad808875ef8cd8417e3f92.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 37/52] qemu: Pass virDomainVirtType to APIs dealing with machine types 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: , 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-MC-Unique: sys4SaDSPzuBxBFr4A720w-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 64 +++++++++++++++++++++--------------- src/qemu/qemu_capabilities.h | 8 ++++- src/qemu/qemu_domain.c | 8 +++-- tests/domaincapstest.c | 10 ++++-- 4 files changed, 59 insertions(+), 31 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 52a7248574..68ae8be5c3 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2106,8 +2106,10 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCap= s, * Resolves aliased machine names to the actual machine name. If qemuCaps = isn't * present @name is returned. */ -const char *virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuCaps, - const char *name) +const char * +virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType G_GNUC_UNUSED, + const char *name) { size_t i; =20 @@ -2125,8 +2127,10 @@ const char *virQEMUCapsGetCanonicalMachine(virQEMUCa= psPtr qemuCaps, } =20 =20 -int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, - const char *name) +int +virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType G_GNUC_UNUSED, + const char *name) { size_t i; =20 @@ -2144,8 +2148,10 @@ int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemu= Caps, } =20 =20 -bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, - const char *name) +bool +virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType G_GNUC_UNUSED, + const char *name) { size_t i; =20 @@ -2431,6 +2437,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, =20 static bool virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType G_GNUC_UNUSED, const char *canonical_machine) { size_t i; @@ -2445,6 +2452,7 @@ virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, =20 static int virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, qemuMonitorPtr mon) { char **values; @@ -2456,10 +2464,10 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemu= Caps, =20 for (i =3D 0; i < G_N_ELEMENTS(virQEMUCapsMachineProps); i++) { virQEMUCapsObjectTypeProps props =3D virQEMUCapsMachineProps[i]; - const char *canon =3D virQEMUCapsGetCanonicalMachine(qemuCaps, pro= ps.type); + const char *canon =3D virQEMUCapsGetCanonicalMachine(qemuCaps, vir= tType, props.type); g_autofree char *type =3D NULL; =20 - if (!virQEMUCapsIsMachineSupported(qemuCaps, canon)) + if (!virQEMUCapsIsMachineSupported(qemuCaps, virtType, canon)) continue; =20 /* The QOM type for machine types is the machine type name @@ -4641,7 +4649,7 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, return -1; if (virQEMUCapsProbeQMPMachineTypes(qemuCaps, mon) < 0) return -1; - if (virQEMUCapsProbeQMPMachineProps(qemuCaps, mon) < 0) + if (virQEMUCapsProbeQMPMachineProps(qemuCaps, type, mon) < 0) return -1; if (virQEMUCapsProbeQMPCPUDefinitions(qemuCaps, accel, mon) < 0) return -1; @@ -4878,6 +4886,7 @@ static const struct virQEMUCapsMachineTypeFilter virQ= EMUCapsMachineFilter[] =3D { =20 void virQEMUCapsFilterByMachineType(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, const char *machineType) { size_t i; @@ -4896,7 +4905,7 @@ virQEMUCapsFilterByMachineType(virQEMUCapsPtr qemuCap= s, virQEMUCapsClear(qemuCaps, filter->flags[j]); } =20 - if (!virQEMUCapsGetMachineHotplugCpus(qemuCaps, machineType)) + if (!virQEMUCapsGetMachineHotplugCpus(qemuCaps, virtType, machineType)) virQEMUCapsClear(qemuCaps, QEMU_CAPS_QUERY_HOTPLUGGABLE_CPUS); } =20 @@ -4972,6 +4981,7 @@ virQEMUCapsCacheLookup(virFileCachePtr cache, =20 virQEMUCapsPtr virQEMUCapsCacheLookupCopy(virFileCachePtr cache, + virDomainVirtType virtType, const char *binary, const char *machineType) { @@ -4987,7 +4997,7 @@ virQEMUCapsCacheLookupCopy(virFileCachePtr cache, if (!ret) return NULL; =20 - virQEMUCapsFilterByMachineType(ret, machineType); + virQEMUCapsFilterByMachineType(ret, virtType, machineType); return ret; } =20 @@ -5130,20 +5140,6 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, binary =3D virQEMUCapsGetBinary(qemuCaps); } =20 - if (machine) { - /* Turn @machine into canonical name */ - machine =3D virQEMUCapsGetCanonicalMachine(qemuCaps, machine); - - if (!virQEMUCapsIsMachineSupported(qemuCaps, machine)) { - virReportError(VIR_ERR_INVALID_ARG, - _("the machine '%s' is not supported by emulato= r '%s'"), - machine, binary); - goto cleanup; - } - } else { - machine =3D virQEMUCapsGetPreferredMachine(qemuCaps); - } - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) capsType =3D VIR_DOMAIN_VIRT_KVM; else @@ -5159,6 +5155,20 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, goto cleanup; } =20 + if (machine) { + /* Turn @machine into canonical name */ + machine =3D virQEMUCapsGetCanonicalMachine(qemuCaps, virttype, mac= hine); + + if (!virQEMUCapsIsMachineSupported(qemuCaps, virttype, machine)) { + virReportError(VIR_ERR_INVALID_ARG, + _("the machine '%s' is not supported by emulato= r '%s'"), + machine, binary); + goto cleanup; + } + } else { + machine =3D virQEMUCapsGetPreferredMachine(qemuCaps, virttype); + } + if (retArch) *retArch =3D arch; if (retVirttype) @@ -5191,7 +5201,8 @@ virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, * Note that this may differ from QEMU's own default machine */ const char * -virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps) +virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType G_GNUC_UNUSED) { if (!qemuCaps->nmachineTypes) return NULL; @@ -5650,6 +5661,7 @@ virQEMUCapsFillDomainCaps(virCapsPtr caps, virDomainCapsDeviceRNGPtr rng =3D &domCaps->rng; =20 domCaps->maxvcpus =3D virQEMUCapsGetMachineMaxCpus(qemuCaps, + domCaps->virttype, domCaps->machine); if (domCaps->virttype =3D=3D VIR_DOMAIN_VIRT_KVM) { int hostmaxvcpus; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index c0e1ce41e3..bc43b99579 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -601,13 +601,17 @@ bool virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qem= uCaps, virDomainVirtType type, virCPUMode mode); const char *virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, const char *name); int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, const char *name); bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, const char *name); =20 void virQEMUCapsFilterByMachineType(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType, const char *machineType); =20 virFileCachePtr virQEMUCapsCacheNew(const char *libDir, @@ -617,6 +621,7 @@ virFileCachePtr virQEMUCapsCacheNew(const char *libDir, virQEMUCapsPtr virQEMUCapsCacheLookup(virFileCachePtr cache, const char *binary); virQEMUCapsPtr virQEMUCapsCacheLookupCopy(virFileCachePtr cache, + virDomainVirtType virtType, const char *binary, const char *machineType); virQEMUCapsPtr virQEMUCapsCacheLookupByArch(virFileCachePtr cache, @@ -642,7 +647,8 @@ bool virQEMUCapsSupportsGICVersion(virQEMUCapsPtr qemuC= aps, virDomainVirtType virtType, virGICVersion version); =20 -const char *virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps); +const char *virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps, + virDomainVirtType virtType); =20 int virQEMUCapsInitGuestFromBinary(virCapsPtr caps, const char *binary, diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 667cc89072..8627238c6a 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4340,7 +4340,8 @@ qemuCanonicalizeMachine(virDomainDefPtr def, virQEMUC= apsPtr qemuCaps) { const char *canon; =20 - if (!(canon =3D virQEMUCapsGetCanonicalMachine(qemuCaps, def->os.machi= ne))) + if (!(canon =3D virQEMUCapsGetCanonicalMachine(qemuCaps, def->virtType, + def->os.machine))) return 0; =20 if (STRNEQ(canon, def->os.machine)) { @@ -4839,7 +4840,8 @@ static int qemuDomainValidateCpuCount(const virDomainDef *def, virQEMUCapsPtr qemuCaps) { - unsigned int maxCpus =3D virQEMUCapsGetMachineMaxCpus(qemuCaps, def->o= s.machine); + unsigned int maxCpus =3D virQEMUCapsGetMachineMaxCpus(qemuCaps, def->v= irtType, + def->os.machine); =20 if (virDomainDefGetVcpus(def) =3D=3D 0) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", @@ -8916,6 +8918,7 @@ qemuDomainDefFormatBufInternal(virQEMUDriverPtr drive= r, qCaps =3D virObjectRef(qemuCaps); } else { if (!(qCaps =3D virQEMUCapsCacheLookupCopy(driver->qemuCapsCac= he, + def->virtType, def->emulator, def->os.machine))) goto cleanup; @@ -14992,6 +14995,7 @@ qemuDomainUpdateQEMUCaps(virDomainObjPtr vm, =20 virObjectUnref(priv->qemuCaps); if (!(priv->qemuCaps =3D virQEMUCapsCacheLookupCopy(qemuCapsCache, + vm->def->virtType, vm->def->emulator, vm->def->os.machine)= )) return -1; diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c index f77accdb76..a3295cdd80 100644 --- a/tests/domaincapstest.c +++ b/tests/domaincapstest.c @@ -83,6 +83,7 @@ fillQemuCaps(virDomainCapsPtr domCaps, virCapsPtr caps =3D NULL; virQEMUCapsPtr qemuCaps =3D NULL; virDomainCapsLoaderPtr loader =3D &domCaps->os.loader; + virDomainVirtType virtType; =20 if (!(caps =3D virCapabilitiesNew(domCaps->arch, false, false)) || fakeHostCPU(caps, domCaps->arch) < 0) @@ -93,13 +94,18 @@ fillQemuCaps(virDomainCapsPtr domCaps, !(qemuCaps =3D qemuTestParseCapabilities(caps, path))) goto cleanup; =20 + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) + virtType =3D VIR_DOMAIN_VIRT_KVM; + else + virtType =3D VIR_DOMAIN_VIRT_QEMU; + if (machine) { VIR_FREE(domCaps->machine); - domCaps->machine =3D g_strdup(virQEMUCapsGetCanonicalMachine(qemuC= aps, machine)); + domCaps->machine =3D g_strdup(virQEMUCapsGetCanonicalMachine(qemuC= aps, virtType, machine)); } =20 if (!domCaps->machine) - domCaps->machine =3D g_strdup(virQEMUCapsGetPreferredMachine(qemuC= aps)); + domCaps->machine =3D g_strdup(virQEMUCapsGetPreferredMachine(qemuC= aps, virtType)); =20 if (virQEMUCapsFillDomainCaps(caps, domCaps, qemuCaps, false, --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960540; cv=none; d=zoho.com; s=zohoarc; b=Em46YrJJ6EvV+KaPy+cybwFF3eVQgcF42BXdMDczjfqvNqyCezVAQbEC1Y7URBd9pnnFmKmtqE4kB69yrMae16exXtT9trCR46Cculb+lcbJG/2Hi3wRD1pDvybQ6mlZTy33jR3QsrWOnNZWZS+3qlJtN44GxwEB/r67P/z7RvU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960540; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=q49OHm5gpEibuoop6mYiqyY57vAOh0PWgdBLFZPKmWA=; b=EQDRrRYyXCYN24NRr5AM/GypJmfb7u/bMdf5F4HzFldqWcT2o/3CvTA5C8dRDx0xuv3xUIGm5neUujG7Ujq1u5c6a+O0jcha8BjEoUVM5Jys2k9yev+5Rwp+7iRHLffUa74qKPEViA95kdVSL7WUHuVPMrjy623j25/+nZKYD18= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960540673427.9275868763848; Tue, 5 Nov 2019 05:29:00 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-378-f8WbeZ9qMuavUku1FtnqNQ-1; Tue, 05 Nov 2019 08:28:54 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id EA6F885B6FB; Tue, 5 Nov 2019 13:28:47 +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 BA0D6600CC; Tue, 5 Nov 2019 13:28:47 +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 6C6A618033C2; Tue, 5 Nov 2019 13:28:47 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2Yj004068 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 17C5A5D727; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BB3425D726 for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 245E8105D80; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960539; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=q49OHm5gpEibuoop6mYiqyY57vAOh0PWgdBLFZPKmWA=; b=LAKwFa+PmBnLyPF/fCPy5+PnLgHHSphh7KDLcvEMGbCq6WC7gE3ktlY2BkpCQ0bhgyvQa4 Y5eoS+Av823WdtNVCaMhYVhZXknieL+lxsiR4+WuWBTHv0vgChUczLBykedsnlx4z9fpBQ 5IGf/X1FG76jFpmdOPQs49eolbFQHSM= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:36 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 38/52] qemu: Move machine type data in capabilities cache 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: f8WbeZ9qMuavUku1FtnqNQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" In preparation for making machine types dependent on the accelerator, the elements are formatted between and . Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 4 +- .../caps_1.5.3.x86_64.xml | 30 +++--- .../caps_1.6.0.x86_64.xml | 34 +++---- .../caps_1.7.0.x86_64.xml | 38 ++++---- .../caps_2.1.1.x86_64.xml | 46 +++++----- .../caps_2.10.0.aarch64.xml | 62 ++++++------- .../caps_2.10.0.ppc64.xml | 42 ++++----- .../caps_2.10.0.s390x.xml | 14 +-- .../caps_2.10.0.x86_64.xml | 70 +++++++------- .../caps_2.11.0.s390x.xml | 16 ++-- .../caps_2.11.0.x86_64.xml | 70 +++++++------- .../caps_2.12.0.aarch64.xml | 68 +++++++------- .../caps_2.12.0.ppc64.xml | 50 +++++----- .../caps_2.12.0.s390x.xml | 18 ++-- .../caps_2.12.0.x86_64.xml | 74 +++++++-------- .../caps_2.4.0.x86_64.xml | 56 +++++------ .../caps_2.5.0.x86_64.xml | 56 +++++------ .../caps_2.6.0.aarch64.xml | 60 ++++++------ .../qemucapabilitiesdata/caps_2.6.0.ppc64.xml | 30 +++--- .../caps_2.6.0.x86_64.xml | 50 +++++----- .../qemucapabilitiesdata/caps_2.7.0.s390x.xml | 2 +- .../caps_2.7.0.x86_64.xml | 54 +++++------ .../qemucapabilitiesdata/caps_2.8.0.s390x.xml | 10 +- .../caps_2.8.0.x86_64.xml | 62 ++++++------- .../qemucapabilitiesdata/caps_2.9.0.ppc64.xml | 40 ++++---- .../qemucapabilitiesdata/caps_2.9.0.s390x.xml | 12 +-- .../caps_2.9.0.x86_64.xml | 66 ++++++------- .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 52 +++++------ .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 20 ++-- .../caps_3.0.0.x86_64.xml | 78 ++++++++-------- .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 54 +++++------ .../caps_3.1.0.x86_64.xml | 82 ++++++++--------- .../caps_4.0.0.aarch64.xml | 74 +++++++-------- .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 56 +++++------ .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 24 ++--- .../caps_4.0.0.x86_64.xml | 82 ++++++++--------- .../caps_4.1.0.x86_64.xml | 88 +++++++++--------- .../caps_4.2.0.aarch64.xml | 74 +++++++-------- .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 62 ++++++------- .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 28 +++--- .../caps_4.2.0.x86_64.xml | 92 +++++++++---------- 41 files changed, 1000 insertions(+), 1000 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 68ae8be5c3..b21aadf864 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -4129,10 +4129,10 @@ virQEMUCapsFormatCache(virQEMUCapsPtr qemuCaps) virArchToString(qemuCaps->arch)); =20 virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); - virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); - virQEMUCapsFormatMachines(qemuCaps, &buf); =20 + virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); + for (i =3D 0; i < qemuCaps->ngicCapabilities; i++) { virGICCapabilityPtr cap; bool kernel; diff --git a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_1.5.3.x86_64.xml index 8b573070d5..a62a5534b8 100644 --- a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml @@ -112,6 +112,21 @@ + + + + + + + + + + + + + + + @@ -136,19 +151,4 @@ - - - - - - - - - - - - - - - ... -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960555; cv=none; d=zoho.com; s=zohoarc; b=LAsJsCztq0wxDV9ONH6xs6K3XYYP3j+oUbOu/aGIyDmATmw8BY9QzDfoZ6NTPwNTJa4mt2iPMAki/klXVP84uaJ+mRCLC7xGS259JFrkaJjIVnl5wFBVbNPIYUHieZ/VDVkkrWWfdsVRvM/My+2fldj8O9x6lNmJtZFrfR1vtw0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960555; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=TRMmnb1XXfPw2SgcPCMzVwlC0PuFJ4UsipdgtX3Nong=; b=iaBiZk8RKBNHOve4YqKxM6Je69OfKiobmjC8+GggtUWBtermGtcYwuiM6bPEip4gxAle39pxbCRVmKsFtfQbm5b4JyuvKokRBCJl9HB24lkxI0+elfrWgv9uiivvOlp50QuCRBZDmKevR9meP2XfUr5N08mZyNSF+aAYx28nXG4= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960555649403.23888563824187; Tue, 5 Nov 2019 05:29:15 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-21-qUwmHZ-NP-25OSnptagpAg-1; Tue, 05 Nov 2019 08:29:11 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AE786DB30; Tue, 5 Nov 2019 13:29:06 +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 816A85C557; Tue, 5 Nov 2019 13:29:06 +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 4426B1802121; Tue, 5 Nov 2019 13:29:06 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2vg004067 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 16B281001B32; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E09561001B11 for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 2E18D105D81; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960554; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=TRMmnb1XXfPw2SgcPCMzVwlC0PuFJ4UsipdgtX3Nong=; b=ZaV1r8uhdz3FRE3l2sV3dRe2vlVfW70u+xw2NE2C1E+PfCeX5FWjJNj0iONLjJmB8keaNd vOXKWfqJrgCR0xIRsBtkT5SQulpOcwitIE73zQO+DXJ613XWbs43zeAkg7pCgolgP7ttu3 dB2ej5ROoO0yA7pPOwjkd3dOmr1rxyA= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:37 +0100 Message-Id: <188a1909e726b7d45fc989cb4110cb8a41b2e608.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 39/52] qemu: Use typedef for virQEMUCapsMachineType 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: qUwmHZ-NP-25OSnptagpAg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index b21aadf864..0a00f2c361 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -550,7 +550,9 @@ VIR_ENUM_IMPL(virQEMUCaps, ); =20 =20 -struct virQEMUCapsMachineType { +typedef struct _virQEMUCapsMachineType virQEMUCapsMachineType; +typedef virQEMUCapsMachineType *virQEMUCapsMachineTypePtr; +struct _virQEMUCapsMachineType { char *name; char *alias; unsigned int maxCpus; @@ -616,7 +618,7 @@ struct _virQEMUCaps { virHashTablePtr domCapsCache; =20 size_t nmachineTypes; - struct virQEMUCapsMachineType *machineTypes; + virQEMUCapsMachineTypePtr machineTypes; =20 size_t ngicCapabilities; virGICCapability *gicCapabilities; @@ -734,7 +736,7 @@ static void virQEMUCapsSetDefaultMachine(virQEMUCapsPtr qemuCaps, size_t defIdx) { - struct virQEMUCapsMachineType tmp =3D qemuCaps->machineTypes[defIdx]; + virQEMUCapsMachineType tmp =3D qemuCaps->machineTypes[defIdx]; =20 memmove(qemuCaps->machineTypes + 1, qemuCaps->machineTypes, @@ -2387,7 +2389,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, goto cleanup; =20 for (i =3D 0; i < nmachines; i++) { - struct virQEMUCapsMachineType *mach; + virQEMUCapsMachineTypePtr mach; if (STREQ(machines[i]->name, "none")) continue; =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960613; cv=none; d=zoho.com; s=zohoarc; b=fJARs6LIkYXrTxW59Ma7oRUsgM6ADIyhx+GRXH8cuPF12huB4gQvav91e8rbWQUbOLeIolb3lsO0jhZJMi1Cpo//4RqR7P8bdZ37iUomI0avwYfe5uMkwnojuoLLxeFZmbi0geoUKho8ez0M9gv89oI0goaus0PpGp+gI+sH2Ds= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960613; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=nnbyp97ybDf8ZoJTB/evUBwUBKdrko+tc9IkSWiiRJg=; b=hLqa/uZWAL1/WLhKpjm5Mj82SOebJDAcaqxLg+EAWlgX+VtAcL3egyX2+UfrDm7QCEGRv883acr/xbTHER1ZylngvlyBWc8JW8LjpZ4fBY42ZhBRPY+kqW8zAu2kYItvdZf3PGwhAfy5MPLUMrXcYqIzm0485E84ZGMnqfsG/zA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960613341114.14913946797287; Tue, 5 Nov 2019 05:30:13 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-395-4QZ80xAoPceXcKD6pypSqQ-1; Tue, 05 Nov 2019 08:29:09 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id 856AE800C73; Tue, 5 Nov 2019 13:29:03 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5F0665D9CD; Tue, 5 Nov 2019 13:29:03 +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 1C9184EA2D; Tue, 5 Nov 2019 13:29:03 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2sC004077 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 284D05C553; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id F1AF05C1B2 for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 37D0E105D82; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960612; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=nnbyp97ybDf8ZoJTB/evUBwUBKdrko+tc9IkSWiiRJg=; b=YeNp1PV1FbmQNjpnUCkXaN/MX3cXFPVjEGfkExKpDpDfXBRiHFtA+DtMUNnGIZYZheKWrJ jWmalqOnEpUyYWWEI5nu+mKIyx+E6gLhMMmcfU/hB6JpmNwy8KOTH4x6PWc/b2t07x7HBs +YZRnwvzybKMjVtx+7AnyyvE1Ko1734= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:38 +0100 Message-Id: <4eb4d598b6b0d3b31e87e5040e478d44e240825c.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 40/52] qemu: Introduce virQEMUCapsCopyMachineTypes 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: , 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-MC-Unique: 4QZ80xAoPceXcKD6pypSqQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The function copies machine type data from one QEMU caps structure to another. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 0a00f2c361..9376cad6d0 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1689,6 +1689,25 @@ virQEMUCapsSEVInfoCopy(virSEVCapabilityPtr *dst, } =20 =20 +static void +virQEMUCapsCopyMachineTypes(virQEMUCapsPtr dst, + virQEMUCapsPtr src) +{ + size_t i; + + dst->machineTypes =3D g_new0(virQEMUCapsMachineType, src->nmachineType= s); + + dst->nmachineTypes =3D src->nmachineTypes; + for (i =3D 0; i < src->nmachineTypes; i++) { + dst->machineTypes[i].name =3D g_strdup(src->machineTypes[i].name); + dst->machineTypes[i].alias =3D g_strdup(src->machineTypes[i].alias= ); + dst->machineTypes[i].maxCpus =3D src->machineTypes[i].maxCpus; + dst->machineTypes[i].hotplugCpus =3D src->machineTypes[i].hotplugC= pus; + dst->machineTypes[i].qemuDefault =3D src->machineTypes[i].qemuDefa= ult; + } +} + + static int virQEMUCapsAccelCopy(virQEMUCapsAccelPtr dst, virQEMUCapsAccelPtr src) @@ -1732,17 +1751,7 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qem= uCaps) virQEMUCapsAccelCopy(&ret->tcg, &qemuCaps->tcg) < 0) goto error; =20 - if (VIR_ALLOC_N(ret->machineTypes, qemuCaps->nmachineTypes) < 0) - goto error; - ret->nmachineTypes =3D qemuCaps->nmachineTypes; - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - ret->machineTypes[i].name =3D g_strdup(qemuCaps->machineTypes[i].n= ame); - ret->machineTypes[i].alias =3D g_strdup(qemuCaps->machineTypes[i].= alias); - ret->machineTypes[i].maxCpus =3D qemuCaps->machineTypes[i].maxCpus; - ret->machineTypes[i].hotplugCpus =3D qemuCaps->machineTypes[i].hot= plugCpus; - ret->machineTypes[i].qemuDefault =3D qemuCaps->machineTypes[i].qem= uDefault; - - } + virQEMUCapsCopyMachineTypes(ret, qemuCaps); =20 if (VIR_ALLOC_N(ret->gicCapabilities, qemuCaps->ngicCapabilities) < 0) goto error; --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960576; cv=none; d=zoho.com; s=zohoarc; b=GUktIeT1yg62nL/MQsrQC9/x2nHDKzq0WRQ5eD4UJx9b/zyWCd1SA9mS6EF3/1RWOJtzP8te2orWphA02Gs6erVfL1h9AKyZKqdXOFnFi1QbAAiH4/aHpR4PzLlYFYArfK5jTF8X/szkv4iDhBP19/E/CwVuA1ipQPy9XGOf/Yg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960576; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ztqXDO/QKfbTuGP6KbtEicT5IFA7CUv58SpxiEyuznk=; b=FLR/cqW6z0CZTErhVEKfwNi8a4Fzji7jdzm8jXM/ylL8ZtcuAZk2uhs8aWViQknEH9raRubpCvrPlfd0C1rm2Y+PgNuVDqUbwucPi2/MsMAmN/NyzHGxNUHyHUEL2ta+stVVosGpl/Xjlw2UgO4f9Fpl1/gwnD5AwEE8NrKFVeQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960576866855.4239047440627; Tue, 5 Nov 2019 05:29:36 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-432-415XQiO6MHG2Cr_YwbhciA-1; Tue, 05 Nov 2019 08:29:34 -0500 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 mimecast-mx01.redhat.com (Postfix) with ESMTPS id CC5C2107ACC6; Tue, 5 Nov 2019 13:29:27 +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 A3E4D5D9C9; Tue, 5 Nov 2019 13:29:27 +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 61CDF1800B98; Tue, 5 Nov 2019 13:29:27 +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 xA5DS4i4004148 for ; Tue, 5 Nov 2019 08:28:04 -0500 Received: by smtp.corp.redhat.com (Postfix) id A1E4226FD1; Tue, 5 Nov 2019 13:28:04 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2C19827068 for ; Tue, 5 Nov 2019 13:28:01 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 40213105D83; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960575; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=ztqXDO/QKfbTuGP6KbtEicT5IFA7CUv58SpxiEyuznk=; b=ArFPSUU5UOkzeFpqNnSW1peslYJotMrp7djneSPIe2fVwo9jsPiuZiKj4F/qRRYcTajKIa JSRhlK4SQhNhahNl8U+ZUXzKh35u96/9PQvXhTWNxIaW9DZnQm+lrzuLH11N0Vq5EkyOzD lb0iccTnsdWa9ukMP8hKb40/eZsw3rE= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:39 +0100 Message-Id: <991395f6d8ec5dffae0eb6ac8ee435250f267033.1572958254.git.jdenemar@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 v3 41/52] qemu: Make probed machine types depend on accelerator 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: , 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-MC-Unique: 415XQiO6MHG2Cr_YwbhciA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Some specifics of machine types may depend on the accelerator and thus the data should be moved to virQEMUCapsAccel. The TCG machine types are just copied from the ones probed for KVM to simplify the changes to qemucapabilitiestest data files. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 190 +++++++++------- .../caps_1.5.3.x86_64.xml | 45 ++-- .../caps_1.6.0.x86_64.xml | 51 +++-- .../caps_1.7.0.x86_64.xml | 57 +++-- .../caps_2.1.1.x86_64.xml | 69 ++++-- .../caps_2.10.0.aarch64.xml | 153 ++++++++----- .../caps_2.10.0.ppc64.xml | 63 ++++-- .../caps_2.10.0.s390x.xml | 21 +- .../caps_2.10.0.x86_64.xml | 105 ++++++--- .../caps_2.11.0.s390x.xml | 24 +- .../caps_2.11.0.x86_64.xml | 105 ++++++--- .../caps_2.12.0.aarch64.xml | 171 +++++++++----- .../caps_2.12.0.ppc64.xml | 75 ++++--- .../caps_2.12.0.s390x.xml | 27 ++- .../caps_2.12.0.x86_64.xml | 111 ++++++--- .../caps_2.4.0.x86_64.xml | 87 +++++--- .../caps_2.5.0.x86_64.xml | 93 +++++--- .../caps_2.6.0.aarch64.xml | 123 ++++++---- .../qemucapabilitiesdata/caps_2.6.0.ppc64.xml | 45 ++-- .../caps_2.6.0.x86_64.xml | 75 ++++--- .../qemucapabilitiesdata/caps_2.7.0.s390x.xml | 12 +- .../caps_2.7.0.x86_64.xml | 81 ++++--- .../qemucapabilitiesdata/caps_2.8.0.s390x.xml | 15 +- .../caps_2.8.0.x86_64.xml | 93 +++++--- .../qemucapabilitiesdata/caps_2.9.0.ppc64.xml | 60 +++-- .../qemucapabilitiesdata/caps_2.9.0.s390x.xml | 18 +- .../caps_2.9.0.x86_64.xml | 99 ++++++--- .../qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 78 ++++--- .../caps_3.0.0.riscv32.xml | 10 +- .../caps_3.0.0.riscv64.xml | 10 +- .../qemucapabilitiesdata/caps_3.0.0.s390x.xml | 30 ++- .../caps_3.0.0.x86_64.xml | 117 ++++++---- .../qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 81 ++++--- .../caps_3.1.0.x86_64.xml | 123 ++++++---- .../caps_4.0.0.aarch64.xml | 198 +++++++++++------ .../qemucapabilitiesdata/caps_4.0.0.ppc64.xml | 84 ++++--- .../caps_4.0.0.riscv32.xml | 10 +- .../caps_4.0.0.riscv64.xml | 10 +- .../qemucapabilitiesdata/caps_4.0.0.s390x.xml | 36 ++- .../caps_4.0.0.x86_64.xml | 123 ++++++---- .../caps_4.1.0.x86_64.xml | 132 +++++++---- .../caps_4.2.0.aarch64.xml | 210 ++++++++++++------ .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 93 +++++--- .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 42 ++-- .../caps_4.2.0.x86_64.xml | 138 ++++++++---- 45 files changed, 2372 insertions(+), 1221 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9376cad6d0..d2f307f6a9 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -581,6 +581,8 @@ struct _virQEMUCapsHostCPUData { typedef struct _virQEMUCapsAccel virQEMUCapsAccel; typedef virQEMUCapsAccel *virQEMUCapsAccelPtr; struct _virQEMUCapsAccel { + size_t nmachineTypes; + virQEMUCapsMachineTypePtr machineTypes; virQEMUCapsHostCPUData hostCPU; qemuMonitorCPUDefsPtr cpuModels; }; @@ -617,9 +619,6 @@ struct _virQEMUCaps { =20 virHashTablePtr domCapsCache; =20 - size_t nmachineTypes; - virQEMUCapsMachineTypePtr machineTypes; - size_t ngicCapabilities; virGICCapability *gicCapabilities; =20 @@ -733,16 +732,16 @@ virQEMUCapsGetAccel(virQEMUCapsPtr qemuCaps, =20 =20 static void -virQEMUCapsSetDefaultMachine(virQEMUCapsPtr qemuCaps, +virQEMUCapsSetDefaultMachine(virQEMUCapsAccelPtr caps, size_t defIdx) { - virQEMUCapsMachineType tmp =3D qemuCaps->machineTypes[defIdx]; + virQEMUCapsMachineType tmp =3D caps->machineTypes[defIdx]; =20 - memmove(qemuCaps->machineTypes + 1, - qemuCaps->machineTypes, - sizeof(qemuCaps->machineTypes[0]) * defIdx); + memmove(caps->machineTypes + 1, + caps->machineTypes, + sizeof(caps->machineTypes[0]) * defIdx); =20 - qemuCaps->machineTypes[0] =3D tmp; + caps->machineTypes[0] =3D tmp; } =20 =20 @@ -840,26 +839,34 @@ virQEMUCapsGetMachineTypesCaps(virQEMUCapsPtr qemuCap= s, virCapsGuestMachinePtr **machines) { size_t i; + virQEMUCapsAccelPtr accel; + + /* Guest capabilities do not report TCG vs. KVM caps separately. We ju= st + * take the set of machine types we probed first. */ + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM)) + accel =3D &qemuCaps->kvm; + else + accel =3D &qemuCaps->tcg; =20 *machines =3D NULL; - *nmachines =3D qemuCaps->nmachineTypes; + *nmachines =3D accel->nmachineTypes; =20 if (*nmachines && - VIR_ALLOC_N(*machines, qemuCaps->nmachineTypes) < 0) + VIR_ALLOC_N(*machines, accel->nmachineTypes) < 0) goto error; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { + for (i =3D 0; i < accel->nmachineTypes; i++) { virCapsGuestMachinePtr mach; if (VIR_ALLOC(mach) < 0) goto error; (*machines)[i] =3D mach; - if (qemuCaps->machineTypes[i].alias) { - mach->name =3D g_strdup(qemuCaps->machineTypes[i].alias); - mach->canonical =3D g_strdup(qemuCaps->machineTypes[i].name); + if (accel->machineTypes[i].alias) { + mach->name =3D g_strdup(accel->machineTypes[i].alias); + mach->canonical =3D g_strdup(accel->machineTypes[i].name); } else { - mach->name =3D g_strdup(qemuCaps->machineTypes[i].name); + mach->name =3D g_strdup(accel->machineTypes[i].name); } - mach->maxCpus =3D qemuCaps->machineTypes[i].maxCpus; + mach->maxCpus =3D accel->machineTypes[i].maxCpus; } =20 /* Make sure all canonical machine types also have their own entry so = that @@ -1690,8 +1697,8 @@ virQEMUCapsSEVInfoCopy(virSEVCapabilityPtr *dst, =20 =20 static void -virQEMUCapsCopyMachineTypes(virQEMUCapsPtr dst, - virQEMUCapsPtr src) +virQEMUCapsAccelCopyMachineTypes(virQEMUCapsAccelPtr dst, + virQEMUCapsAccelPtr src) { size_t i; =20 @@ -1712,6 +1719,8 @@ static int virQEMUCapsAccelCopy(virQEMUCapsAccelPtr dst, virQEMUCapsAccelPtr src) { + virQEMUCapsAccelCopyMachineTypes(dst, src); + if (virQEMUCapsHostCPUDataCopy(&dst->hostCPU, &src->hostCPU) < 0) return -1; =20 @@ -1751,8 +1760,6 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qemu= Caps) virQEMUCapsAccelCopy(&ret->tcg, &qemuCaps->tcg) < 0) goto error; =20 - virQEMUCapsCopyMachineTypes(ret, qemuCaps); - if (VIR_ALLOC_N(ret->gicCapabilities, qemuCaps->ngicCapabilities) < 0) goto error; ret->ngicCapabilities =3D qemuCaps->ngicCapabilities; @@ -1775,6 +1782,14 @@ virQEMUCapsPtr virQEMUCapsNewCopy(virQEMUCapsPtr qem= uCaps) static void virQEMUCapsAccelClear(virQEMUCapsAccelPtr caps) { + size_t i; + + for (i =3D 0; i < caps->nmachineTypes; i++) { + VIR_FREE(caps->machineTypes[i].name); + VIR_FREE(caps->machineTypes[i].alias); + } + VIR_FREE(caps->machineTypes); + virQEMUCapsHostCPUDataClear(&caps->hostCPU); virObjectUnref(caps->cpuModels); } @@ -1783,13 +1798,6 @@ virQEMUCapsAccelClear(virQEMUCapsAccelPtr caps) void virQEMUCapsDispose(void *obj) { virQEMUCapsPtr qemuCaps =3D obj; - size_t i; - - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - VIR_FREE(qemuCaps->machineTypes[i].name); - VIR_FREE(qemuCaps->machineTypes[i].alias); - } - VIR_FREE(qemuCaps->machineTypes); =20 virHashFree(qemuCaps->domCapsCache); virBitmapFree(qemuCaps->flags); @@ -2119,19 +2127,22 @@ virQEMUCapsIsCPUModeSupported(virQEMUCapsPtr qemuCa= ps, */ const char * virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuCaps, - virDomainVirtType virtType G_GNUC_UNUSED, + virDomainVirtType virtType, const char *name) { + virQEMUCapsAccelPtr accel; size_t i; =20 if (!name || !qemuCaps) return name; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (!qemuCaps->machineTypes[i].alias) + accel =3D virQEMUCapsGetAccel(qemuCaps, virtType); + + for (i =3D 0; i < accel->nmachineTypes; i++) { + if (!accel->machineTypes[i].alias) continue; - if (STREQ(qemuCaps->machineTypes[i].alias, name)) - return qemuCaps->machineTypes[i].name; + if (STREQ(accel->machineTypes[i].alias, name)) + return accel->machineTypes[i].name; } =20 return name; @@ -2140,19 +2151,22 @@ virQEMUCapsGetCanonicalMachine(virQEMUCapsPtr qemuC= aps, =20 int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCaps, - virDomainVirtType virtType G_GNUC_UNUSED, + virDomainVirtType virtType, const char *name) { + virQEMUCapsAccelPtr accel; size_t i; =20 if (!name) return 0; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (!qemuCaps->machineTypes[i].maxCpus) + accel =3D virQEMUCapsGetAccel(qemuCaps, virtType); + + for (i =3D 0; i < accel->nmachineTypes; i++) { + if (!accel->machineTypes[i].maxCpus) continue; - if (STREQ(qemuCaps->machineTypes[i].name, name)) - return qemuCaps->machineTypes[i].maxCpus; + if (STREQ(accel->machineTypes[i].name, name)) + return accel->machineTypes[i].maxCpus; } =20 return 0; @@ -2161,14 +2175,17 @@ virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCap= s, =20 bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, - virDomainVirtType virtType G_GNUC_UNUSED, + virDomainVirtType virtType, const char *name) { + virQEMUCapsAccelPtr accel; size_t i; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (STREQ_NULLABLE(qemuCaps->machineTypes[i].name, name)) - return qemuCaps->machineTypes[i].hotplugCpus; + accel =3D virQEMUCapsGetAccel(qemuCaps, virtType); + + for (i =3D 0; i < accel->nmachineTypes; i++) { + if (STREQ_NULLABLE(accel->machineTypes[i].name, name)) + return accel->machineTypes[i].hotplugCpus; } =20 return false; @@ -2381,6 +2398,7 @@ verify(G_N_ELEMENTS(preferredMachines) =3D=3D VIR_ARC= H_LAST); =20 static int virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCaps, + virQEMUCapsAccelPtr accel, qemuMonitorPtr mon) { qemuMonitorMachineInfoPtr *machines =3D NULL; @@ -2394,7 +2412,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, if ((nmachines =3D qemuMonitorGetMachines(mon, &machines)) < 0) return -1; =20 - if (VIR_ALLOC_N(qemuCaps->machineTypes, nmachines) < 0) + if (VIR_ALLOC_N(accel->machineTypes, nmachines) < 0) goto cleanup; =20 for (i =3D 0; i < nmachines; i++) { @@ -2402,7 +2420,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, if (STREQ(machines[i]->name, "none")) continue; =20 - mach =3D &(qemuCaps->machineTypes[qemuCaps->nmachineTypes++]); + mach =3D &(accel->machineTypes[accel->nmachineTypes++]); =20 mach->alias =3D g_strdup(machines[i]->alias); mach->name =3D g_strdup(machines[i]->name); @@ -2413,12 +2431,12 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemu= Caps, if (preferredMachine && (STREQ_NULLABLE(mach->alias, preferredMachine) || STREQ(mach->name, preferredMachine))) { - preferredIdx =3D qemuCaps->nmachineTypes - 1; + preferredIdx =3D accel->nmachineTypes - 1; } =20 if (machines[i]->isDefault) { mach->qemuDefault =3D true; - defIdx =3D qemuCaps->nmachineTypes - 1; + defIdx =3D accel->nmachineTypes - 1; } } =20 @@ -2434,7 +2452,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, if (preferredIdx =3D=3D -1) preferredIdx =3D defIdx; if (preferredIdx !=3D -1) - virQEMUCapsSetDefaultMachine(qemuCaps, preferredIdx); + virQEMUCapsSetDefaultMachine(accel, preferredIdx); =20 ret =3D 0; =20 @@ -2448,13 +2466,14 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemu= Caps, =20 static bool virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, - virDomainVirtType virtType G_GNUC_UNUSED, + virDomainVirtType virtType, const char *canonical_machine) { + virQEMUCapsAccelPtr accel =3D virQEMUCapsGetAccel(qemuCaps, virtType); size_t i; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - if (STREQ(canonical_machine, qemuCaps->machineTypes[i].name)) + for (i =3D 0; i < accel->nmachineTypes; i++) { + if (STREQ(canonical_machine, accel->machineTypes[i].name)) return true; } return false; @@ -3574,15 +3593,17 @@ virQEMUCapsLoadCPUModels(virQEMUCapsAccelPtr caps, =20 =20 static int -virQEMUCapsLoadMachines(virQEMUCapsPtr qemuCaps, - xmlXPathContextPtr ctxt) +virQEMUCapsLoadMachines(virQEMUCapsAccelPtr caps, + xmlXPathContextPtr ctxt, + const char *typeStr) { + g_autofree char *xpath =3D g_strdup_printf("./machine[@type=3D'%s']", = typeStr); g_autofree xmlNodePtr *nodes =3D NULL; char *str =3D NULL; size_t i; int n; =20 - if ((n =3D virXPathNodeSet("./machine", ctxt, &nodes)) < 0) { + if ((n =3D virXPathNodeSet(xpath, ctxt, &nodes)) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to parse qemu capabilities machines")); return -1; @@ -3591,21 +3612,21 @@ virQEMUCapsLoadMachines(virQEMUCapsPtr qemuCaps, if (n =3D=3D 0) return 0; =20 - qemuCaps->nmachineTypes =3D n; - if (VIR_ALLOC_N(qemuCaps->machineTypes, qemuCaps->nmachineTypes) < 0) + caps->nmachineTypes =3D n; + if (VIR_ALLOC_N(caps->machineTypes, caps->nmachineTypes) < 0) return -1; =20 for (i =3D 0; i < n; i++) { - if (!(qemuCaps->machineTypes[i].name =3D virXMLPropString(nodes[i]= , "name"))) { + if (!(caps->machineTypes[i].name =3D virXMLPropString(nodes[i], "n= ame"))) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing machine name in QEMU capabilities ca= che")); return -1; } - qemuCaps->machineTypes[i].alias =3D virXMLPropString(nodes[i], "al= ias"); + caps->machineTypes[i].alias =3D virXMLPropString(nodes[i], "alias"= ); =20 str =3D virXMLPropString(nodes[i], "maxCpus"); if (str && - virStrToLong_ui(str, NULL, 10, &(qemuCaps->machineTypes[i].max= Cpus)) < 0) { + virStrToLong_ui(str, NULL, 10, &(caps->machineTypes[i].maxCpus= )) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("malformed machine cpu count in QEMU capabili= ties cache")); return -1; @@ -3614,12 +3635,12 @@ virQEMUCapsLoadMachines(virQEMUCapsPtr qemuCaps, =20 str =3D virXMLPropString(nodes[i], "hotplugCpus"); if (STREQ_NULLABLE(str, "yes")) - qemuCaps->machineTypes[i].hotplugCpus =3D true; + caps->machineTypes[i].hotplugCpus =3D true; VIR_FREE(str); =20 str =3D virXMLPropString(nodes[i], "default"); if (STREQ_NULLABLE(str, "yes")) - qemuCaps->machineTypes[i].qemuDefault =3D true; + caps->machineTypes[i].qemuDefault =3D true; VIR_FREE(str); } =20 @@ -3641,6 +3662,9 @@ virQEMUCapsLoadAccel(virQEMUCapsPtr qemuCaps, if (virQEMUCapsLoadCPUModels(caps, ctxt, typeStr) < 0) return -1; =20 + if (virQEMUCapsLoadMachines(caps, ctxt, typeStr) < 0) + return -1; + return 0; } =20 @@ -3860,9 +3884,6 @@ virQEMUCapsLoadCache(virArch hostArch, virQEMUCapsLoadAccel(qemuCaps, ctxt, VIR_DOMAIN_VIRT_QEMU) < 0) goto cleanup; =20 - if (virQEMUCapsLoadMachines(qemuCaps, ctxt) < 0) - goto cleanup; - if ((n =3D virXPathNodeSet("./gic", ctxt, &nodes)) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to parse qemu capabilities gic")); @@ -4043,21 +4064,23 @@ virQEMUCapsFormatCPUModels(virQEMUCapsAccelPtr caps, =20 =20 static void -virQEMUCapsFormatMachines(virQEMUCapsPtr qemuCaps, - virBufferPtr buf) +virQEMUCapsFormatMachines(virQEMUCapsAccelPtr caps, + virBufferPtr buf, + const char *typeStr) { size_t i; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) { - virBufferEscapeString(buf, "machineTypes[i].name); + for (i =3D 0; i < caps->nmachineTypes; i++) { + virBufferAsprintf(buf, "machineTypes[i].name); virBufferEscapeString(buf, " alias=3D'%s'", - qemuCaps->machineTypes[i].alias); - if (qemuCaps->machineTypes[i].hotplugCpus) + caps->machineTypes[i].alias); + if (caps->machineTypes[i].hotplugCpus) virBufferAddLit(buf, " hotplugCpus=3D'yes'"); virBufferAsprintf(buf, " maxCpus=3D'%u'", - qemuCaps->machineTypes[i].maxCpus); - if (qemuCaps->machineTypes[i].qemuDefault) + caps->machineTypes[i].maxCpus); + if (caps->machineTypes[i].qemuDefault) virBufferAddLit(buf, " default=3D'yes'"); virBufferAddLit(buf, "/>\n"); } @@ -4074,6 +4097,8 @@ virQEMUCapsFormatAccel(virQEMUCapsPtr qemuCaps, =20 virQEMUCapsFormatHostCPUModelInfo(caps, buf, typeStr); virQEMUCapsFormatCPUModels(caps, buf, typeStr); + virQEMUCapsFormatMachines(caps, buf, typeStr); + } =20 =20 @@ -4140,8 +4165,6 @@ virQEMUCapsFormatCache(virQEMUCapsPtr qemuCaps) virArchToString(qemuCaps->arch)); =20 virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_KVM); - virQEMUCapsFormatMachines(qemuCaps, &buf); - virQEMUCapsFormatAccel(qemuCaps, &buf, VIR_DOMAIN_VIRT_QEMU); =20 for (i =3D 0; i < qemuCaps->ngicCapabilities; i++) { @@ -4658,7 +4681,7 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps, return -1; if (virQEMUCapsProbeQMPDevices(qemuCaps, mon) < 0) return -1; - if (virQEMUCapsProbeQMPMachineTypes(qemuCaps, mon) < 0) + if (virQEMUCapsProbeQMPMachineTypes(qemuCaps, accel, mon) < 0) return -1; if (virQEMUCapsProbeQMPMachineProps(qemuCaps, type, mon) < 0) return -1; @@ -4701,6 +4724,8 @@ virQEMUCapsInitQMPMonitorTCG(virQEMUCapsPtr qemuCaps, if (virQEMUCapsProbeQMPHostCPU(qemuCaps, accel, mon, VIR_DOMAIN_VIRT_Q= EMU) < 0) return -1; =20 + virQEMUCapsAccelCopyMachineTypes(&qemuCaps->tcg, &qemuCaps->kvm); + return 0; } =20 @@ -5213,11 +5238,13 @@ virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, */ const char * virQEMUCapsGetPreferredMachine(virQEMUCapsPtr qemuCaps, - virDomainVirtType virtType G_GNUC_UNUSED) + virDomainVirtType virtType) { - if (!qemuCaps->nmachineTypes) + virQEMUCapsAccelPtr accel =3D virQEMUCapsGetAccel(qemuCaps, virtType); + + if (!accel->nmachineTypes) return NULL; - return qemuCaps->machineTypes[0].name; + return accel->machineTypes[0].name; } =20 =20 @@ -5730,6 +5757,9 @@ virQEMUCapsStripMachineAliases(virQEMUCapsPtr qemuCap= s) { size_t i; =20 - for (i =3D 0; i < qemuCaps->nmachineTypes; i++) - VIR_FREE(qemuCaps->machineTypes[i].alias); + for (i =3D 0; i < qemuCaps->kvm.nmachineTypes; i++) + VIR_FREE(qemuCaps->kvm.machineTypes[i].alias); + + for (i =3D 0; i < qemuCaps->tcg.nmachineTypes; i++) + VIR_FREE(qemuCaps->tcg.machineTypes[i].alias); } diff --git a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_1.5.3.x86_64.xml index a62a5534b8..3ee25a7ea7 100644 --- a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml @@ -112,21 +112,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -151,4 +151,19 @@ + + + + + + + + + + + + + + + ... -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960622; cv=none; d=zoho.com; s=zohoarc; b=QGreko6/TJvRgx1YuHoHei+1/szF7v8nJS5EiCgv+eERq0TINh23hFOzH50oyjF8Xsj1IncbZLbK5kEqgVgf2uXv6ZnZDtCTWaqtWRsi0gEd/5jTFz9YCEktWVFn8HBG3ckTHIDdbGlLqGY+w66C9dHXQXAHryiRHEfmwUW7S9w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960622; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=bXPUILEL2NsGLvxfNL4H1na4IAE0X+LAXgJprYykte0=; b=kmH9Hi0KZWWCQCNTugAoyqcaqaZfmLqlmVtgWma9MQK9hWXW89djhZrV3KJuPHXIXQxFS2l//YQtcaGf3Edg3CTLuiD3K92GTO8qfXce0ZIzGURnb7ywoMYKwpxmK14+Vdvxz/g+hRzjEw69R8zAWcB4SWgpKgIjWjn8XdeKQIk= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960622696846.024562262518; Tue, 5 Nov 2019 05:30:22 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-295-gVwRquI6NbuAnUiagnroLA-1; Tue, 05 Nov 2019 08:29:21 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3E0BD801E54; Tue, 5 Nov 2019 13:29:16 +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 B3FA56117E; Tue, 5 Nov 2019 13:29:15 +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 594EF180202E; Tue, 5 Nov 2019 13:29:15 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2TF004097 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5CB2A1001902; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0BEFD1001B00 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 46FA9105D84; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960621; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=bXPUILEL2NsGLvxfNL4H1na4IAE0X+LAXgJprYykte0=; b=fZUe2t5dsXha8Wd9Y8v5dlvM0e2oBrhpCaO6gg2A49OcwIXr9ikInML+39UYrHf+5n6j/v 8LtubV3JGQL2raLNbznQMndaunogsTNVGDInwBxU+YVrf0XqgYpWsinDYoARwZ8ReeAVho TfR8TVKVNpbl7M3lUTAYc97Mf09kIf8= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:40 +0100 Message-Id: <3e6d4a4a0d485292c72b00b30a366ddb5a7b78b4.1572958254.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 42/52] qemu: Probe machine types for both KVM and TCG 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: gVwRquI6NbuAnUiagnroLA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Almost all TCG query-machines replies match KVM. The only exceptions are 4.2.0 replies on s390x which differ in the reported default CPU type. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch src/qemu/qemu_capabilities.c | 3 +- .../caps_1.5.3.x86_64.replies | 78 +++ .../caps_1.6.0.x86_64.replies | 86 +++ .../caps_1.7.0.x86_64.replies | 94 +++ .../caps_2.1.1.x86_64.replies | 110 ++++ .../caps_2.10.0.aarch64.replies | 272 +++++++++ .../caps_2.10.0.ppc64.replies | 123 ++++ .../caps_2.10.0.s390x.replies | 53 ++ .../caps_2.10.0.x86_64.replies | 194 ++++++ .../caps_2.11.0.s390x.replies | 58 ++ .../caps_2.11.0.x86_64.replies | 194 ++++++ .../caps_2.12.0.aarch64.replies | 302 ++++++++++ .../caps_2.12.0.ppc64.replies | 143 +++++ .../caps_2.12.0.s390x.replies | 63 ++ .../caps_2.12.0.x86_64.replies | 204 +++++++ .../caps_2.4.0.x86_64.replies | 134 +++++ .../caps_2.5.0.x86_64.replies | 142 +++++ .../caps_2.6.0.aarch64.replies | 180 ++++++ .../caps_2.6.0.ppc64.replies | 77 +++ .../caps_2.6.0.x86_64.replies | 118 ++++ .../caps_2.7.0.s390x.replies | 38 ++ .../caps_2.7.0.x86_64.replies | 154 +++++ .../caps_2.8.0.s390x.replies | 43 ++ .../caps_2.8.0.x86_64.replies | 174 ++++++ .../caps_2.9.0.ppc64.replies | 118 ++++ .../caps_2.9.0.s390x.replies | 48 ++ .../caps_2.9.0.x86_64.replies | 184 ++++++ .../caps_3.0.0.ppc64.replies | 148 +++++ .../caps_3.0.0.riscv32.replies | 42 ++ .../caps_3.0.0.riscv64.replies | 42 ++ .../caps_3.0.0.s390x.replies | 68 +++ .../caps_3.0.0.x86_64.replies | 214 +++++++ .../caps_3.1.0.ppc64.replies | 153 +++++ .../caps_3.1.0.x86_64.replies | 224 +++++++ .../caps_4.0.0.aarch64.replies | 347 +++++++++++ .../caps_4.0.0.ppc64.replies | 158 +++++ .../caps_4.0.0.riscv32.replies | 42 ++ .../caps_4.0.0.riscv64.replies | 42 ++ .../caps_4.0.0.s390x.replies | 78 +++ .../caps_4.0.0.x86_64.replies | 224 +++++++ .../caps_4.1.0.x86_64.replies | 329 +++++++++++ .../caps_4.2.0.aarch64.replies | 556 ++++++++++++++++++ .../caps_4.2.0.ppc64.replies | 267 +++++++++ .../caps_4.2.0.s390x.replies | 132 +++++ .../caps_4.2.0.x86_64.replies | 389 ++++++++++++ 45 files changed, 6841 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index d2f307f6a9..1dedcbe5ad 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -4724,7 +4724,8 @@ virQEMUCapsInitQMPMonitorTCG(virQEMUCapsPtr qemuCaps, if (virQEMUCapsProbeQMPHostCPU(qemuCaps, accel, mon, VIR_DOMAIN_VIRT_Q= EMU) < 0) return -1; =20 - virQEMUCapsAccelCopyMachineTypes(&qemuCaps->tcg, &qemuCaps->kvm); + if (virQEMUCapsProbeQMPMachineTypes(qemuCaps, accel, mon) < 0) + return -1; =20 return 0; } diff --git a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.replies b/tests/q= emucapabilitiesdata/caps_1.5.3.x86_64.replies index a62b4e98f4..e74273e0d3 100644 --- a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.replies @@ -3145,3 +3145,81 @@ ], "id": "libvirt-2" } + +{ + "execute": "query-machines", + "id": "libvirt-3" +} + +{ + "return": [ + { + "name": "pc-q35-1.4", + "cpu-max": 255 + }, + { + "name": "pc-q35-1.5", + "cpu-max": 255, + "alias": "q35" + }, + { + "name": "isapc", + "cpu-max": 1 + }, + { + "name": "pc-0.10", + "cpu-max": 255 + }, + { + "name": "pc-0.11", + "cpu-max": 255 + }, + { + "name": "pc-0.12", + "cpu-max": 255 + }, + { + "name": "pc-0.13", + "cpu-max": 255 + }, + { + "name": "pc-0.14", + "cpu-max": 255 + }, + { + "name": "pc-0.15", + "cpu-max": 255 + }, + { + "name": "pc-1.0", + "cpu-max": 255 + }, + { + "name": "pc-1.1", + "cpu-max": 255 + }, + { + "name": "pc-1.2", + "cpu-max": 255 + }, + { + "name": "pc-1.3", + "cpu-max": 255 + }, + { + "name": "pc-i440fx-1.4", + "cpu-max": 255 + }, + { + "name": "pc-i440fx-1.5", + "is-default": true, + "cpu-max": 255, + "alias": "pc" + }, + { + "name": "none", + "cpu-max": 1 + } + ], + "id": "libvirt-3" +} ... -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960613; cv=none; d=zoho.com; s=zohoarc; b=HmFfAPjUip9bTFxI5uoiRgs3jJGIZwhRuQzh0VtV6piT/KYDdx9Vpkc4XLhkupSlYkQBfzEI8dgn1rkL/bS92hLzrnwCDrLRBy5pOhGGh5DzYYHf/Sbga/7LF3jPSx87DqnXtlcqRJ9DT5+MejN6M4gU1Q4NbuiXMEHXe1IAccQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960613; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=HQOK3yB8u2KvQ7M5b7I8zP6Eg2ZhAvczgwDtwygXWKM=; b=RanmYaaRcif+7mpd5Ojs4D05oizp6rSCwB6IPuzECIwcIu7A46plMP/aeoR5O/oiTXf2OfDkcEMDW4OXrcQnlFif6aYmsA0elZ2gqRH4ISU2q5wGkOrrS3cAiiXP6VbGsrEBUyPWxfwYizm0rNOYSWP4L2QkgwMDNBFwrt5m0SE= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960613683948.0153243258899; Tue, 5 Nov 2019 05:30:13 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-393-WfpeZj3TP-akZBD2BO64cg-1; Tue, 05 Nov 2019 08:29:03 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B71A180B72D; Tue, 5 Nov 2019 13:28:56 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 82157600C8; Tue, 5 Nov 2019 13:28:56 +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 338174E9EB; Tue, 5 Nov 2019 13:28:56 +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 xA5DS490004143 for ; Tue, 5 Nov 2019 08:28:04 -0500 Received: by smtp.corp.redhat.com (Postfix) id 475E627065; Tue, 5 Nov 2019 13:28:04 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9FF4B27066 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 50ADA105D85; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960612; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=HQOK3yB8u2KvQ7M5b7I8zP6Eg2ZhAvczgwDtwygXWKM=; b=extq6AM7Kfls2hKVewL8fribH6A+cmyqrKliAPNK87CH24j6flx+VqX/WHcn6hYe+qEZtK JRjYcrqXWt9CcUuVUqrFyD5VwpbzEoAmDmNjaQrgRa6cujeXgkBnyz3oa+5G+hycrwQhgA 83nWg5zf2mpPPutHck6VBAmEOIgoRXQ= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:41 +0100 Message-Id: <441e64a07b7563423427ba3d14810c9729afdcce.1572958255.git.jdenemar@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 v3 43/52] qemu: Probe for default CPU types 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: WfpeZj3TP-akZBD2BO64cg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" QEMU 4.2.0 will report default CPU types used by each machine type and we will want to start using it. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change except for updated test results =20 Version 3: - TCG and KVM are probed separately now src/qemu/qemu_capabilities.c | 8 + src/qemu/qemu_monitor.c | 1 + src/qemu/qemu_monitor.h | 1 + src/qemu/qemu_monitor_json.c | 12 ++ .../caps_4.2.0.aarch64.xml | 188 +++++++++--------- .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 116 +++++------ .../qemucapabilitiesdata/caps_4.2.0.s390x.xml | 56 +++--- .../caps_4.2.0.x86_64.xml | 184 ++++++++--------- 8 files changed, 294 insertions(+), 272 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 1dedcbe5ad..dc2723d025 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -558,6 +558,7 @@ struct _virQEMUCapsMachineType { unsigned int maxCpus; bool hotplugCpus; bool qemuDefault; + char *defaultCPU; }; =20 typedef struct _virQEMUCapsHostCPUData virQEMUCapsHostCPUData; @@ -1708,6 +1709,7 @@ virQEMUCapsAccelCopyMachineTypes(virQEMUCapsAccelPtr = dst, for (i =3D 0; i < src->nmachineTypes; i++) { dst->machineTypes[i].name =3D g_strdup(src->machineTypes[i].name); dst->machineTypes[i].alias =3D g_strdup(src->machineTypes[i].alias= ); + dst->machineTypes[i].defaultCPU =3D g_strdup(src->machineTypes[i].= defaultCPU); dst->machineTypes[i].maxCpus =3D src->machineTypes[i].maxCpus; dst->machineTypes[i].hotplugCpus =3D src->machineTypes[i].hotplugC= pus; dst->machineTypes[i].qemuDefault =3D src->machineTypes[i].qemuDefa= ult; @@ -1787,6 +1789,7 @@ virQEMUCapsAccelClear(virQEMUCapsAccelPtr caps) for (i =3D 0; i < caps->nmachineTypes; i++) { VIR_FREE(caps->machineTypes[i].name); VIR_FREE(caps->machineTypes[i].alias); + VIR_FREE(caps->machineTypes[i].defaultCPU); } VIR_FREE(caps->machineTypes); =20 @@ -2424,6 +2427,7 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCa= ps, =20 mach->alias =3D g_strdup(machines[i]->alias); mach->name =3D g_strdup(machines[i]->name); + mach->defaultCPU =3D g_strdup(machines[i]->defaultCPU); =20 mach->maxCpus =3D machines[i]->maxCpus; mach->hotplugCpus =3D machines[i]->hotplugCpus; @@ -3642,6 +3646,8 @@ virQEMUCapsLoadMachines(virQEMUCapsAccelPtr caps, if (STREQ_NULLABLE(str, "yes")) caps->machineTypes[i].qemuDefault =3D true; VIR_FREE(str); + + caps->machineTypes[i].defaultCPU =3D virXMLPropString(nodes[i], "d= efaultCPU"); } =20 return 0; @@ -4082,6 +4088,8 @@ virQEMUCapsFormatMachines(virQEMUCapsAccelPtr caps, caps->machineTypes[i].maxCpus); if (caps->machineTypes[i].qemuDefault) virBufferAddLit(buf, " default=3D'yes'"); + virBufferEscapeString(buf, " defaultCPU=3D'%s'", + caps->machineTypes[i].defaultCPU); virBufferAddLit(buf, "/>\n"); } } diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index a1cdb19318..1f07b2aeae 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -3547,6 +3547,7 @@ qemuMonitorMachineInfoFree(qemuMonitorMachineInfoPtr = machine) return; VIR_FREE(machine->name); VIR_FREE(machine->alias); + VIR_FREE(machine->defaultCPU); VIR_FREE(machine); } =20 diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h index 824b580344..912ff15738 100644 --- a/src/qemu/qemu_monitor.h +++ b/src/qemu/qemu_monitor.h @@ -1096,6 +1096,7 @@ struct _qemuMonitorMachineInfo { char *alias; unsigned int maxCpus; bool hotplugCpus; + char *defaultCPU; }; =20 int qemuMonitorGetMachines(qemuMonitorPtr mon, diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index 3f3bfc1720..1680e3a5fe 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -5555,6 +5555,18 @@ int qemuMonitorJSONGetMachines(qemuMonitorPtr mon, =20 ignore_value(virJSONValueObjectGetBoolean(child, "hotpluggable-cpu= s", &info->hotplugCpus)); + + if (virJSONValueObjectHasKey(child, "default-cpu-type")) { + if (!(tmp =3D virJSONValueObjectGetString(child, "default-cpu-= type"))) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("query-machines reply has malformed " + "'default-cpu-type' data")); + goto cleanup; + } + + if (VIR_STRDUP(info->defaultCPU, tmp) < 0) + goto cleanup; + } } =20 ret =3D n; diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_4.2.0.aarch64.xml index 9a5bea3819..0acb9f9d66 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml @@ -209,76 +209,76 @@ - + - - - - + + + + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + - - - - - - + + + + + + - + - - - + + + - + - - - - - - + + + + + + - + - - - - + + + + - + - + - + @@ -316,76 +316,76 @@ - + - - - - + + + + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + - - - - - - + + + + + + - + - - - + + + - + - - - - - - + + + + + + - + - - - - + + + + - + - + - + diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_4.2.0.ppc64.xml index eca48b59d9..998e16ec6d 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml @@ -616,37 +616,37 @@ - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -1084,35 +1084,35 @@ - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml b/tests/qemuca= pabilitiesdata/caps_4.2.0.s390x.xml index b291deab44..902672bf71 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml @@ -371,20 +371,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -3342,18 +3342,18 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_4.2.0.x86_64.xml index 39b9db63fd..465db243eb 100644 --- a/tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml @@ -841,52 +841,52 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1950,50 +1950,50 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960605; cv=none; d=zoho.com; s=zohoarc; b=H3zC+Wq2FpQkf2GcxIMRwzId+Srqqqum4O8QyVZxoC2fKSbJTTmAIc8DieZVTx7/Gd3exRZ6q4CiP+ICqgYVsXHYjQdDBlxx+muqE5W1qWbyrx3thzdxYn00g4f0ftFHDWpRdpAm4AR/Q24boRXMLXYfSVDJRHTDjGpBwahMhdU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960605; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=L3ok80icdPZJiPEpTf0ZT3XlV25qy+qRGRQHQeu7N/w=; b=PR5TbUI+YSWkvT1MLLmDT5V7WpAUszvM0yEJs5OtaZjcMR61HiVlpN/WEpWNl7oz0zH3BJgJ8DfbfOGf0idKJvLUksfeWWvjSROVM5tSKQ8Ad5YM8aEYQtJKHXbvCBsg8RNb6hz1X3qbBrMT/qAXXAofgwUReQ0c1LsgU8GqGyk= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 1572960605853450.59851105261964; Tue, 5 Nov 2019 05:30:05 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-325-AqvG9XL3NfOFyX7RUm0agA-1; Tue, 05 Nov 2019 08:29:12 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 517A3DB24; Tue, 5 Nov 2019 13:29:07 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 24BF75C554; Tue, 5 Nov 2019 13:29: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 C00BE4EA4E; Tue, 5 Nov 2019 13:29:06 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2Y8004080 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3618C5C1B2; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0BE2E5C241 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 56BE4105D86; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960605; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=L3ok80icdPZJiPEpTf0ZT3XlV25qy+qRGRQHQeu7N/w=; b=GMR0aolGS7pFbEBbSfMCnxdpCGiyg+iyLAjXuPEUXf9EjzgQp7sHudEGo8r6SX05V8Bh7A oIzk4DkaOzjbsZJNIqbNH0suAAZXmk7dsLs+WCo5Ma9T9je6DStidffLXKnvYmA8rHjyvp zN9IpCNYhf84DMQ6xsirVqHvBBtwi80= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:42 +0100 Message-Id: <3344826524f1956714c36e3fecf267a29901be1c.1572958255.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 44/52] qemu: Introduce virQEMUCapsGetMachineDefaultCPU 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: AqvG9XL3NfOFyX7RUm0agA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - fix crash with CPUs without type =20 Version 3: - no change src/qemu/qemu_capabilities.c | 32 ++++++++++++++++++++++++++++++++ src/qemu/qemu_capabilities.h | 3 +++ 2 files changed, 35 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index dc2723d025..9829860d4d 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2195,6 +2195,38 @@ virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemu= Caps, } =20 =20 +const char * +virQEMUCapsGetMachineDefaultCPU(virQEMUCapsPtr qemuCaps, + const char *name, + virDomainVirtType type) +{ + virQEMUCapsAccelPtr accel =3D virQEMUCapsGetAccel(qemuCaps, type); + qemuMonitorCPUDefsPtr defs =3D accel->cpuModels; + const char *cpuType =3D NULL; + size_t i; + + if (!name || !defs) + return NULL; + + for (i =3D 0; i < accel->nmachineTypes; i++) { + if (STREQ(accel->machineTypes[i].name, name)) { + cpuType =3D accel->machineTypes[i].defaultCPU; + break; + } + } + + if (!cpuType) + return NULL; + + for (i =3D 0; i < defs->ncpus; i++) { + if (STREQ_NULLABLE(defs->cpus[i].type, cpuType)) + return defs->cpus[i].name; + } + + return NULL; +} + + /** * virQEMUCapsSetGICCapabilities: * @qemuCaps: QEMU capabilities diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index bc43b99579..f063d95048 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -609,6 +609,9 @@ int virQEMUCapsGetMachineMaxCpus(virQEMUCapsPtr qemuCap= s, bool virQEMUCapsGetMachineHotplugCpus(virQEMUCapsPtr qemuCaps, virDomainVirtType virtType, const char *name); +const char *virQEMUCapsGetMachineDefaultCPU(virQEMUCapsPtr qemuCaps, + const char *name, + virDomainVirtType type); =20 void virQEMUCapsFilterByMachineType(virQEMUCapsPtr qemuCaps, virDomainVirtType virtType, --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960606; cv=none; d=zoho.com; s=zohoarc; b=Zje2RtVDI2TYN0fMwz+9koMrqhsWCjbFN86VuXpgVyERNND26dSpCCHC7OfxGiwG0XhwEv4XEXYCOO33r6LQszuybxutAvOlWGnuK5OWgHc+bvNgTqb9CPyPYCgIeP7dNejZRhCgrFnNutpav1+dNCXGfbDxmBqWUmmQGbnsNS8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960606; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+XVaqfbkJqQeLe4Z8hk1bGRZypj56/U+qKfpLWZBWrE=; b=Kca7MRXg6XR8ZYquHUopQMGmGieSmR5fbC7ELYSVXTKVvj2sF5Jb+K9ft5QqieTzyNxGrKrLfmkdbs1KWCIz+gon5rPuNzygCzvWEdq3/HDAcEaLRBNnGjwWyg7JnW6wfbCUO2mK9zy3Zt/1KyALtWjPQqURP+onVJ9cuHL1NzE= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960606097735.2000548191438; Tue, 5 Nov 2019 05:30:06 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-400-q1TFHxQcNIe1wD0XI0y-Aw-1; Tue, 05 Nov 2019 08:29:17 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id DE50E1804971; Tue, 5 Nov 2019 13:29:11 +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 B0CD260E1C; Tue, 5 Nov 2019 13:29:11 +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 5B7A01802027; Tue, 5 Nov 2019 13:29:11 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2T4004083 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3E565600D3; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 12DC3600C4 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 5CF9D105D87; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960605; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=+XVaqfbkJqQeLe4Z8hk1bGRZypj56/U+qKfpLWZBWrE=; b=S1BMlqcVjwmIFk7P9gxzX+aZh0oAmrpLrJL/FFMpGER8WoAwYRy/GcckRq9hM2ujBg0jkh o0UM+PfIPweBhj9ZWzuZS2vDEELr2rsNqfV+akfSawfsqjVMvsdJOeLIqi8x9Mg4dY+/+E DM5WkAPnK8kuWLvjMdIPzBXn7+10JzA= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:43 +0100 Message-Id: <06e8c7e33d22584aa780a69c1ba461a361a1e893.1572958255.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 45/52] qemu: Use g_autoptr in qemuDomainDefPostParse 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: q1TFHxQcNIe1wD0XI0y-Aw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - g_autoptr src/qemu/qemu_domain.c | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 8627238c6a..7e470c602a 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4610,55 +4610,51 @@ qemuDomainDefPostParse(virDomainDefPtr def, void *parseOpaque) { virQEMUDriverPtr driver =3D opaque; - virQEMUDriverConfigPtr cfg =3D virQEMUDriverGetConfig(driver); + g_autoptr(virQEMUDriverConfig) cfg =3D virQEMUDriverGetConfig(driver); /* Note that qemuCaps may be NULL when this function is called. This * function shall not fail in that case. It will be re-run on VM start= up * with the capabilities populated. */ virQEMUCapsPtr qemuCaps =3D parseOpaque; - int ret =3D -1; =20 if (def->os.bootloader || def->os.bootloaderArgs) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("bootloader is not supported by QEMU")); - goto cleanup; + return -1; } =20 if (!def->os.machine) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing machine type")); - goto cleanup; + return -1; } =20 if (qemuDomainNVRAMPathGenerate(cfg, def) < 0) - goto cleanup; + return -1; =20 if (qemuDomainDefAddDefaultDevices(def, qemuCaps) < 0) - goto cleanup; + return -1; =20 if (qemuCanonicalizeMachine(def, qemuCaps) < 0) - goto cleanup; + return -1; =20 qemuDomainDefEnableDefaultFeatures(def, qemuCaps); =20 if (qemuDomainRecheckInternalPaths(def, cfg, parseFlags) < 0) - goto cleanup; + return -1; =20 if (qemuSecurityVerify(driver->securityManager, def) < 0) - goto cleanup; + return -1; =20 if (qemuDomainDefVcpusPostParse(def) < 0) - goto cleanup; + return -1; =20 if (qemuDomainDefCPUPostParse(def) < 0) - goto cleanup; + return -1; =20 if (qemuDomainDefTsegPostParse(def, qemuCaps) < 0) - goto cleanup; + return -1; =20 - ret =3D 0; - cleanup: - virObjectUnref(cfg); - return ret; + return 0; } =20 =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960623; cv=none; d=zoho.com; s=zohoarc; b=Yv9WenfRsY66HR3btqXGBdjLqOsSjGWwPNUl6qey58sfz5aqkqO8rFGWo3hSEbC1KwBOP+GNSOtgdOfGolhqI+iCJSzQxS5kX51dPSkqOwIsxqdTr+Yc2erbWIc+NBrJiL8btH6X/RZdGzkhNsdA5Let+XzMo423ObbB9mFx1tM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960623; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=CDd8BF1EIWY9ajnaJfb8B+qdBv27DWreorfxV2xUYeo=; b=B7gPVdK5R8+ppWRU0iswvCRVgCMb1nruMtE/OZ2Zotf22njq2wPoWLslu0E1Di84Fa+1biVRaN5jPF05pYJXyoHrq7VtPpA9ngpj+5o2u90ghqnuxYfCgSoy3dMoKNEeKNmPB5IDueNcclJT6O4H8LRE5FXNFspQWd8EruSC/JU= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960623688912.7315087849869; Tue, 5 Nov 2019 05:30:23 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-416-e-XYqa2rMa67QUbqZ4OK7w-1; Tue, 05 Nov 2019 08:29:17 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3B3C7DB23; Tue, 5 Nov 2019 13:29:11 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 06FDA600D5; Tue, 5 Nov 2019 13:29:11 +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 95B514EBC0; Tue, 5 Nov 2019 13:29:10 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2qV004092 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 4B6861001B35; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 20E5E1001902 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 6367B105D88; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960622; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=CDd8BF1EIWY9ajnaJfb8B+qdBv27DWreorfxV2xUYeo=; b=Jf/aeIvJFRQS2MalRBohvFaPGJmPyAT/hHdJ1PPCtk5RFj36Ot7y1UVx8QybOPUlizyPWm IToKq0itmcxqgv8wEbSFdKa7mmER9YLTyjcEkteYCCwCzu35cYYlIEkQZEVKZT8YzKzzDq +iNIgeNol5/1UeLxaO02CkxjqHCQptg= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:44 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 46/52] conf: Define g_autoptr cleanup function for virCPUDef 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: e-XYqa2rMa67QUbqZ4OK7w-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - no change =20 Version 3: - G_DEFINE_AUTOPTR_CLEANUP_FUNC src/conf/cpu_conf.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/conf/cpu_conf.h b/src/conf/cpu_conf.h index 30904fab95..892ed08653 100644 --- a/src/conf/cpu_conf.h +++ b/src/conf/cpu_conf.h @@ -151,6 +151,7 @@ virCPUDefFreeModel(virCPUDefPtr def); =20 void virCPUDefFree(virCPUDefPtr def); +G_DEFINE_AUTOPTR_CLEANUP_FUNC(virCPUDef, virCPUDefFree); =20 int ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2) virCPUDefCopyModel(virCPUDefPtr dst, --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) client-ip=205.139.110.61; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960607; cv=none; d=zoho.com; s=zohoarc; b=HCJCHEc3UqcC0aSwaIGxClOM3eRaCtgKgInn/kMAfkVgG25KrhSFnrlz97UT7tZjhbHyvCz3aex2YPOUZ2sGH0qjeS7NRJjyZvcM5Yj/Bls/gkCy82+o7A3EBmFhbZQExGCWKsQYAvrhReTale2O66oVsLPbyk3dPdER5dpFxvU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960607; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=WuZxDworlLbP1FTNe9H2INup/yXZXoV8k/LZRgFtF+c=; b=S8RXXj1kzkdNKnFcSKmvuIJ0c/il8RMbWQotnYXWlKDiTFVQ072h4eTe8jXMQHK/tBHxlejfKG8633M2VQ5nzlzm0UhBzYXCVDJ7WDQxbBX36Bjx+k18S4+TgnWLQ41vFaGtU+D91/BmN/MMkeDHq9PixcSX0JULuSpZXn3aSUA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.61 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by mx.zohomail.com with SMTPS id 1572960606991275.7616450069909; Tue, 5 Nov 2019 05:30:06 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-14-i6TOEB5wMS-Rj7hkNJfYfA-1; Tue, 05 Nov 2019 08:29:02 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 50FACDB2C; Tue, 5 Nov 2019 13:28:52 +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 27F75608B5; Tue, 5 Nov 2019 13:28:52 +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 D781618033AE; Tue, 5 Nov 2019 13:28:51 +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 xA5DS2xf004102 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 6D64727065; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 42E2E27064 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 699D2105D89; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960606; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=WuZxDworlLbP1FTNe9H2INup/yXZXoV8k/LZRgFtF+c=; b=bQtVnoIB9s0sDRspgPfnacMnOwp2wQZGZn65NxzvpcC5PyhWlPZXN+eRpOhCzhUF5JoW8k XJmDweAO30ItN5yddPfjLxrvvdz9P32880zGUMlzTvBLK0gfpurJecwRymjJ87DvIkB9tq rDCjYnYDU+ctarZuOS2yo6DcRWsjRO0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:45 +0100 Message-Id: <58e0ae6dd1f1b2041512a682dcaa295acadb21cc.1572958255.git.jdenemar@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 v3 47/52] qemuxml2argvtest: Update host arch for DO_TEST*ARCH* tests 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-MC-Unique: i6TOEB5wMS-Rj7hkNJfYfA-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" To avoid mismatch between host and QEMU capabilities. Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 3: - new patch tests/qemuxml2argvtest.c | 4 ++++ tests/testutilsqemu.c | 6 +++--- tests/testutilsqemu.h | 1 + 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index fd330df3e0..7c00c72aff 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -717,9 +717,13 @@ mymain(void) VIR_TEST_DEBUG("Failed to generate paths for '%s'", _name); \ return EXIT_FAILURE; \ } \ + if (info.arch !=3D VIR_ARCH_NONE && info.arch !=3D VIR_ARCH_X86_64= ) \ + qemuTestSetHostArch(driver.caps, info.arch); \ if (virTestRun("QEMU XML-2-ARGV " _name _suffix, \ testCompareXMLToArgv, &info) < 0) \ ret =3D -1; \ + if (info.arch !=3D VIR_ARCH_NONE && info.arch !=3D VIR_ARCH_X86_64= ) \ + qemuTestSetHostArch(driver.caps, VIR_ARCH_NONE); \ testQemuInfoClear(&info); \ } while (0) =20 diff --git a/tests/testutilsqemu.c b/tests/testutilsqemu.c index 54d6b1a0ac..ba9b56003a 100644 --- a/tests/testutilsqemu.c +++ b/tests/testutilsqemu.c @@ -1061,6 +1061,8 @@ testQemuInfoSetArgs(struct testQemuInfo *info, if (!qemuCaps && capsarch && capsver) { bool stripmachinealiases =3D false; =20 + info->arch =3D virArchFromString(capsarch); + if (STREQ(capsver, "latest")) { capsfile =3D g_strdup(virHashLookup(capslatest, capsarch)); stripmachinealiases =3D true; @@ -1069,10 +1071,8 @@ testQemuInfoSetArgs(struct testQemuInfo *info, goto cleanup; } =20 - if (!(qemuCaps =3D qemuTestParseCapabilitiesArch(virArchFromString= (capsarch), - capsfile))) { + if (!(qemuCaps =3D qemuTestParseCapabilitiesArch(info->arch, capsf= ile))) goto cleanup; - } =20 if (stripmachinealiases) virQEMUCapsStripMachineAliases(qemuCaps); diff --git a/tests/testutilsqemu.h b/tests/testutilsqemu.h index 714a95bb7a..da3bf3ab7a 100644 --- a/tests/testutilsqemu.h +++ b/tests/testutilsqemu.h @@ -63,6 +63,7 @@ struct testQemuInfo { int migrateFd; unsigned int flags; unsigned int parseFlags; + virArch arch; }; =20 virCapsPtr testQemuCapsInit(void); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960568; cv=none; d=zoho.com; s=zohoarc; b=gOJ+kd3mHKufZ9Udk3AUj3qR8rqSDDf8yYazGk8CToJeif0HSyqZVUU8gFsV4Q8B9Udb/wl1mHqsxv672inYWxjBLshyCzFTDXTuLyq1X0XX1yNFKkxIO7NB6sLYiWzL4rn8khHLwZIa45QfVKIqZIhtOQhlFETgHGrfat+WdO8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960568; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=obp1m3/bibjvo177YaVW1EoGTHEx1hVw8Fj/xS5Nsl4=; b=MZW5He/cMF3CbNuNSoCM5VmJBmTPiEZj+g7O4KAgQ10LA/XpvMGltZF1GPOBKAEo7p+N+ECH8pby34SVbERsMZHIAQDBd9LT6CNYrl6iz9SIeEbQ2e3H8bsSHq5penkmP+3STJrFbpb9wjVDH/1WRX4M/7gOVFdzYZ0OkFNI3y0= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1572960568939275.34108932714423; Tue, 5 Nov 2019 05:29:28 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-31-hRzwxLVXOE-xwhXXfqizxQ-1; Tue, 05 Nov 2019 08:29:25 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A20901804973; Tue, 5 Nov 2019 13:29:20 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7AF605C6DC; Tue, 5 Nov 2019 13:29:20 +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 3634B4EDB1; Tue, 5 Nov 2019 13:29:20 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2jN004107 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 967EC5C241; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 458C65C1B2 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 70558105D8A; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960567; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=obp1m3/bibjvo177YaVW1EoGTHEx1hVw8Fj/xS5Nsl4=; b=OjVkOPaIChpLbPRiE/mtwA1Cp4udiMER3Rq4EGmqmPkPrVYvBfi1ZKs6cVca9K0wGcEcBk j7wQDoIzg5kgJxjyE92pRK6y2HxLxvlmFRb+jxSB309Nv6vejTFb0l022/fmLZTuGOev6b oVNz4tmCLCPv3Db7EIyv4LT+mgaQ6n0= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:46 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 48/52] qemuxml2*test: Add test cases for default CPU models on aarch64 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: hRzwxLVXOE-xwhXXfqizxQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - no change ...fault-cpu-kvm-virt-4.2.aarch64-latest.args | 38 +++++++++++++++++++ .../aarch64-default-cpu-kvm-virt-4.2.xml | 20 ++++++++++ ...fault-cpu-tcg-virt-4.2.aarch64-latest.args | 38 +++++++++++++++++++ .../aarch64-default-cpu-tcg-virt-4.2.xml | 20 ++++++++++ tests/qemuxml2argvtest.c | 3 ++ ...efault-cpu-kvm-virt-4.2.aarch64-latest.xml | 38 +++++++++++++++++++ ...efault-cpu-tcg-virt-4.2.aarch64-latest.xml | 38 +++++++++++++++++++ tests/qemuxml2xmltest.c | 3 ++ 8 files changed, 198 insertions(+) create mode 100644 tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2= .aarch64-latest.args create mode 100644 tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2= .xml create mode 100644 tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2= .aarch64-latest.args create mode 100644 tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2= .xml create mode 100644 tests/qemuxml2xmloutdata/aarch64-default-cpu-kvm-virt-4= .2.aarch64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4= .2.aarch64-latest.xml diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aarch6= 4-latest.args b/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aar= ch64-latest.args new file mode 100644 index 0000000000..fe33d5410a --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aarch64-lates= t.args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-aarch64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine virt-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff,gic-version= =3D3 \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-no-acpi \ +-boot strict=3Don \ +-device pcie-root-port,port=3D0x8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,mult= ifunction=3Don,\ +addr=3D0x1 \ +-device pcie-root-port,port=3D0x9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.1,addr=3D0x0,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.xml b/= tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.xml new file mode 100644 index 0000000000..1267306ebf --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.xml @@ -0,0 +1,20 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 1 + + hvm + + + + + /usr/bin/qemu-system-aarch64 + + + + + + + diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch6= 4-latest.args b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aar= ch64-latest.args new file mode 100644 index 0000000000..5ecbe1fdd6 --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lates= t.args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-aarch64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine virt-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff,gic-version= =3D2 \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-no-acpi \ +-boot strict=3Don \ +-device pcie-root-port,port=3D0x8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,mult= ifunction=3Don,\ +addr=3D0x1 \ +-device pcie-root-port,port=3D0x9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.1,addr=3D0x0,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.xml b/= tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.xml new file mode 100644 index 0000000000..20ef1228ce --- /dev/null +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.xml @@ -0,0 +1,20 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 1 + + hvm + + + + + /usr/bin/qemu-system-aarch64 + + + + + + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 7c00c72aff..5a621b7b3c 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -3022,6 +3022,9 @@ mymain(void) DO_TEST_CAPS_LATEST("vhost-user-vga"); DO_TEST_CAPS_LATEST("vhost-user-gpu-secondary"); =20 + DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-kvm-virt-4.2", "aarch64"= ); + DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-tcg-virt-4.2", "aarch64"= ); + if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); =20 diff --git a/tests/qemuxml2xmloutdata/aarch64-default-cpu-kvm-virt-4.2.aarc= h64-latest.xml b/tests/qemuxml2xmloutdata/aarch64-default-cpu-kvm-virt-4.2.= aarch64-latest.xml new file mode 100644 index 0000000000..efbe726758 --- /dev/null +++ b/tests/qemuxml2xmloutdata/aarch64-default-cpu-kvm-virt-4.2.aarch64-lat= est.xml @@ -0,0 +1,38 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 1 + + hvm + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-aarch64 + + + + +
+ + + + + +
+ + + + +
+ + + diff --git a/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.aarc= h64-latest.xml b/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.= aarch64-latest.xml new file mode 100644 index 0000000000..1f4104857a --- /dev/null +++ b/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lat= est.xml @@ -0,0 +1,38 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 1 + + hvm + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-aarch64 + + + + +
+ + + + + +
+ + + + +
+ + + diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 89c9494e6c..9d7cacc321 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1339,6 +1339,9 @@ mymain(void) DO_TEST_CAPS_ARCH_LATEST("x86_64-pc-graphics", "x86_64"); DO_TEST_CAPS_ARCH_LATEST("x86_64-q35-graphics", "x86_64"); =20 + DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-kvm-virt-4.2", "aarch64"= ); + DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-tcg-virt-4.2", "aarch64"= ); + if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); =20 --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960800; cv=none; d=zoho.com; s=zohoarc; b=hewwlHa0oATXsEJDvytVONf2uIKYHrIYd53NCInQ7A70vXNwPsNPUmiROfexAywsmPC4fIsNXEiop68vNYlRZmhXD5m+LdumEuPYiRufP1+1I6zp0jCP216kLyrINwvyQdyz5O2EZWULi3wO2JRz22ARA4n4EReT55GbgT1a7AQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960800; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YEXkJKhF7aeGQKgIk9rTbBvLJ4GpU+HLfu7aUUulSi8=; b=TvfvUFtrT9afTc+82SR9N0T5kHFTdc6Rl69JxBiA+BD7bBZSf0jt3uLxZ3KR9F9ZVb4NdXt0EP1LLbx+hgu8dGmTD51egEgiTzCqrEYFxwx2bDoS9EQ+vUpilXTIOUHcqmWsDE+4oLBvTuMdCmUwOD+vkb4Aj/+eoGGTPasQzeM= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960800528932.2235972898501; Tue, 5 Nov 2019 05:33:20 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-66-XI2WVLBUPFi9r82IaiI9eg-1; Tue, 05 Nov 2019 08:33:17 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9BA088017DD; Tue, 5 Nov 2019 13:33:12 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 53D6F5C1B2; Tue, 5 Nov 2019 13:33:11 +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 B679D4BB78; Tue, 5 Nov 2019 13:33:09 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DX8bR005709 for ; Tue, 5 Nov 2019 08:33:08 -0500 Received: by smtp.corp.redhat.com (Postfix) id 0507260C88; Tue, 5 Nov 2019 13:33:08 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5C15360E1C for ; Tue, 5 Nov 2019 13:33:03 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 785B1105D8B; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960799; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=YEXkJKhF7aeGQKgIk9rTbBvLJ4GpU+HLfu7aUUulSi8=; b=S4BYz9w9pGz2OBqasi9Gbh6/lV99V5pv9bcRA1sUNnAX3GKougKCUWGJbSvFYyGnYGT5uT 7GnVgEbkqunqB2aQkz+U9EzeSXSP5mQQP6eyh2ub3VqVA8G+TPHsm96BooRwUzjfOgwPoH vYYna9SFK0f9pwXEoK6G3oRB+xFrW+I= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:47 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 49/52] qemuxml2*test: Add test cases for default CPU models on ppc64 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: XI2WVLBUPFi9r82IaiI9eg-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - no change ...ault-cpu-kvm-pseries-2.7.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-kvm-pseries-2.7.xml | 22 +++++++++ ...ault-cpu-kvm-pseries-3.1.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-kvm-pseries-3.1.xml | 22 +++++++++ ...ault-cpu-kvm-pseries-4.2.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-kvm-pseries-4.2.xml | 22 +++++++++ ...ault-cpu-tcg-pseries-2.7.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-tcg-pseries-2.7.xml | 22 +++++++++ ...ault-cpu-tcg-pseries-3.1.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-tcg-pseries-3.1.xml | 22 +++++++++ ...ault-cpu-tcg-pseries-4.2.ppc64-latest.args | 38 ++++++++++++++++ .../ppc64-default-cpu-tcg-pseries-4.2.xml | 22 +++++++++ tests/qemuxml2argvtest.c | 6 +++ ...fault-cpu-kvm-pseries-2.7.ppc64-latest.xml | 45 +++++++++++++++++++ ...fault-cpu-kvm-pseries-3.1.ppc64-latest.xml | 45 +++++++++++++++++++ ...fault-cpu-kvm-pseries-4.2.ppc64-latest.xml | 45 +++++++++++++++++++ ...fault-cpu-tcg-pseries-2.7.ppc64-latest.xml | 45 +++++++++++++++++++ ...fault-cpu-tcg-pseries-3.1.ppc64-latest.xml | 45 +++++++++++++++++++ ...fault-cpu-tcg-pseries-4.2.ppc64-latest.xml | 45 +++++++++++++++++++ tests/qemuxml2xmltest.c | 6 +++ 20 files changed, 642 insertions(+) create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.= 7.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.= 7.xml create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.= 1.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.= 1.xml create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.= 2.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.= 2.xml create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.= 7.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.= 7.xml create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.= 1.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.= 1.xml create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.= 2.ppc64-latest.args create mode 100644 tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.= 2.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-= 2.7.ppc64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-= 3.1.ppc64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-= 4.2.ppc64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-= 2.7.ppc64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-= 3.1.ppc64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-= 4.2.ppc64-latest.xml diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc= 64-latest.args new file mode 100644 index 0000000000..d264659d49 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-2.7,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.xml new file mode 100644 index 0000000000..9aac1815c4 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc= 64-latest.args new file mode 100644 index 0000000000..88f3b4ba26 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-3.1,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.xml new file mode 100644 index 0000000000..820b5bdf1c --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc= 64-latest.args new file mode 100644 index 0000000000..ea27f424cb --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.xml new file mode 100644 index 0000000000..df89d1c1be --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc= 64-latest.args new file mode 100644 index 0000000000..c97fa531ae --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-2.7,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.xml new file mode 100644 index 0000000000..3e873becc6 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc= 64-latest.args new file mode 100644 index 0000000000..fbad53b0fb --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-3.1,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.xml new file mode 100644 index 0000000000..747de38584 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc= 64-latest.args new file mode 100644 index 0000000000..4222d4d4aa --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest= .args @@ -0,0 +1,38 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-ppc64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pseries-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pci-ohci,id=3Dusb,bus=3Dpci.0,addr=3D0x1 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-chardev pty,id=3Dcharserial0 \ +-device spapr-vty,chardev=3Dcharserial0,id=3Dserial0,reg=3D0x30000000 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.xml b= /tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.xml new file mode 100644 index 0000000000..1e2fef3313 --- /dev/null +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.xml @@ -0,0 +1,22 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + /usr/bin/qemu-system-ppc64 + + + + + + + + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 5a621b7b3c..814cacb70b 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -3024,6 +3024,12 @@ mymain(void) =20 DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-kvm-virt-4.2", "aarch64"= ); DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-tcg-virt-4.2", "aarch64"= ); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-2.7", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-2.7", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-3.1", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-3.1", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-4.2", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.= ppc64-latest.xml new file mode 100644 index 0000000000..d0bff449c1 --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.= ppc64-latest.xml new file mode 100644 index 0000000000..add48334e7 --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.= ppc64-latest.xml new file mode 100644 index 0000000000..9c02766b71 --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.= ppc64-latest.xml new file mode 100644 index 0000000000..fc1714a17e --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.= ppc64-latest.xml new file mode 100644 index 0000000000..f40f3be155 --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.= ppc64-latest.xml new file mode 100644 index 0000000000..9582223550 --- /dev/null +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-late= st.xml @@ -0,0 +1,45 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-ppc64 + + + + +
+ + +
+ + + + + + + + + +
+ + + +
+ + +
+ + + + diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 9d7cacc321..fae023d27a 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1341,6 +1341,12 @@ mymain(void) =20 DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-kvm-virt-4.2", "aarch64"= ); DO_TEST_CAPS_ARCH_LATEST("aarch64-default-cpu-tcg-virt-4.2", "aarch64"= ); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-2.7", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-2.7", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-3.1", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-3.1", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-4.2", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960563; cv=none; d=zoho.com; s=zohoarc; b=oVgfln5dO+lYSmGYCtOCq46rwcsrK2W2Vnsmona/AfbcvquHlH2wDVhArdz5ETj99jWZjbeW+fPKCu0gCg59FTORmT8+3uEEM80Lm7FWsJ9pm+szX0a4aKHdkO2SBt1UsnbosyaqdBcUFUmqc6CXKhJFUBaQ4Jd6N84vPuTsFhQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960563; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mVvg52UHt7o8LE3B+IlR0FjYRDIZFLchja3Cpl5DU2I=; b=BwGABqy3MZo58DbGDuRnWgL/bM8K3N5z+Fk94HcVIhlB44kvm6Z58PuVdkSWl6X/9c5UBxDsaq9qXS8J5oORGkRo5MmSMsX1F1Iy4amdsA1O4fIUndTViy68J1HwIm3kTYDZn2jdC/utkL/+WKFFZFVNO5wZmyfMmUo0JEcq1pE= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 157296056327468.1862685583643; Tue, 5 Nov 2019 05:29:23 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-434-cXKdV4hhMIiUwiaddlMY9g-1; Tue, 05 Nov 2019 08:29:20 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5C922DB25; Tue, 5 Nov 2019 13:29:15 +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 2A71A60C88; Tue, 5 Nov 2019 13:29:15 +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 D4678180202B; Tue, 5 Nov 2019 13:29:14 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS2W7004114 for ; Tue, 5 Nov 2019 08:28:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id AECA85D727; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5DC2E5D726 for ; Tue, 5 Nov 2019 13:28:02 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 7F228105D8C; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960562; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=mVvg52UHt7o8LE3B+IlR0FjYRDIZFLchja3Cpl5DU2I=; b=HlyL4tNvRhzDKyjt1gzjQs4y49Uel3Nb42vEUqYOu7kdScyeYnHGxuaZcdP2RPcwdVcl2x PSEQc+7N2nPXQmk3RABeJJsZp36RSMVx129HvNsqSYn1o8TAUP4lQckzETFoeKebPeqNoQ T4eytOJMKjiHvvkf5dFRsmJsNPnn8VU= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:48 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 50/52] qemuxml2*test: Add test cases for default CPU models on s390x 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-MC-Unique: cXKdV4hhMIiUwiaddlMY9g-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - no change ...t-cpu-kvm-ccw-virtio-4.2.s390x-latest.args | 31 +++++++++++++++++++ .../s390-default-cpu-kvm-ccw-virtio-4.2.xml | 16 ++++++++++ ...t-cpu-tcg-ccw-virtio-4.2.s390x-latest.args | 31 +++++++++++++++++++ .../s390-default-cpu-tcg-ccw-virtio-4.2.xml | 16 ++++++++++ tests/qemuxml2argvtest.c | 2 ++ ...lt-cpu-kvm-ccw-virtio-4.2.s390x-latest.xml | 23 ++++++++++++++ ...lt-cpu-tcg-ccw-virtio-4.2.s390x-latest.xml | 23 ++++++++++++++ tests/qemuxml2xmltest.c | 2 ++ 8 files changed, 144 insertions(+) create mode 100644 tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-= 4.2.s390x-latest.args create mode 100644 tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-= 4.2.xml create mode 100644 tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-= 4.2.s390x-latest.args create mode 100644 tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-= 4.2.xml create mode 100644 tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virti= o-4.2.s390x-latest.xml create mode 100644 tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virti= o-4.2.s390x-latest.xml diff --git a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s39= 0x-latest.args b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2= .s390x-latest.args new file mode 100644 index 0000000000..d45a87e6ec --- /dev/null +++ b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-late= st.args @@ -0,0 +1,31 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-test \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-test/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-test/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-test/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-s390x \ +-name guest=3Dtest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-test/master-key.aes \ +-machine s390-ccw-virtio-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 256 \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 9aa4b45c-b9dd-45ef-91fe-862b27b4231f \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device virtio-balloon-ccw,id=3Dballoon0,devno=3Dfe.0.0000 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.xml= b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.xml new file mode 100644 index 0000000000..405b53db7d --- /dev/null +++ b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.xml @@ -0,0 +1,16 @@ + + test + 9aa4b45c-b9dd-45ef-91fe-862b27b4231f + 262144 + 262144 + + hvm + + + destroy + restart + destroy + + /usr/bin/qemu-system-s390x + + diff --git a/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.s39= 0x-latest.args b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2= .s390x-latest.args new file mode 100644 index 0000000000..3d31148613 --- /dev/null +++ b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-late= st.args @@ -0,0 +1,31 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-test \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-test/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-test/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-test/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-s390x \ +-name guest=3Dtest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-test/master-key.aes \ +-machine s390-ccw-virtio-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 256 \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 9aa4b45c-b9dd-45ef-91fe-862b27b4231f \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device virtio-balloon-ccw,id=3Dballoon0,devno=3Dfe.0.0000 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.xml= b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.xml new file mode 100644 index 0000000000..c6c92bb08a --- /dev/null +++ b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.xml @@ -0,0 +1,16 @@ + + test + 9aa4b45c-b9dd-45ef-91fe-862b27b4231f + 262144 + 262144 + + hvm + + + destroy + restart + destroy + + /usr/bin/qemu-system-s390x + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 814cacb70b..721b5e0373 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -3030,6 +3030,8 @@ mymain(void) DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-3.1", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-4.2", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-kvm-ccw-virtio-4.2", "s390x= "); + DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-tcg-ccw-virtio-4.2", "s390x= "); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); diff --git a/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-4.2.s= 390x-latest.xml b/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-= 4.2.s390x-latest.xml new file mode 100644 index 0000000000..b35de63ab3 --- /dev/null +++ b/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-la= test.xml @@ -0,0 +1,23 @@ + + test + 9aa4b45c-b9dd-45ef-91fe-862b27b4231f + 262144 + 262144 + 1 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-s390x + + +
+ + + + diff --git a/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-4.2.s= 390x-latest.xml b/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-= 4.2.s390x-latest.xml new file mode 100644 index 0000000000..55149d4a78 --- /dev/null +++ b/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-la= test.xml @@ -0,0 +1,23 @@ + + test + 9aa4b45c-b9dd-45ef-91fe-862b27b4231f + 262144 + 262144 + 1 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu-system-s390x + + +
+ + + + diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index fae023d27a..0a1598aeea 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1347,6 +1347,8 @@ mymain(void) DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-3.1", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-kvm-pseries-4.2", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); + DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-kvm-ccw-virtio-4.2", "s390x= "); + DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-tcg-ccw-virtio-4.2", "s390x= "); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) client-ip=207.211.31.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960803; cv=none; d=zoho.com; s=zohoarc; b=QE/PRi7+FUBAQR0hsaaEXx40MxRAvHDUACT3tFW416oyjZ3X63kSR5qe1WIzsOMXvJXRnqv1qFK1UztDmz+Bzw87KEfX1FHnBGrsQHsxBdNFidj1NfiXbORgxKGUAtPS/wWdQxckCXxhM71kjmpqHpbN7kwS0K9tC5ef3I47ixk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960803; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=yfhuMSswiocfz2ynDyS+drGNGBZzc68ZON8XRmfX310=; b=P7lPqADOFyqbZhEEq+4uCOT+VT2cwNS6jRKgXQqQC7n2FWul6qURloUM9e4st/5jAI98jqrDTWPTPbYRuItNw+YG3bZvhsACcOh6M25y5zzc8Cq3MwWJaaLZ/VQkCyu7K8gxZfnS/VnvaO/4JP7DTj6Bfa0m8zLAglsYoVMWQQk= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by mx.zohomail.com with SMTPS id 157296080335490.52676291484158; Tue, 5 Nov 2019 05:33:23 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-31-_HHIMwyPPFmTHhDY0FmYPQ-1; Tue, 05 Nov 2019 08:33:20 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 97431801E54; Tue, 5 Nov 2019 13:33:15 +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 6B2DF5C553; Tue, 5 Nov 2019 13:33:15 +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 2597A18005AB; Tue, 5 Nov 2019 13:33:15 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DXENa005739 for ; Tue, 5 Nov 2019 08:33:14 -0500 Received: by smtp.corp.redhat.com (Postfix) id 992745C241; Tue, 5 Nov 2019 13:33:14 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 241785C1B2 for ; Tue, 5 Nov 2019 13:33:03 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 86A65105E44; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960802; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=yfhuMSswiocfz2ynDyS+drGNGBZzc68ZON8XRmfX310=; b=IABfFbdXlv75sn9qCgRFoxe3h8SiwfoKCh+mvdFYPMQielhsrmfODYyt5BnQHmdGt0Jm3L BfGaI+tU1+ykgvt2mC3gzGkOr9cvDIwdKnxABKMrePIzdNrk4YhaVDldIgQUstY1BqvydY B2C0rfHlZeL7mFOkx4Tmx/bEU6HssNQ= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:49 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 51/52] qemuxml2*test: Add test cases for default CPU models on x86_64 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: _HHIMwyPPFmTHhDY0FmYPQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new patch =20 Version 3: - no change ...-default-cpu-kvm-pc-4.2.x86_64-latest.args | 36 +++++++++++ .../x86_64-default-cpu-kvm-pc-4.2.xml | 24 ++++++++ ...default-cpu-kvm-q35-4.2.x86_64-latest.args | 41 +++++++++++++ .../x86_64-default-cpu-kvm-q35-4.2.xml | 24 ++++++++ ...-default-cpu-tcg-pc-4.2.x86_64-latest.args | 36 +++++++++++ .../x86_64-default-cpu-tcg-pc-4.2.xml | 24 ++++++++ ...default-cpu-tcg-q35-4.2.x86_64-latest.args | 41 +++++++++++++ .../x86_64-default-cpu-tcg-q35-4.2.xml | 24 ++++++++ tests/qemuxml2argvtest.c | 4 ++ ...4-default-cpu-kvm-pc-4.2.x86_64-latest.xml | 37 ++++++++++++ ...-default-cpu-kvm-q35-4.2.x86_64-latest.xml | 60 +++++++++++++++++++ ...4-default-cpu-tcg-pc-4.2.x86_64-latest.xml | 37 ++++++++++++ ...-default-cpu-tcg-q35-4.2.x86_64-latest.xml | 60 +++++++++++++++++++ tests/qemuxml2xmltest.c | 4 ++ 14 files changed, 452 insertions(+) create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x8= 6_64-latest.args create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.xml create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x= 86_64-latest.args create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x= ml create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x8= 6_64-latest.args create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.xml create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x= 86_64-latest.args create mode 100644 tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x= ml create mode 100644 tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.= x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2= .x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.= x86_64-latest.xml create mode 100644 tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2= .x86_64-latest.xml diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-la= test.args b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-lat= est.args new file mode 100644 index 0000000000..c7bef11f22 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.ar= gs @@ -0,0 +1,36 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-x86_64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pc-i440fx-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device piix3-usb-uhci,id=3Dusb,bus=3Dpci.0,addr=3D0x1.0x2 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.xml b/tes= ts/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.xml new file mode 100644 index 0000000000..ce432ef52f --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.xml @@ -0,0 +1,24 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + + /usr/bin/qemu-system-x86_64 + + + + + + + diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-l= atest.args b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-l= atest.args new file mode 100644 index 0000000000..c65d29fc32 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest.a= rgs @@ -0,0 +1,41 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-x86_64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pc-q35-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pcie-root-port,port=3D0x8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,mult= ifunction=3Don,\ +addr=3D0x1 \ +-device pcie-root-port,port=3D0x9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-device pcie-root-port,port=3D0xa,chassis=3D3,id=3Dpci.3,bus=3Dpcie.0,addr= =3D0x1.0x2 \ +-device pcie-root-port,port=3D0xb,chassis=3D4,id=3Dpci.4,bus=3Dpcie.0,addr= =3D0x1.0x3 \ +-device qemu-xhci,id=3Dusb,bus=3Dpci.1,addr=3D0x0 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.2,addr=3D0x0,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.3,addr=3D0x0 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.xml b/te= sts/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.xml new file mode 100644 index 0000000000..bf2678e674 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.xml @@ -0,0 +1,24 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + + /usr/bin/qemu-system-x86_64 + + + + + + + diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-la= test.args b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-lat= est.args new file mode 100644 index 0000000000..1c233243ad --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.ar= gs @@ -0,0 +1,36 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-x86_64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pc-i440fx-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device piix3-usb-uhci,id=3Dusb,bus=3Dpci.0,addr=3D0x1.0x2 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.0,addr=3D0x2,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.0,addr=3D0x3 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.xml b/tes= ts/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.xml new file mode 100644 index 0000000000..8e77a3ad92 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.xml @@ -0,0 +1,24 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + + /usr/bin/qemu-system-x86_64 + + + + + + + diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-l= atest.args b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-l= atest.args new file mode 100644 index 0000000000..505eeb44b3 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest.a= rgs @@ -0,0 +1,41 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +QEMU_AUDIO_DRV=3Dnone \ +/usr/bin/qemu-system-x86_64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object secret,id=3DmasterKey0,format=3Draw,\ +file=3D/tmp/lib/domain--1-guest/master-key.aes \ +-machine pc-q35-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-m 4096 \ +-overcommit mem-lock=3Doff \ +-smp 4,sockets=3D4,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=3Dcharmonitor,fd=3D1729,server,nowait \ +-mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ +-rtc base=3Dutc \ +-no-shutdown \ +-boot strict=3Don \ +-device pcie-root-port,port=3D0x8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,mult= ifunction=3Don,\ +addr=3D0x1 \ +-device pcie-root-port,port=3D0x9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-device pcie-root-port,port=3D0xa,chassis=3D3,id=3Dpci.3,bus=3Dpcie.0,addr= =3D0x1.0x2 \ +-device pcie-root-port,port=3D0xb,chassis=3D4,id=3Dpci.4,bus=3Dpcie.0,addr= =3D0x1.0x3 \ +-device qemu-xhci,id=3Dusb,bus=3Dpci.1,addr=3D0x0 \ +-drive file=3D/var/lib/libvirt/images/guest.qcow2,format=3Dqcow2,if=3Dnone= ,\ +id=3Ddrive-virtio-disk0 \ +-device virtio-blk-pci,scsi=3Doff,bus=3Dpci.2,addr=3D0x0,drive=3Ddrive-vir= tio-disk0,\ +id=3Dvirtio-disk0,bootindex=3D1 \ +-device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.3,addr=3D0x0 \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,\ +resourcecontrol=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.xml b/te= sts/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.xml new file mode 100644 index 0000000000..4e3b341800 --- /dev/null +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.xml @@ -0,0 +1,24 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + + /usr/bin/qemu-system-x86_64 + + + + + + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 721b5e0373..5009f6bd4e 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -3032,6 +3032,10 @@ mymain(void) DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-kvm-ccw-virtio-4.2", "s390x= "); DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-tcg-ccw-virtio-4.2", "s390x= "); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-kvm-pc-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-tcg-pc-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-kvm-q35-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-tcg-q35-4.2", "x86_64"); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-= latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-= latest.xml new file mode 100644 index 0000000000..1f24dee8e7 --- /dev/null +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.= xml @@ -0,0 +1,37 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-x86_64 + + + + +
+ + +
+ + + + + +
+ + + diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_64= -latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_6= 4-latest.xml new file mode 100644 index 0000000000..39a7013b67 --- /dev/null +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest= .xml @@ -0,0 +1,60 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-x86_64 + + + + +
+ + +
+ + +
+ + + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-= latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-= latest.xml new file mode 100644 index 0000000000..b45ad4c051 --- /dev/null +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.= xml @@ -0,0 +1,37 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-x86_64 + + + + +
+ + +
+ + + + + +
+ + + diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_64= -latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_6= 4-latest.xml new file mode 100644 index 0000000000..c6a85977e9 --- /dev/null +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest= .xml @@ -0,0 +1,60 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 4194304 + 4194304 + 4 + + hvm + + + + + + + + destroy + restart + destroy + + /usr/bin/qemu-system-x86_64 + + + + +
+ + +
+ + +
+ + + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 0a1598aeea..311511dd30 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -1349,6 +1349,10 @@ mymain(void) DO_TEST_CAPS_ARCH_LATEST("ppc64-default-cpu-tcg-pseries-4.2", "ppc64"); DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-kvm-ccw-virtio-4.2", "s390x= "); DO_TEST_CAPS_ARCH_LATEST("s390-default-cpu-tcg-ccw-virtio-4.2", "s390x= "); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-kvm-pc-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-tcg-pc-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-kvm-q35-4.2", "x86_64"); + DO_TEST_CAPS_ARCH_LATEST("x86_64-default-cpu-tcg-q35-4.2", "x86_64"); =20 if (getenv("LIBVIRT_SKIP_CLEANUP") =3D=3D NULL) virFileDeleteTree(fakerootdir); --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 26 09:36:15 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) client-ip=205.139.110.120; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1572960628; cv=none; d=zoho.com; s=zohoarc; b=dTs1LFAxiVuEZimdgddiOwxRJsXUb4xxLyPNUhfAHM8lh1J8AFevZyr5bgi6AO56W3FClDD4b1zbrqNewIgvLsFVMXKYsXL+YGwD0302xbzwnofoi1TnmB7ytZumQdjDvQy4aCzSQAmM77Nw0S4FHMTwSMCc9ZKyBIYnnw86gxQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1572960628; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=0FTS5HxOCGnj3d4P9hR16yvdEmm46XcBFwD8v2CWOoE=; b=BUBLcGJsYjy4xzOwWjXlXixaF+w0Rx/Tu6sp8q5XY2DTyoSoam7XABuQLz9ky2DtPY1tnS58S2o7GqElJuQpoW6SLCGNg8pyrFTNQ1Z4Jih67k5Ymd+yLyM7xIjrSizym6KR/D7XcOwSOtudSioR6Odbirk0uIz92Mkk3sBWb1E= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 205.139.110.120 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by mx.zohomail.com with SMTPS id 1572960628014709.9088507229004; Tue, 5 Nov 2019 05:30:28 -0800 (PST) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-223-r9-JCEI4NmG1zRujhio5rw-1; Tue, 05 Nov 2019 08:29:07 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 37945801E7D; Tue, 5 Nov 2019 13:29:02 +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 BB4075C557; Tue, 5 Nov 2019 13:29:01 +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 454CF1802226; Tue, 5 Nov 2019 13:29:01 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id xA5DS5IB004158 for ; Tue, 5 Nov 2019 08:28:05 -0500 Received: by smtp.corp.redhat.com (Postfix) id 8793B60C88; Tue, 5 Nov 2019 13:28:05 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.188]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E11EB60FC4 for ; Tue, 5 Nov 2019 13:28:03 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 8F206105E45; Tue, 5 Nov 2019 14:27:53 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572960626; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=0FTS5HxOCGnj3d4P9hR16yvdEmm46XcBFwD8v2CWOoE=; b=Vyp7BbUs9VQnAKKzs3MWE/wO8IwU2jNqWkaOzJ9IIEna5/y0XPWe76EPm3KR2zIhKV9TTH FaqVGY9tc8Ml6slzIHxKoT83jmgb2jIAXB5/SKlQmuK+j6yc5iGVNJVarjYa91xRGm/cN7 KI34FlGoKiQtOAYMZAjH5RN+UX24UQM= From: Jiri Denemark To: libvir-list@redhat.com Date: Tue, 5 Nov 2019 14:27:50 +0100 Message-Id: <2785335a3720091bc3063b4ae477f40736187ea5.1572958255.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 52/52] qemu: Store default CPU in domain XML 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: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: r9-JCEI4NmG1zRujhio5rw-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" When starting a domain without a CPU model specified in the domain XML, QEMU will choose a default one. Which is fine unless the domain gets migrated to another host because libvirt doesn't perform any CPU ABI checks and the virtual CPU provided by QEMU on the destination host can differ from the one on the source host. With QEMU 4.2.0 we can probe for the default CPU model used by QEMU for a particular machine type and store it in the domain XML. This way the chosen CPU model is more visible to users and libvirt will make sure the guest will see the exact same CPU after migration. Architecture specific notes - aarch64: We only set the default CPU for TCG domains as KVM requires explicit "-cpu host" to work. - ppc64: The default CPU for KVM is "host" thanks to some hacks in QEMU, we will translate the default model to the model corresponding to the host CPU ("POWER8" on a Power8 host, "POWER9" on Power9 host, etc.). This is not a problem as the corresponding CPU model is in fact an alias for "host". This is probably not ideal, but it's not wrong and the default virtual CPU configured by libvirt is the same QEMU would use. TCG uses various CPU models depending on machine type and its version. - s390x: The default CPU for KVM is "host" while TCG defaults to "qemu". - x86_64: The default CPU model (qemu64) is not runnable on any host with KVM, but QEMU just disables unavailable features and starts happily. https://bugzilla.redhat.com/show_bug.cgi?id=3D1598151 https://bugzilla.redhat.com/show_bug.cgi?id=3D1598162 Signed-off-by: Jiri Denemark Reviewed-by: J=C3=A1n Tomko --- Notes: Version 2: - new test cases =20 Version 3: - enable default CPU for KVM on s390 and ppc64 - handle "host" default CPU src/qemu/qemu_domain.c | 61 +++++++++++++++++++ ...fault-cpu-tcg-virt-4.2.aarch64-latest.args | 1 + .../disk-cache.x86_64-latest.args | 1 + .../disk-cdrom-network.x86_64-latest.args | 1 + .../disk-cdrom-tray.x86_64-latest.args | 1 + .../disk-copy_on_read.x86_64-latest.args | 1 + .../disk-detect-zeroes.x86_64-latest.args | 1 + .../disk-floppy-q35-2_11.x86_64-latest.args | 1 + .../disk-floppy-q35-2_9.x86_64-latest.args | 1 + .../os-firmware-bios.x86_64-latest.args | 1 + ...os-firmware-efi-secboot.x86_64-latest.args | 1 + .../os-firmware-efi.x86_64-latest.args | 1 + ...ault-cpu-kvm-pseries-2.7.ppc64-latest.args | 1 + ...ault-cpu-kvm-pseries-3.1.ppc64-latest.args | 1 + ...ault-cpu-kvm-pseries-4.2.ppc64-latest.args | 1 + ...ault-cpu-tcg-pseries-2.7.ppc64-latest.args | 1 + ...ault-cpu-tcg-pseries-3.1.ppc64-latest.args | 1 + ...ault-cpu-tcg-pseries-4.2.ppc64-latest.args | 1 + ...t-cpu-kvm-ccw-virtio-4.2.s390x-latest.args | 1 + ...t-cpu-tcg-ccw-virtio-4.2.s390x-latest.args | 1 + .../tpm-emulator-tpm2-enc.x86_64-latest.args | 1 + .../tpm-emulator-tpm2.x86_64-latest.args | 1 + .../tpm-emulator.x86_64-latest.args | 1 + .../tseg-explicit-size.x86_64-latest.args | 1 + .../vhost-vsock-auto.x86_64-latest.args | 1 + .../vhost-vsock.x86_64-latest.args | 1 + ...-default-cpu-kvm-pc-4.2.x86_64-latest.args | 1 + ...default-cpu-kvm-q35-4.2.x86_64-latest.args | 1 + ...-default-cpu-tcg-pc-4.2.x86_64-latest.args | 1 + ...default-cpu-tcg-q35-4.2.x86_64-latest.args | 1 + ...efault-cpu-tcg-virt-4.2.aarch64-latest.xml | 3 + .../os-firmware-bios.x86_64-latest.xml | 3 + .../os-firmware-efi-secboot.x86_64-latest.xml | 3 + .../os-firmware-efi.x86_64-latest.xml | 3 + ...fault-cpu-kvm-pseries-2.7.ppc64-latest.xml | 3 + ...fault-cpu-kvm-pseries-3.1.ppc64-latest.xml | 3 + ...fault-cpu-kvm-pseries-4.2.ppc64-latest.xml | 3 + ...fault-cpu-tcg-pseries-2.7.ppc64-latest.xml | 3 + ...fault-cpu-tcg-pseries-3.1.ppc64-latest.xml | 3 + ...fault-cpu-tcg-pseries-4.2.ppc64-latest.xml | 3 + ...lt-cpu-kvm-ccw-virtio-4.2.s390x-latest.xml | 1 + ...lt-cpu-tcg-ccw-virtio-4.2.s390x-latest.xml | 3 + .../tpm-emulator-tpm2-enc.x86_64-latest.xml | 3 + .../tpm-emulator-tpm2.x86_64-latest.xml | 3 + .../tpm-emulator.x86_64-latest.xml | 3 + .../tpm-passthrough-crb.x86_64-latest.xml | 3 + .../tpm-passthrough.x86_64-latest.xml | 3 + ...4-default-cpu-kvm-pc-4.2.x86_64-latest.xml | 3 + ...-default-cpu-kvm-q35-4.2.x86_64-latest.xml | 3 + ...4-default-cpu-tcg-pc-4.2.x86_64-latest.xml | 3 + ...-default-cpu-tcg-q35-4.2.x86_64-latest.xml | 3 + 51 files changed, 151 insertions(+) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 7e470c602a..a90a45c517 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4463,6 +4463,64 @@ qemuDomainDefVcpusPostParse(virDomainDefPtr def) } =20 =20 +static int +qemuDomainDefSetDefaultCPU(virDomainDefPtr def, + virQEMUCapsPtr qemuCaps) +{ + const char *model; + + if (def->cpu && + (def->cpu->mode !=3D VIR_CPU_MODE_CUSTOM || + def->cpu->model)) + return 0; + + /* Default CPU model info from QEMU is usable for TCG only except for + * x86, s390, and ppc64. */ + if (!ARCH_IS_X86(def->os.arch) && + !ARCH_IS_S390(def->os.arch) && + !ARCH_IS_PPC64(def->os.arch) && + def->virtType !=3D VIR_DOMAIN_VIRT_QEMU) + return 0; + + model =3D virQEMUCapsGetMachineDefaultCPU(qemuCaps, def->os.machine, d= ef->virtType); + if (!model) { + VIR_DEBUG("Unknown default CPU model for domain '%s'", def->name); + return 0; + } + + if (STREQ(model, "host") && def->virtType !=3D VIR_DOMAIN_VIRT_KVM) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("QEMU reports invalid default CPU model \"host\" " + "for non-kvm domain virt type")); + return -1; + } + + VIR_DEBUG("Setting default CPU model for domain '%s' to %s", + def->name, model); + + if (!def->cpu) + def->cpu =3D g_new0(virCPUDef, 1); + + /* We need to turn off all CPU checks when the domain is started becau= se + * the default CPU (e.g., qemu64) may not be runnable on any host. QEMU + * will just disable the unavailable features and we will update the C= PU + * definition accordingly and set check to FULL when starting the doma= in. */ + def->cpu->type =3D VIR_CPU_TYPE_GUEST; + def->cpu->check =3D VIR_CPU_CHECK_NONE; + + if (STREQ(model, "host")) { + def->cpu->mode =3D VIR_CPU_MODE_HOST_PASSTHROUGH; + } else { + def->cpu->mode =3D VIR_CPU_MODE_CUSTOM; + def->cpu->match =3D VIR_CPU_MATCH_EXACT; + def->cpu->fallback =3D VIR_CPU_FALLBACK_FORBID; + def->cpu->model =3D g_strdup(model); + } + + return 0; +} + + static int qemuDomainDefCPUPostParse(virDomainDefPtr def) { @@ -4637,6 +4695,9 @@ qemuDomainDefPostParse(virDomainDefPtr def, if (qemuCanonicalizeMachine(def, qemuCaps) < 0) return -1; =20 + if (qemuDomainDefSetDefaultCPU(def, qemuCaps) < 0) + return -1; + qemuDomainDefEnableDefaultFeatures(def, qemuCaps); =20 if (qemuDomainRecheckInternalPaths(def, cfg, parseFlags) < 0) diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch6= 4-latest.args b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aar= ch64-latest.args index 5ecbe1fdd6..5305c23464 100644 --- a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lates= t.args +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lates= t.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine virt-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff,gic-version= =3D2 \ +-cpu cortex-a15 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-cache.x86_64-latest.args b/tests/q= emuxml2argvdata/disk-cache.x86_64-latest.args index 7ea6d5b4d5..01d3b9d490 100644 --- a/tests/qemuxml2argvdata/disk-cache.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-cache.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ -machine pc-i440fx-2.6,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 214 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-cdrom-network.x86_64-latest.args b= /tests/qemuxml2argvdata/disk-cdrom-network.x86_64-latest.args index cf711c0a3f..e0d2eb049d 100644 --- a/tests/qemuxml2argvdata/disk-cdrom-network.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-cdrom-network.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ -machine pc-1.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-cdrom-tray.x86_64-latest.args b/te= sts/qemuxml2argvdata/disk-cdrom-tray.x86_64-latest.args index ad17416851..21542db4c2 100644 --- a/tests/qemuxml2argvdata/disk-cdrom-tray.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-cdrom-tray.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine pc-0.13,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args b/= tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args index 1f1d37c957..8552f9f00e 100644 --- a/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine pc-0.13,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-detect-zeroes.x86_64-latest.args b= /tests/qemuxml2argvdata/disk-detect-zeroes.x86_64-latest.args index b48c0f8d43..2a01647e50 100644 --- a/tests/qemuxml2argvdata/disk-detect-zeroes.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-detect-zeroes.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine pc-0.13,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args= b/tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args index 02e2b1e76c..fadd5a6d7e 100644 --- a/tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ -machine pc-q35-2.11,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 214 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/disk-floppy-q35-2_9.x86_64-latest.args = b/tests/qemuxml2argvdata/disk-floppy-q35-2_9.x86_64-latest.args index a158e8e3d3..4c932a7365 100644 --- a/tests/qemuxml2argvdata/disk-floppy-q35-2_9.x86_64-latest.args +++ b/tests/qemuxml2argvdata/disk-floppy-q35-2_9.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ -machine pc-q35-2.9,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 214 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/os-firmware-bios.x86_64-latest.args b/t= ests/qemuxml2argvdata/os-firmware-bios.x86_64-latest.args index 7d6108ec24..4391c6eda2 100644 --- a/tests/qemuxml2argvdata/os-firmware-bios.x86_64-latest.args +++ b/tests/qemuxml2argvdata/os-firmware-bios.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-fedora/master-key.aes \ -machine pc-q35-4.0,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -bios /usr/share/seabios/bios-256k.bin \ -m 8 \ -overcommit mem-lock=3Doff \ diff --git a/tests/qemuxml2argvdata/os-firmware-efi-secboot.x86_64-latest.a= rgs b/tests/qemuxml2argvdata/os-firmware-efi-secboot.x86_64-latest.args index d8f356ea07..4de135beb8 100644 --- a/tests/qemuxml2argvdata/os-firmware-efi-secboot.x86_64-latest.args +++ b/tests/qemuxml2argvdata/os-firmware-efi-secboot.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-fedora/master-key.aes \ -machine pc-q35-4.0,accel=3Dkvm,usb=3Doff,smm=3Don,dump-guest-core=3Doff \ +-cpu qemu64 \ -global driver=3Dcfi.pflash01,property=3Dsecure,value=3Don \ -drive file=3D/usr/share/OVMF/OVMF_CODE.secboot.fd,if=3Dpflash,format=3Dra= w,unit=3D0,\ readonly=3Don \ diff --git a/tests/qemuxml2argvdata/os-firmware-efi.x86_64-latest.args b/te= sts/qemuxml2argvdata/os-firmware-efi.x86_64-latest.args index e4dda734b0..7eba20e443 100644 --- a/tests/qemuxml2argvdata/os-firmware-efi.x86_64-latest.args +++ b/tests/qemuxml2argvdata/os-firmware-efi.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-fedora/master-key.aes \ -machine pc-q35-4.0,accel=3Dkvm,usb=3Doff,smm=3Don,dump-guest-core=3Doff \ +-cpu qemu64 \ -drive file=3D/usr/share/OVMF/OVMF_CODE.secboot.fd,if=3Dpflash,format=3Dra= w,unit=3D0,\ readonly=3Don \ -drive file=3D/var/lib/libvirt/qemu/nvram/fedora_VARS.fd,if=3Dpflash,forma= t=3Draw,\ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc= 64-latest.args index d264659d49..e177d06c8b 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-2.7,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER8 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc= 64-latest.args index 88f3b4ba26..61f39f27fd 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-3.1,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER8 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc= 64-latest.args index ea27f424cb..e591db0d8c 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER8 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc= 64-latest.args index c97fa531ae..06946dcbd9 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-2.7,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER7 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc= 64-latest.args index fbad53b0fb..6090a1bbad 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-3.1,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER8 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64= -latest.args b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc= 64-latest.args index 4222d4d4aa..7804a7b220 100644 --- a/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest= .args +++ b/tests/qemuxml2argvdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-latest= .args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pseries-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu POWER9 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s39= 0x-latest.args b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2= .s390x-latest.args index d45a87e6ec..4b7345630b 100644 --- a/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-late= st.args +++ b/tests/qemuxml2argvdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-late= st.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine s390-ccw-virtio-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu host \ -m 256 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.s39= 0x-latest.args b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2= .s390x-latest.args index 3d31148613..c7bd0c3840 100644 --- a/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-late= st.args +++ b/tests/qemuxml2argvdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-late= st.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine s390-ccw-virtio-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu \ -m 256 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/tpm-emulator-tpm2-enc.x86_64-latest.arg= s b/tests/qemuxml2argvdata/tpm-emulator-tpm2-enc.x86_64-latest.args index 3c8dc8e483..2455e14cfe 100644 --- a/tests/qemuxml2argvdata/tpm-emulator-tpm2-enc.x86_64-latest.args +++ b/tests/qemuxml2argvdata/tpm-emulator-tpm2-enc.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-TPM-VM/master-key.aes \ -machine pc-i440fx-2.12,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 2048 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/tpm-emulator-tpm2.x86_64-latest.args b/= tests/qemuxml2argvdata/tpm-emulator-tpm2.x86_64-latest.args index 3c8dc8e483..2455e14cfe 100644 --- a/tests/qemuxml2argvdata/tpm-emulator-tpm2.x86_64-latest.args +++ b/tests/qemuxml2argvdata/tpm-emulator-tpm2.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-TPM-VM/master-key.aes \ -machine pc-i440fx-2.12,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 2048 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/tpm-emulator.x86_64-latest.args b/tests= /qemuxml2argvdata/tpm-emulator.x86_64-latest.args index 3c8dc8e483..2455e14cfe 100644 --- a/tests/qemuxml2argvdata/tpm-emulator.x86_64-latest.args +++ b/tests/qemuxml2argvdata/tpm-emulator.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-TPM-VM/master-key.aes \ -machine pc-i440fx-2.12,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 2048 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/tseg-explicit-size.x86_64-latest.args b= /tests/qemuxml2argvdata/tseg-explicit-size.x86_64-latest.args index 2fece310e7..53dab283cc 100644 --- a/tests/qemuxml2argvdata/tseg-explicit-size.x86_64-latest.args +++ b/tests/qemuxml2argvdata/tseg-explicit-size.x86_64-latest.args @@ -14,6 +14,7 @@ QEMU_AUDIO_DRV=3Dnone \ file=3D/tmp/lib/domain--1-QEMUGuest1/master-key.aes \ -machine pc-q35-2.10,accel=3Dtcg,usb=3Doff,smm=3Don,dump-guest-core=3Doff \ -global mch.extended-tseg-mbytes=3D48 \ +-cpu qemu64 \ -m 214 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/vhost-vsock-auto.x86_64-latest.args b/t= ests/qemuxml2argvdata/vhost-vsock-auto.x86_64-latest.args index b5d3ff2204..e083b872c5 100644 --- a/tests/qemuxml2argvdata/vhost-vsock-auto.x86_64-latest.args +++ b/tests/qemuxml2argvdata/vhost-vsock-auto.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine pc-i440fx-2.9,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/vhost-vsock.x86_64-latest.args b/tests/= qemuxml2argvdata/vhost-vsock.x86_64-latest.args index 76df9d2d4d..1b0ffee6e8 100644 --- a/tests/qemuxml2argvdata/vhost-vsock.x86_64-latest.args +++ b/tests/qemuxml2argvdata/vhost-vsock.x86_64-latest.args @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-test/master-key.aes \ -machine pc-0.13,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 1024 \ -overcommit mem-lock=3Doff \ -smp 1,sockets=3D1,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-la= test.args b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-lat= est.args index c7bef11f22..7a335bc0c4 100644 --- a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.ar= gs +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.ar= gs @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pc-i440fx-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-l= atest.args b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-l= atest.args index c65d29fc32..88a634fc68 100644 --- a/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest.a= rgs +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest.a= rgs @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pc-q35-4.2,accel=3Dkvm,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-la= test.args b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-lat= est.args index 1c233243ad..5f11a07a19 100644 --- a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.ar= gs +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.ar= gs @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pc-i440fx-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-l= atest.args b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-l= atest.args index 505eeb44b3..1c9330f720 100644 --- a/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest.a= rgs +++ b/tests/qemuxml2argvdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest.a= rgs @@ -13,6 +13,7 @@ QEMU_AUDIO_DRV=3Dnone \ -object secret,id=3DmasterKey0,format=3Draw,\ file=3D/tmp/lib/domain--1-guest/master-key.aes \ -machine pc-q35-4.2,accel=3Dtcg,usb=3Doff,dump-guest-core=3Doff \ +-cpu qemu64 \ -m 4096 \ -overcommit mem-lock=3Doff \ -smp 4,sockets=3D4,cores=3D1,threads=3D1 \ diff --git a/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.aarc= h64-latest.xml b/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.= aarch64-latest.xml index 1f4104857a..c0aa2f39ee 100644 --- a/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lat= est.xml +++ b/tests/qemuxml2xmloutdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lat= est.xml @@ -11,6 +11,9 @@ + + cortex-a15 + destroy restart diff --git a/tests/qemuxml2xmloutdata/os-firmware-bios.x86_64-latest.xml b/= tests/qemuxml2xmloutdata/os-firmware-bios.x86_64-latest.xml index 63886666dd..60d3498765 100644 --- a/tests/qemuxml2xmloutdata/os-firmware-bios.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/os-firmware-bios.x86_64-latest.xml @@ -16,6 +16,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/os-firmware-efi-secboot.x86_64-latest= .xml b/tests/qemuxml2xmloutdata/os-firmware-efi-secboot.x86_64-latest.xml index a285e06334..938da73711 100644 --- a/tests/qemuxml2xmloutdata/os-firmware-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/os-firmware-efi-secboot.x86_64-latest.xml @@ -16,6 +16,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/os-firmware-efi.x86_64-latest.xml b/t= ests/qemuxml2xmloutdata/os-firmware-efi.x86_64-latest.xml index 46a7b1b780..97ce8a75c7 100644 --- a/tests/qemuxml2xmloutdata/os-firmware-efi.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/os-firmware-efi.x86_64-latest.xml @@ -16,6 +16,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.= ppc64-latest.xml index d0bff449c1..246462c719 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-2.7.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER8 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.= ppc64-latest.xml index add48334e7..392c075073 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-3.1.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER8 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.= ppc64-latest.xml index 9c02766b71..2306dcd7f0 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-kvm-pseries-4.2.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER8 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.= ppc64-latest.xml index fc1714a17e..e76766ff5a 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-2.7.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER7 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.= ppc64-latest.xml index f40f3be155..c1d619a9cb 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-3.1.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER8 + destroy restart diff --git a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.ppc= 64-latest.xml b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.= ppc64-latest.xml index 9582223550..311a7ad9da 100644 --- a/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-late= st.xml +++ b/tests/qemuxml2xmloutdata/ppc64-default-cpu-tcg-pseries-4.2.ppc64-late= st.xml @@ -8,6 +8,9 @@ hvm + + POWER9 + destroy restart diff --git a/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-4.2.s= 390x-latest.xml b/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-= 4.2.s390x-latest.xml index b35de63ab3..eec5051934 100644 --- a/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-la= test.xml +++ b/tests/qemuxml2xmloutdata/s390-default-cpu-kvm-ccw-virtio-4.2.s390x-la= test.xml @@ -8,6 +8,7 @@ hvm + destroy restart diff --git a/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-4.2.s= 390x-latest.xml b/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-= 4.2.s390x-latest.xml index 55149d4a78..8ccd460d01 100644 --- a/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-la= test.xml +++ b/tests/qemuxml2xmloutdata/s390-default-cpu-tcg-ccw-virtio-4.2.s390x-la= test.xml @@ -8,6 +8,9 @@ hvm + + qemu + destroy restart diff --git a/tests/qemuxml2xmloutdata/tpm-emulator-tpm2-enc.x86_64-latest.x= ml b/tests/qemuxml2xmloutdata/tpm-emulator-tpm2-enc.x86_64-latest.xml index dcd504310f..8a842e4d22 100644 --- a/tests/qemuxml2xmloutdata/tpm-emulator-tpm2-enc.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/tpm-emulator-tpm2-enc.x86_64-latest.xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/tpm-emulator-tpm2.x86_64-latest.xml b= /tests/qemuxml2xmloutdata/tpm-emulator-tpm2.x86_64-latest.xml index 625aaa5f60..9143a1dde1 100644 --- a/tests/qemuxml2xmloutdata/tpm-emulator-tpm2.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/tpm-emulator-tpm2.x86_64-latest.xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/tpm-emulator.x86_64-latest.xml b/test= s/qemuxml2xmloutdata/tpm-emulator.x86_64-latest.xml index 002af76c21..ff4006b2e3 100644 --- a/tests/qemuxml2xmloutdata/tpm-emulator.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/tpm-emulator.x86_64-latest.xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/tpm-passthrough-crb.x86_64-latest.xml= b/tests/qemuxml2xmloutdata/tpm-passthrough-crb.x86_64-latest.xml index ef68c2d0d7..b8be67acfd 100644 --- a/tests/qemuxml2xmloutdata/tpm-passthrough-crb.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/tpm-passthrough-crb.x86_64-latest.xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/tpm-passthrough.x86_64-latest.xml b/t= ests/qemuxml2xmloutdata/tpm-passthrough.x86_64-latest.xml index 2a99f35cf8..669992bcf6 100644 --- a/tests/qemuxml2xmloutdata/tpm-passthrough.x86_64-latest.xml +++ b/tests/qemuxml2xmloutdata/tpm-passthrough.x86_64-latest.xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-= latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-= latest.xml index 1f24dee8e7..c7b0f11cf8 100644 --- a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.= xml +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-pc-4.2.x86_64-latest.= xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_64= -latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_6= 4-latest.xml index 39a7013b67..be211acd29 100644 --- a/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest= .xml +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-kvm-q35-4.2.x86_64-latest= .xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-= latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-= latest.xml index b45ad4c051..159270b83a 100644 --- a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.= xml +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-pc-4.2.x86_64-latest.= xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart diff --git a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_64= -latest.xml b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_6= 4-latest.xml index c6a85977e9..b95e146c81 100644 --- a/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest= .xml +++ b/tests/qemuxml2xmloutdata/x86_64-default-cpu-tcg-q35-4.2.x86_64-latest= .xml @@ -12,6 +12,9 @@ + + qemu64 + destroy restart --=20 2.23.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list