From nobody Sun May 5 17:11:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 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=1616493733; cv=none; d=zohomail.com; s=zohoarc; b=WQ98hejvBy1ROO597otTUfyh5/MEYmMsQWvh7gIf64e5Tk0YHL2BzvuSb3sdlaOSPIebOPvM7gfhQRDJGJ1jTnoHDFETU/bPuzoRpqJHBSRZwWURaO2Dnkcgf0s/oXp3VmhgRm63TwfCNL1Y0JCxidct3CAjinWNPkVQMJQPuxU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1616493733; h=Content-Type:Content-Transfer-Encoding:Cc: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=fGyAwiQ61tUKTZ+OIhzyNiCC2ZhMscX+kFJ/xjjRVFs=; b=CZ3brYdzyJSCGpggIAqqTYY+nYpWN3EoSf69eDyA75cffqd0vwKHAtdy3qCyZdH5sBJIgPSKHoSNz+1R3NLOLM1zj5rDG+8J0oqml909XJJVtlnDews9A5iWjbx9qU9Ql94xGf6XyK1n6s4TxuPwPMEpoY7MlYfcA+dKnW8vXUM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 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-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 161649373373840.6939413558116; Tue, 23 Mar 2021 03:02:13 -0700 (PDT) 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-188-8WxLtaqvPVaaqIttxZ1YTg-1; Tue, 23 Mar 2021 06:02:10 -0400 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 5900280732C; Tue, 23 Mar 2021 10:02:05 +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 26A256E6F5; Tue, 23 Mar 2021 10:02:05 +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 CB28B1800215; Tue, 23 Mar 2021 10:02:04 +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 12NA22Og014989 for ; Tue, 23 Mar 2021 06:02:02 -0400 Received: by smtp.corp.redhat.com (Postfix) id 4F1FE2B3CA; Tue, 23 Mar 2021 10:02:02 +0000 (UTC) Received: from work.redhat.com (ovpn-112-220.ams2.redhat.com [10.36.112.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5F5472619D; Tue, 23 Mar 2021 10:02:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616493732; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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=fGyAwiQ61tUKTZ+OIhzyNiCC2ZhMscX+kFJ/xjjRVFs=; b=XZAObAU3mBtqrkNJfIiCGcthmcYp/d2W+hZ17I4ZbdlCIVP2/6eaHpNzu7YC9icnsasXFa 87ZQq/AohWS7E3SBdfvrEf/xYZcOHfXNhRaSm/Fb4Z/soqFVnvpA8BqEdKNS0g6zaH50jj L+A28LEHLnoeftocZY7lMrP1cQPvoBc= X-MC-Unique: 8WxLtaqvPVaaqIttxZ1YTg-1 From: Tim Wiederhake To: libvir-list@redhat.com Subject: [libvirt PATCH v3 1/3] virCPUDefFindFeature: Make first argument const ptr Date: Tue, 23 Mar 2021 11:01:53 +0100 Message-Id: <20210323100155.34735-2-twiederh@redhat.com> In-Reply-To: <20210323100155.34735-1-twiederh@redhat.com> References: <20210323100155.34735-1-twiederh@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Cc: Tim Wiederhake 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 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Tim Wiederhake Reviewed-by: Jiri Denemark --- src/conf/cpu_conf.c | 2 +- src/conf/cpu_conf.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c index 380a74691d..43629068c3 100644 --- a/src/conf/cpu_conf.c +++ b/src/conf/cpu_conf.c @@ -933,7 +933,7 @@ virCPUDefAddFeatureIfMissing(virCPUDefPtr def, =20 =20 virCPUFeatureDefPtr -virCPUDefFindFeature(virCPUDefPtr def, +virCPUDefFindFeature(const virCPUDef *def, const char *name) { size_t i; diff --git a/src/conf/cpu_conf.h b/src/conf/cpu_conf.h index 7ab198d370..ee4b34007e 100644 --- a/src/conf/cpu_conf.h +++ b/src/conf/cpu_conf.h @@ -236,7 +236,7 @@ virCPUDefAddFeatureIfMissing(virCPUDefPtr def, int policy); =20 virCPUFeatureDefPtr -virCPUDefFindFeature(virCPUDefPtr def, +virCPUDefFindFeature(const virCPUDef *def, const char *name); =20 int --=20 2.26.2 From nobody Sun May 5 17:11:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 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=1616493734; cv=none; d=zohomail.com; s=zohoarc; b=naNYHyz363z7GHTy6+6GWR4HrXdi9MVcI60z0431h0Z4jthGI5YCM9VZxS3OQE252Gw/Bb5m8fatmGxy4GfXaEJCzknRwMW20xCaGOjfGat90+wCHitcIjcD9R5jteFM25SRj/lHh8E2SD2XYJXYTtXp7l1RsDd6g3goIyb5QWY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1616493734; h=Content-Type:Content-Transfer-Encoding:Cc: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=e/KxcW9+f7kwMf3bAGUk0LtQaNpLgGE4o1AaAc1FJyI=; b=JqN/w7NeXJ+tCs4hvMi+tCfzZxl4zi/DMdLB3i1LemadSUGgkYUGQ+Aq2D/hBKXqxJx1Q6rKlqgpnzOxeZAPXHO6nL+/fiyb8YLxWiF3h3pDX2lbU9sCj4kQk9do6xFH4h5efD5l6fIqhMKfg+t0mvvTGAZeMdBClHbFB0tohGE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 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-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1616493734010551.8263764295463; Tue, 23 Mar 2021 03:02:14 -0700 (PDT) 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-222-oZdBD2M1MO6PKQ-S8pFRmA-1; Tue, 23 Mar 2021 06:02:10 -0400 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 8CB68593A5; Tue, 23 Mar 2021 10:02:05 +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 578E52B3C1; Tue, 23 Mar 2021 10:02:05 +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 147BC4BB7C; Tue, 23 Mar 2021 10:02:05 +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 12NA23nO015000 for ; Tue, 23 Mar 2021 06:02:03 -0400 Received: by smtp.corp.redhat.com (Postfix) id 8519B2B3C3; Tue, 23 Mar 2021 10:02:03 +0000 (UTC) Received: from work.redhat.com (ovpn-112-220.ams2.redhat.com [10.36.112.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id BBECF2B3C2; Tue, 23 Mar 2021 10:02:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616493732; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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=e/KxcW9+f7kwMf3bAGUk0LtQaNpLgGE4o1AaAc1FJyI=; b=XwfsgDChpm5ulQXTFFfvqZlQ5pckwGpQmbo5X2ket1CqvqUfPh8zMX46DvsjHQ8NvCR1NS AInhzeryOmTRiXL94uUKobUct/mSwtIgKVFFIH+VvpO8jmfAXHYcxAYtJVXDx6oqE9mvjs dccrSSg5Vr0hDTmw2ofLS1syxCTR6lk= X-MC-Unique: oZdBD2M1MO6PKQ-S8pFRmA-1 From: Tim Wiederhake To: libvir-list@redhat.com Subject: [libvirt PATCH v3 2/3] cpu: Introduce virCPUCheckForbiddenFeatures Date: Tue, 23 Mar 2021 11:01:54 +0100 Message-Id: <20210323100155.34735-3-twiederh@redhat.com> In-Reply-To: <20210323100155.34735-1-twiederh@redhat.com> References: <20210323100155.34735-1-twiederh@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Cc: Tim Wiederhake 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 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Tim Wiederhake Reviewed-by: Jiri Denemark --- src/cpu/cpu.c | 37 +++++++++++++++++++++++++++++++++++++ src/cpu/cpu.h | 6 ++++++ src/libvirt_private.syms | 1 + 3 files changed, 44 insertions(+) diff --git a/src/cpu/cpu.c b/src/cpu/cpu.c index dfedf5bbf0..3fd7035f7a 100644 --- a/src/cpu/cpu.c +++ b/src/cpu/cpu.c @@ -690,6 +690,43 @@ virCPUCheckFeature(virArch arch, } =20 =20 +/** + * virCPUCheckForbiddenFeatures: + * + * @guest: CPU definition + * @host: CPU definition + * + * Checks that @host enables no feature explicitly disabled by @guest. + * + * Returns 0 on success or -1 on error. + */ +int +virCPUCheckForbiddenFeatures(virCPUDefPtr guest, const virCPUDef *host) +{ + size_t i; + for (i =3D 0; i < guest->nfeatures; ++i) { + virCPUFeatureDefPtr feature; + + if (guest->features[i].policy !=3D VIR_CPU_FEATURE_FORBID) + continue; + + feature =3D virCPUDefFindFeature(host, guest->features[i].name); + if (!feature) + continue; + + if (feature->policy =3D=3D VIR_CPU_FEATURE_DISABLE) + continue; + + virReportError(VIR_ERR_CPU_INCOMPATIBLE, + _("Host CPU provides forbidden feature '%s'"), + guest->features[i].name); + return -1; + } + + return 0; +} + + /** * virCPUDataCheckFeature: * diff --git a/src/cpu/cpu.h b/src/cpu/cpu.h index ff4fb7e103..0b00f0b98d 100644 --- a/src/cpu/cpu.h +++ b/src/cpu/cpu.h @@ -228,6 +228,12 @@ virCPUCheckFeature(virArch arch, ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3); =20 =20 +int +virCPUCheckForbiddenFeatures(virCPUDefPtr guest, + const virCPUDef *host) + ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); + + int virCPUDataCheckFeature(const virCPUData *data, const char *feature) diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 526dcee11a..fa8859a6e3 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -1420,6 +1420,7 @@ cpuEncode; virCPUArchIsSupported; virCPUBaseline; virCPUCheckFeature; +virCPUCheckForbiddenFeatures; virCPUCompare; virCPUCompareXML; virCPUConvertLegacy; --=20 2.26.2 From nobody Sun May 5 17:11:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) client-ip=216.205.24.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 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=1616494041; cv=none; d=zohomail.com; s=zohoarc; b=KHaCxtrSdhnyoK2YlLS6XXclJfRIuKvlbBLNBsD+VfNF8qhgAZ4WCeei55jBNkpJMp9wDp5wCYpd9wLrUu5uEmjFs/RJu/MHw6g3Ct7KOLmDGmVhkFQcGv8bAfrgYTl/r62uzdKHFTq02KxmIBiQIYNI3SYTeNsbfKhPqfJGYz8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1616494041; h=Content-Type:Content-Transfer-Encoding:Cc: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=UeBEHESvOMFuwFW/H7W3a4SP0cgXnMjGbBPQvR0ytlY=; b=MnE9hwcjxrT3I1+dAHAOwqhJYsZogNIzQ5WmDtLtrpqs+3gPp6LnTaAP6nJhXCEitHoams+0FDFrb5olKs3uDpBJG0clwXmagkyzAHOT5VjzNqntRNBiffrWhkq6lEQ5eSB6mLX0DMIadrWDm36hBnHIvnMPMgtIQLYqOvTt5Vs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 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-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mx.zohomail.com with SMTPS id 1616494041771990.1896177877917; Tue, 23 Mar 2021 03:07:21 -0700 (PDT) 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-257-AujhUUMCP12cyAA_7Fb79A-1; Tue, 23 Mar 2021 06:02:17 -0400 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 44ACE801817; Tue, 23 Mar 2021 10:02: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 1A5065D9C0; Tue, 23 Mar 2021 10:02: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 D228B4A7C9; Tue, 23 Mar 2021 10:02:10 +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 12NA241q015005 for ; Tue, 23 Mar 2021 06:02:04 -0400 Received: by smtp.corp.redhat.com (Postfix) id 9BCDB2B3C2; Tue, 23 Mar 2021 10:02:04 +0000 (UTC) Received: from work.redhat.com (ovpn-112-220.ams2.redhat.com [10.36.112.220]) by smtp.corp.redhat.com (Postfix) with ESMTP id D801F2619D; Tue, 23 Mar 2021 10:02:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616493740; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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=UeBEHESvOMFuwFW/H7W3a4SP0cgXnMjGbBPQvR0ytlY=; b=f/coVO3IowstdK9Pao2kTnb9liylAwCDvGwKx33VyAGmTg+WQcoLkdbTBpr9tW+pyI2EKl GGnXxGBN+ruJgCovKL0Xwv4/Wcw+o2XteiGp2dM0k4BX8WSNd/8077HsMlx0N+ejXF8nvk SxeR9h/c3ZymIsWQbBOs6jMI4beRl/A= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616494040; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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=UeBEHESvOMFuwFW/H7W3a4SP0cgXnMjGbBPQvR0ytlY=; b=fdJfnGNTGkjCDSbY2psrMmTh0peB52lnuZtajoeHUGJvEPiPXiKoy1FDARLFOcQXqAuKKh DTj1LGr4fnYfldZvVy2uu6TrfOLPNDC/CaHnd16eV3554vTIy/ElydvV26ntcHoSxUTkjP RjEqCPgdlEeevPwWyPe0IyVCk5A/eNE= X-MC-Unique: AujhUUMCP12cyAA_7Fb79A-1 From: Tim Wiederhake To: libvir-list@redhat.com Subject: [libvirt PATCH v3 3/3] qemuProcessUpdateGuestCPU: Check host cpu for forbidden features Date: Tue, 23 Mar 2021 11:01:55 +0100 Message-Id: <20210323100155.34735-4-twiederh@redhat.com> In-Reply-To: <20210323100155.34735-1-twiederh@redhat.com> References: <20210323100155.34735-1-twiederh@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Cc: Tim Wiederhake 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 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) (identity @redhat.com) Content-Type: text/plain; charset="utf-8" See https://bugzilla.redhat.com/show_bug.cgi?id=3D1840770 Signed-off-by: Tim Wiederhake Reviewed-by: Jiri Denemark --- src/qemu/qemu_process.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index fedd1f56b1..b74afedd07 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -6125,6 +6125,16 @@ qemuProcessUpdateGuestCPU(virDomainDefPtr def, if (virCPUConvertLegacy(hostarch, def->cpu) < 0) return -1; =20 + if (def->cpu->check !=3D VIR_CPU_CHECK_NONE) { + virCPUDefPtr host; + + host =3D virQEMUCapsGetHostModel(qemuCaps, def->virtType, + VIR_QEMU_CAPS_HOST_CPU_FULL); + + if (host && virCPUCheckForbiddenFeatures(def->cpu, host) < 0) + return -1; + } + /* nothing to update for host-passthrough / maximum */ if (def->cpu->mode !=3D VIR_CPU_MODE_HOST_PASSTHROUGH && def->cpu->mode !=3D VIR_CPU_MODE_MAXIMUM) { --=20 2.26.2