From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547460; cv=none; d=zohomail.com; s=zohoarc; b=X+FR0ylnc5sgXMIcGPu1My6sqlo8rwTySbY50/HOs9iv2UfcRCET1RQOzcmnpWKuDi7WCdFvxj5Nf5oUFeB8cj4PEA2N+Dz//bmIPHRqj9fXBok74wDQh3Aco2vGc14y93Che/ptV3mfgX54LcyCPkiyF9VV28hDnjaIVU/pc8s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547460; h=Content-Type: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=T1SVHdVGU4Xx3+1TvaSIiSga1fTtl00R2aC0nHg/hx0=; b=awjpYIAaaI1Hq9FuJnl54HoCpXqeZCAAUfPhEOb9SbtwV/tCLt0BcKGHm2NaKf8tThkf/5tpb9G76knPt96ydu8u0IZo+RFFFbwN6AJhuIIjT95gcp8yqpUvH/Ar6N/o2MIA6k7BX5VBF0DngHcfTHWC9XYgFcbZx1Uas/2BXik= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547460192613.9035050384452; Wed, 9 Dec 2020 12:57:40 -0800 (PST) Received: from localhost ([::1]:50744 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn48Y-00075I-6q for importer@patchew.org; Wed, 09 Dec 2020 13:24:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51278) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rL-0000uq-KF for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:06:40 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:47073) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rH-0007Yj-LQ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:06:39 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-63-zMiQaJFbM7uZkiwH3p9PMQ-1; Wed, 09 Dec 2020 13:06:32 -0500 Received: by mail-wm1-f72.google.com with SMTP id z12so861877wmf.9 for ; Wed, 09 Dec 2020 10:06:31 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id a65sm4292369wmc.35.2020.12.09.10.06.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:06:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=T1SVHdVGU4Xx3+1TvaSIiSga1fTtl00R2aC0nHg/hx0=; b=Nj/aqltYduTruQ6lcgFvRWCSHN0eE8APJTnJfR9e+uyqCqGyafU3abRCizL95Xndihkfwp kg53LRrKjbn/R27E9e0ycTciEXZF9VVMZHm69W82g8qyds5UVaYKIMnmtLMbycj15z0O5x rxVnF8ZJYAequMwfImQUxR95SF2J4eY= X-MC-Unique: zMiQaJFbM7uZkiwH3p9PMQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=T1SVHdVGU4Xx3+1TvaSIiSga1fTtl00R2aC0nHg/hx0=; b=M31AhrauhwLsRBsM9gF47djHEL1IZpOMJ7urBK5126vZrKbevgDmwK+kPbrpXsGfaV tihN9U8EBKdhDlf0SaAoRbDVVOId//feDIdu8Vv1ZuzmMolMk60nE7Q40/oeroLgHMNd LrQzI2t0RVb93pQb+iH1RiIpYgf45Rtn7D0rrt8/VQv5aL7C9lK53lvmw32J9wt3Qh5w VQvMNovaTD6MMMd3QIzEU5DnH/HdOwkrKBvk3OiqkPvAvLMV4gXH2k2swzeXWZiQ+ZcG NymRrb9Cp5LRjmbOIE8ldnYSeQcdtGvmO7Ipbrc45GFhy+SMV8LWsSwStocDDZvs8rnk cVHw== X-Gm-Message-State: AOAM5330FXtkL//eGMkSC1yY1qvum77mJCiRAKLUhJxPq+Aw6YW7ZGP3 bgRPVbHc0I4LATqWouf+VstR6MSiMUaZAvnSJnpV0ikOBdQsyf5vlpyh35yzg5c+ydi61+Y5P9A FNAwTTqGWIZVdE8gsgti/JOGQRMCpfu6NVoMAg6ZYiPMl1L52BAG+48JKkQWS X-Received: by 2002:a1c:99d7:: with SMTP id b206mr4161234wme.12.1607537190273; Wed, 09 Dec 2020 10:06:30 -0800 (PST) X-Google-Smtp-Source: ABdhPJwCKBCd+1WdpIIopC75eEUD5aonFDjfWW9CBf8TKxUM74k6apxUQHSH8IB+kaSpLSp9YvizvA== X-Received: by 2002:a1c:99d7:: with SMTP id b206mr4161213wme.12.1607537190045; Wed, 09 Dec 2020 10:06:30 -0800 (PST) Date: Wed, 9 Dec 2020 13:06:26 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 01/65] vhost-user-scsi: Fix memleaks in vus_proc_req() Message-ID: <20201209180546.721296-2-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alex Chen , Peter Maydell , Raphael Norwitz , Euler Robot Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Alex Chen The 'elem' is allocated memory in vu_queue_pop(), and its memory should be freed in all error branches after vu_queue_pop(). In addition, in order to free the 'elem' memory outside of while(1) loop, m= ove the definition of 'elem' to the beginning of vus_proc_req(). Reported-by: Euler Robot Signed-off-by: Alex Chen Reviewed-by: Raphael Norwitz Message-Id: <20201125013055.34147-1-alex.chen@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/vhost-user-scsi/vhost-user-scsi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/contrib/vhost-user-scsi/vhost-user-scsi.c b/contrib/vhost-user= -scsi/vhost-user-scsi.c index 0f9ba4b2a2..4639440a70 100644 --- a/contrib/vhost-user-scsi/vhost-user-scsi.c +++ b/contrib/vhost-user-scsi/vhost-user-scsi.c @@ -232,6 +232,7 @@ static void vus_proc_req(VuDev *vu_dev, int idx) VugDev *gdev; VusDev *vdev_scsi; VuVirtq *vq; + VuVirtqElement *elem =3D NULL; =20 assert(vu_dev); =20 @@ -248,7 +249,6 @@ static void vus_proc_req(VuDev *vu_dev, int idx) g_debug("Got kicked on vq[%d]@%p", idx, vq); =20 while (1) { - VuVirtqElement *elem; VirtIOSCSICmdReq *req; VirtIOSCSICmdResp *rsp; =20 @@ -288,6 +288,7 @@ static void vus_proc_req(VuDev *vu_dev, int idx) =20 free(elem); } + free(elem); } =20 static void vus_queue_set_started(VuDev *vu_dev, int idx, bool started) --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607538450; cv=none; d=zohomail.com; s=zohoarc; b=hIPjrMpZ/KXQoP+oqt2FCvtKjKq8tQkC5ZIftf1gEnOAdKn0D4ljg/4+1aHmqlFMSGoT92BRFGdCCDJk9wIKL1+KoxWeIxmO8yVUfLOjd/Aek+FDac4QWNc5JIxti+jgo8XUfOp2C79PU4qMa91/bV+2bEscJzbRE9u+hEN6fUM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607538450; 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=kU8LLfrD++DTckVdz92f3StgJjIwiPAzY3tPlKdDYNE=; b=b3Ku8dL8coWHGFpzboJ/HDoe2Ac3Fqf89+B4E7Je7r9iq6Nimo2pLV4/1T6M90WFL5dlif0Vb50YxYUJMxDnz4EvUT/SLwIam59A6GqAyECL4kcE2gRyiRlWZNeZf6gV3wGR2BldIKDzHiLo/hVsCz/J1WizdJ21ka858uXbMPU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160753845012235.69404932591192; Wed, 9 Dec 2020 10:27:30 -0800 (PST) Received: from localhost ([::1]:59210 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4BU-0002Ci-P6 for importer@patchew.org; Wed, 09 Dec 2020 13:27:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51294) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rP-0000yY-Md for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:06:43 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:59260) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rK-0007ZB-7s for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:06:43 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-187-XUcdUSSTPIOwF8l9GVd1Eg-1; Wed, 09 Dec 2020 13:06:35 -0500 Received: by mail-wr1-f71.google.com with SMTP id v1so945566wri.16 for ; Wed, 09 Dec 2020 10:06:35 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id z140sm4904443wmc.30.2020.12.09.10.06.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:06:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537197; h=from:from: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; bh=kU8LLfrD++DTckVdz92f3StgJjIwiPAzY3tPlKdDYNE=; b=W+IdtHoYw3IVcqA36bKeVYNXgImIwnC6hdlutmUev0LqL/K0wnREaSzpYCeal9GrE5YKIX B+g1MSoQeyiQhho5zWxXIXifiEYfTfb9OoqcZBqkQUTlv6K10CC+EMbElbIYDCrawGHtus mKWQNuydMUDapfnPIQ8CFlR6fbqr4XE= X-MC-Unique: XUcdUSSTPIOwF8l9GVd1Eg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=kU8LLfrD++DTckVdz92f3StgJjIwiPAzY3tPlKdDYNE=; b=H4KKipsR1w43x9/k2Bwfz2G5cCGUHohvLLHanW87YgoEabye9VtRfKDOaZCB+yLKBA e0GUqsCXx8PPTODQO51/p82md5y9qtK5J7qR38DMgTME3WQd4SIJlML5Ybm64+bpztgC t0plgf+PrnpJIV7ddiVokPDk+dIz36fq1iG/290BF66SmuaArzvdbWHDCQRsF0Ij9VmI o3DzgozBbd18zuDD9i+7Ti8pB9cGcRwjV/3ihZwofMY/jgrzEExEOWwIqAnpAGIIyEdO zSPVttj1WARQQDwx16Olme6LTO+M16sbW1BfBx+nxccymMqM0pSE3ZZtuupwpmoFia/s b6mg== X-Gm-Message-State: AOAM533e7oTchOx0Bgn5ENuzfKrft9MyHs6WdTac+kOEJoJKtH+XQSaD o5pCspgroxTfS0dm3H2v0z3107NQB6mz+WeT3Ll3o6UoDtIx1xnTaglGiMRipsOzuKcWaXydE0u JzgOXPouGgdMJJkaOjRxiQVSkpLxcBqmwuu1o9o52r1J2eAlNAGnycUF9b5/L X-Received: by 2002:a5d:6902:: with SMTP id t2mr4028121wru.214.1607537193841; Wed, 09 Dec 2020 10:06:33 -0800 (PST) X-Google-Smtp-Source: ABdhPJzgjUXxevjHlAV3YDKSpJegLw58YycB8ru2oJdEbRgWj3G1WBT0vH78mVO8viX29klfYOTI0g== X-Received: by 2002:a5d:6902:: with SMTP id t2mr4028079wru.214.1607537193531; Wed, 09 Dec 2020 10:06:33 -0800 (PST) Date: Wed, 9 Dec 2020 13:06:30 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 02/65] memory: Rename memory_region_notify_one to memory_region_notify_iommu_one Message-ID: <20201209180546.721296-3-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Juan Quintela , Jason Wang , Richard Henderson , Peter Xu , Eric Auger , qemu-arm@nongnu.org, Paolo Bonzini , Eugenio =?utf-8?B?UMOpcmV6?= , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Eugenio P=C3=A9rez Previous name didn't reflect the iommu operation. Signed-off-by: Eugenio P=C3=A9rez Reviewed-by: Peter Xu Reviewed-by: David Gibson Reviewed-by: Juan Quintela Reviewed-by: Eric Auger Acked-by: Jason Wang Message-Id: <20201116165506.31315-2-eperezma@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/exec/memory.h | 6 +++--- hw/arm/smmu-common.c | 2 +- hw/arm/smmuv3.c | 2 +- hw/i386/intel_iommu.c | 4 ++-- softmmu/memory.c | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index 0f3e6bcd5e..d8456ccf52 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -236,7 +236,7 @@ enum IOMMUMemoryRegionAttr { * The IOMMU implementation must use the IOMMU notifier infrastructure * to report whenever mappings are changed, by calling * memory_region_notify_iommu() (or, if necessary, by calling - * memory_region_notify_one() for each registered notifier). + * memory_region_notify_iommu_one() for each registered notifier). * * Conceptually an IOMMU provides a mapping from input address * to an output TLB entry. If the IOMMU is aware of memory transaction @@ -1346,7 +1346,7 @@ void memory_region_notify_iommu(IOMMUMemoryRegion *io= mmu_mr, IOMMUTLBEntry entry); =20 /** - * memory_region_notify_one: notify a change in an IOMMU translation + * memory_region_notify_iommu_one: notify a change in an IOMMU translation * entry to a single notifier * * This works just like memory_region_notify_iommu(), but it only @@ -1357,7 +1357,7 @@ void memory_region_notify_iommu(IOMMUMemoryRegion *io= mmu_mr, * replaces all old entries for the same virtual I/O address range. * Deleted entries have .@perm =3D=3D 0. */ -void memory_region_notify_one(IOMMUNotifier *notifier, +void memory_region_notify_iommu_one(IOMMUNotifier *notifier, IOMMUTLBEntry *entry); =20 /** diff --git a/hw/arm/smmu-common.c b/hw/arm/smmu-common.c index 3838db1395..88d2c454f0 100644 --- a/hw/arm/smmu-common.c +++ b/hw/arm/smmu-common.c @@ -472,7 +472,7 @@ static void smmu_unmap_notifier_range(IOMMUNotifier *n) entry.perm =3D IOMMU_NONE; entry.addr_mask =3D n->end - n->start; =20 - memory_region_notify_one(n, &entry); + memory_region_notify_iommu_one(n, &entry); } =20 /* Unmap all notifiers attached to @mr */ diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 22607c3784..273f5f7dce 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -828,7 +828,7 @@ static void smmuv3_notify_iova(IOMMUMemoryRegion *mr, entry.addr_mask =3D num_pages * (1 << granule) - 1; entry.perm =3D IOMMU_NONE; =20 - memory_region_notify_one(n, &entry); + memory_region_notify_iommu_one(n, &entry); } =20 /* invalidate an asid/iova range tuple in all mr's */ diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index 70ac837733..067593b9e4 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -3497,7 +3497,7 @@ static void vtd_address_space_unmap(VTDAddressSpace *= as, IOMMUNotifier *n) /* This field is meaningless for unmap */ entry.translated_addr =3D 0; =20 - memory_region_notify_one(n, &entry); + memory_region_notify_iommu_one(n, &entry); =20 start +=3D mask; remain -=3D mask; @@ -3535,7 +3535,7 @@ static void vtd_address_space_refresh_all(IntelIOMMUS= tate *s) =20 static int vtd_replay_hook(IOMMUTLBEntry *entry, void *private) { - memory_region_notify_one((IOMMUNotifier *)private, entry); + memory_region_notify_iommu_one((IOMMUNotifier *)private, entry); return 0; } =20 diff --git a/softmmu/memory.c b/softmmu/memory.c index 11ca94d037..44de610c72 100644 --- a/softmmu/memory.c +++ b/softmmu/memory.c @@ -1942,8 +1942,8 @@ void memory_region_unregister_iommu_notifier(MemoryRe= gion *mr, memory_region_update_iommu_notify_flags(iommu_mr, NULL); } =20 -void memory_region_notify_one(IOMMUNotifier *notifier, - IOMMUTLBEntry *entry) +void memory_region_notify_iommu_one(IOMMUNotifier *notifier, + IOMMUTLBEntry *entry) { IOMMUNotifierFlag request_flags; hwaddr entry_end =3D entry->iova + entry->addr_mask; @@ -1979,7 +1979,7 @@ void memory_region_notify_iommu(IOMMUMemoryRegion *io= mmu_mr, =20 IOMMU_NOTIFIER_FOREACH(iommu_notifier, iommu_mr) { if (iommu_notifier->iommu_idx =3D=3D iommu_idx) { - memory_region_notify_one(iommu_notifier, &entry); + memory_region_notify_iommu_one(iommu_notifier, &entry); } } } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547478; cv=none; d=zohomail.com; s=zohoarc; b=QGetweiSenDoY8XBHEgaCND+MhKc0o57G4D4vXbkepV2SLqihkO8z/AbkTu0tQ/YU6s6NSYwKnjCNaV8NdKMm3Iud5xHgYeCnJAekpTw8Cv0oJBFW1IFvpS5ubZrY2m7hrnOOpODBr3v2AWUecJjGxPTPPGgB4GTRD72ajsxhPg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547478; 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=hCZCKCuFOJBCydymGeiwWLBXi/oP0lMJNiHZPbP0zJw=; b=cHQhOeKHS/svrHrxaFsyhHaGW9Yd09PcGt57jWRVU019afSWVDIw7OoArczw0OAVM547jvUr6KJH7oWT1lK4bCHrj2GBudvhiYs6duJtfoAJBtQI234kXZT2NOCH9F430m4OAgPlwBi9hS7T/bKtCWd8l0YfGDfKUPves5/IY9I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547478603509.1616834124213; Wed, 9 Dec 2020 12:57:58 -0800 (PST) Received: from localhost ([::1]:40246 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn440-0002bz-T6 for importer@patchew.org; Wed, 09 Dec 2020 13:19:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51468) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rj-0001Ju-3A for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:04 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:41678) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rZ-0007dp-KH for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:02 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-115-2odBitGLOGK3-EWtT24sEA-1; Wed, 09 Dec 2020 13:06:50 -0500 Received: by mail-wm1-f70.google.com with SMTP id f12so868649wmf.6 for ; Wed, 09 Dec 2020 10:06:50 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id h15sm4615997wrw.15.2020.12.09.10.06.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:06:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537212; h=from:from: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; bh=hCZCKCuFOJBCydymGeiwWLBXi/oP0lMJNiHZPbP0zJw=; b=KhfjK24ovJX7R8wROO0g+j9usvIOpuRnsaJoeIbaSZjDjj9wAK13upWs4j8JnhDz8Tk20J CMTRjS9n8RWmWdikkbspI81yQJgnAY3qnDB+//YazaPrA5HjZ3bI7aXEgAUc0hm2GXNUIe 8kljq+csWFe/CNwjqKXeInx1DN0kkIM= X-MC-Unique: 2odBitGLOGK3-EWtT24sEA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=hCZCKCuFOJBCydymGeiwWLBXi/oP0lMJNiHZPbP0zJw=; b=bO3HX4REtXmMANEQmnBnK7cxaQFH3dt5Te8c+MIHkEyPHUTY5NfZnBlXjYnaY8jUPF EUKi0rd1pPVtY0QKi55lKhAuey4zJRHbSC7VapHXCXISmllCPVvx3hZEVo56HBDTBXEo oTZa0lIyxqBt6oJuZaR2n2hPSlGuYOy3YBk5A3xQ0beoSjc0i02Z5gDQ4A4tG3evz3K1 LV1isdvmMpuEQq6Jvg4qyH0d2CWn9brVdt888/Wk66y6uyUzSAz/iPs/PTP5iwrGUASu IR6C/T6mdtbvnoNZclKE9mkeBpFJ67RwdEVymcLZXetHHSeT2s0kAQFwukO0GwhXoFbc oMpw== X-Gm-Message-State: AOAM532oKFe8Ewj/nq7dj13IbajOacRL3mWRW6XneEzau4YqI4OhKezW Bqy/8zVbObupiMZZGgh+1v048F8KAul9MLFNf9G/eCjj9rZqzU+xPxv7Fm5VM1oOAXMCTuTgzN6 lGaZtxjB/1iRqbJwrjSt3qPxwtjBygLZ3CXUKXOl7p2ZLi7U0W2bSYQg0Rrh3 X-Received: by 2002:a5d:54cc:: with SMTP id x12mr3262444wrv.132.1607537209156; Wed, 09 Dec 2020 10:06:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJwdXXWGezxAuykSVPqFJck2pt78OXdezSk1MMXjuXwc+lu8j9WGGbFkaDjUqk8bDnHh5HI8Lg== X-Received: by 2002:a5d:54cc:: with SMTP id x12mr3262388wrv.132.1607537208853; Wed, 09 Dec 2020 10:06:48 -0800 (PST) Date: Wed, 9 Dec 2020 13:06:33 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 03/65] memory: Add IOMMUTLBEvent Message-ID: <20201209180546.721296-4-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Thomas Huth , Eduardo Habkost , Matthew Rosato , Juan Quintela , Jason Wang , Cornelia Huck , Richard Henderson , Peter Xu , Halil Pasic , Eugenio =?utf-8?B?UMOpcmV6?= , qemu-s390x@nongnu.org, qemu-arm@nongnu.org, qemu-ppc@nongnu.org, Eric Auger , Paolo Bonzini , David Hildenbrand , Christian Borntraeger , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Eugenio P=C3=A9rez This way we can tell between regular IOMMUTLBEntry (entry of IOMMU hardware) and notifications. In the notifications, we set explicitly if it is a MAPs or an UNMAP, instead of trusting in entry permissions to differentiate them. Signed-off-by: Eugenio P=C3=A9rez Reviewed-by: Peter Xu Reviewed-by: Juan Quintela Acked-by: Jason Wang Message-Id: <20201116165506.31315-3-eperezma@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Matthew Rosato Acked-by: David Gibson --- include/exec/memory.h | 27 ++++++------ hw/arm/smmu-common.c | 13 +++--- hw/arm/smmuv3.c | 13 +++--- hw/i386/intel_iommu.c | 88 ++++++++++++++++++++++------------------ hw/misc/tz-mpc.c | 32 ++++++++------- hw/ppc/spapr_iommu.c | 15 +++---- hw/s390x/s390-pci-inst.c | 27 +++++++----- hw/virtio/virtio-iommu.c | 30 +++++++------- softmmu/memory.c | 20 ++++----- 9 files changed, 143 insertions(+), 122 deletions(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index d8456ccf52..e86b5e92da 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -116,6 +116,11 @@ struct IOMMUNotifier { }; typedef struct IOMMUNotifier IOMMUNotifier; =20 +typedef struct IOMMUTLBEvent { + IOMMUNotifierFlag type; + IOMMUTLBEntry entry; +} IOMMUTLBEvent; + /* RAM is pre-allocated and passed into qemu_ram_alloc_from_ptr */ #define RAM_PREALLOC (1 << 0) =20 @@ -1326,24 +1331,18 @@ uint64_t memory_region_iommu_get_min_page_size(IOMM= UMemoryRegion *iommu_mr); /** * memory_region_notify_iommu: notify a change in an IOMMU translation ent= ry. * - * The notification type will be decided by entry.perm bits: - * - * - For UNMAP (cache invalidation) notifies: set entry.perm to IOMMU_NONE. - * - For MAP (newly added entry) notifies: set entry.perm to the - * permission of the page (which is definitely !IOMMU_NONE). - * * Note: for any IOMMU implementation, an in-place mapping change * should be notified with an UNMAP followed by a MAP. * * @iommu_mr: the memory region that was changed * @iommu_idx: the IOMMU index for the translation table which has changed - * @entry: the new entry in the IOMMU translation table. The entry - * replaces all old entries for the same virtual I/O address range. - * Deleted entries have .@perm =3D=3D 0. + * @event: TLB event with the new entry in the IOMMU translation table. + * The entry replaces all old entries for the same virtual I/O add= ress + * range. */ void memory_region_notify_iommu(IOMMUMemoryRegion *iommu_mr, int iommu_idx, - IOMMUTLBEntry entry); + IOMMUTLBEvent event); =20 /** * memory_region_notify_iommu_one: notify a change in an IOMMU translation @@ -1353,12 +1352,12 @@ void memory_region_notify_iommu(IOMMUMemoryRegion *= iommu_mr, * notifies a specific notifier, not all of them. * * @notifier: the notifier to be notified - * @entry: the new entry in the IOMMU translation table. The entry - * replaces all old entries for the same virtual I/O address range. - * Deleted entries have .@perm =3D=3D 0. + * @event: TLB event with the new entry in the IOMMU translation table. + * The entry replaces all old entries for the same virtual I/O add= ress + * range. */ void memory_region_notify_iommu_one(IOMMUNotifier *notifier, - IOMMUTLBEntry *entry); + IOMMUTLBEvent *event); =20 /** * memory_region_register_iommu_notifier: register a notifier for changes = to diff --git a/hw/arm/smmu-common.c b/hw/arm/smmu-common.c index 88d2c454f0..405d5c5325 100644 --- a/hw/arm/smmu-common.c +++ b/hw/arm/smmu-common.c @@ -465,14 +465,15 @@ IOMMUMemoryRegion *smmu_iommu_mr(SMMUState *s, uint32= _t sid) /* Unmap the whole notifier's range */ static void smmu_unmap_notifier_range(IOMMUNotifier *n) { - IOMMUTLBEntry entry; + IOMMUTLBEvent event; =20 - entry.target_as =3D &address_space_memory; - entry.iova =3D n->start; - entry.perm =3D IOMMU_NONE; - entry.addr_mask =3D n->end - n->start; + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.target_as =3D &address_space_memory; + event.entry.iova =3D n->start; + event.entry.perm =3D IOMMU_NONE; + event.entry.addr_mask =3D n->end - n->start; =20 - memory_region_notify_iommu_one(n, &entry); + memory_region_notify_iommu_one(n, &event); } =20 /* Unmap all notifiers attached to @mr */ diff --git a/hw/arm/smmuv3.c b/hw/arm/smmuv3.c index 273f5f7dce..bbca0e9f20 100644 --- a/hw/arm/smmuv3.c +++ b/hw/arm/smmuv3.c @@ -800,7 +800,7 @@ static void smmuv3_notify_iova(IOMMUMemoryRegion *mr, uint8_t tg, uint64_t num_pages) { SMMUDevice *sdev =3D container_of(mr, SMMUDevice, iommu); - IOMMUTLBEntry entry; + IOMMUTLBEvent event; uint8_t granule =3D tg; =20 if (!tg) { @@ -823,12 +823,13 @@ static void smmuv3_notify_iova(IOMMUMemoryRegion *mr, granule =3D tt->granule_sz; } =20 - entry.target_as =3D &address_space_memory; - entry.iova =3D iova; - entry.addr_mask =3D num_pages * (1 << granule) - 1; - entry.perm =3D IOMMU_NONE; + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.target_as =3D &address_space_memory; + event.entry.iova =3D iova; + event.entry.addr_mask =3D num_pages * (1 << granule) - 1; + event.entry.perm =3D IOMMU_NONE; =20 - memory_region_notify_iommu_one(n, &entry); + memory_region_notify_iommu_one(n, &event); } =20 /* invalidate an asid/iova range tuple in all mr's */ diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index 067593b9e4..56180b1c43 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -1073,7 +1073,7 @@ static int vtd_iova_to_slpte(IntelIOMMUState *s, VTDC= ontextEntry *ce, } } =20 -typedef int (*vtd_page_walk_hook)(IOMMUTLBEntry *entry, void *private); +typedef int (*vtd_page_walk_hook)(IOMMUTLBEvent *event, void *private); =20 /** * Constant information used during page walking @@ -1094,11 +1094,12 @@ typedef struct { uint16_t domain_id; } vtd_page_walk_info; =20 -static int vtd_page_walk_one(IOMMUTLBEntry *entry, vtd_page_walk_info *inf= o) +static int vtd_page_walk_one(IOMMUTLBEvent *event, vtd_page_walk_info *inf= o) { VTDAddressSpace *as =3D info->as; vtd_page_walk_hook hook_fn =3D info->hook_fn; void *private =3D info->private; + IOMMUTLBEntry *entry =3D &event->entry; DMAMap target =3D { .iova =3D entry->iova, .size =3D entry->addr_mask, @@ -1107,7 +1108,7 @@ static int vtd_page_walk_one(IOMMUTLBEntry *entry, vt= d_page_walk_info *info) }; DMAMap *mapped =3D iova_tree_find(as->iova_tree, &target); =20 - if (entry->perm =3D=3D IOMMU_NONE && !info->notify_unmap) { + if (event->type =3D=3D IOMMU_NOTIFIER_UNMAP && !info->notify_unmap) { trace_vtd_page_walk_one_skip_unmap(entry->iova, entry->addr_mask); return 0; } @@ -1115,7 +1116,7 @@ static int vtd_page_walk_one(IOMMUTLBEntry *entry, vt= d_page_walk_info *info) assert(hook_fn); =20 /* Update local IOVA mapped ranges */ - if (entry->perm) { + if (event->type =3D=3D IOMMU_NOTIFIER_MAP) { if (mapped) { /* If it's exactly the same translation, skip */ if (!memcmp(mapped, &target, sizeof(target))) { @@ -1141,19 +1142,21 @@ static int vtd_page_walk_one(IOMMUTLBEntry *entry, = vtd_page_walk_info *info) int ret; =20 /* Emulate an UNMAP */ + event->type =3D IOMMU_NOTIFIER_UNMAP; entry->perm =3D IOMMU_NONE; trace_vtd_page_walk_one(info->domain_id, entry->iova, entry->translated_addr, entry->addr_mask, entry->perm); - ret =3D hook_fn(entry, private); + ret =3D hook_fn(event, private); if (ret) { return ret; } /* Drop any existing mapping */ iova_tree_remove(as->iova_tree, &target); - /* Recover the correct permission */ + /* Recover the correct type */ + event->type =3D IOMMU_NOTIFIER_MAP; entry->perm =3D cache_perm; } } @@ -1170,7 +1173,7 @@ static int vtd_page_walk_one(IOMMUTLBEntry *entry, vt= d_page_walk_info *info) trace_vtd_page_walk_one(info->domain_id, entry->iova, entry->translated_addr, entry->addr_mask, entry->perm); - return hook_fn(entry, private); + return hook_fn(event, private); } =20 /** @@ -1191,7 +1194,7 @@ static int vtd_page_walk_level(dma_addr_t addr, uint6= 4_t start, uint32_t offset; uint64_t slpte; uint64_t subpage_size, subpage_mask; - IOMMUTLBEntry entry; + IOMMUTLBEvent event; uint64_t iova =3D start; uint64_t iova_next; int ret =3D 0; @@ -1245,13 +1248,15 @@ static int vtd_page_walk_level(dma_addr_t addr, uin= t64_t start, * * In either case, we send an IOTLB notification down. */ - entry.target_as =3D &address_space_memory; - entry.iova =3D iova & subpage_mask; - entry.perm =3D IOMMU_ACCESS_FLAG(read_cur, write_cur); - entry.addr_mask =3D ~subpage_mask; + event.entry.target_as =3D &address_space_memory; + event.entry.iova =3D iova & subpage_mask; + event.entry.perm =3D IOMMU_ACCESS_FLAG(read_cur, write_cur); + event.entry.addr_mask =3D ~subpage_mask; /* NOTE: this is only meaningful if entry_valid =3D=3D true */ - entry.translated_addr =3D vtd_get_slpte_addr(slpte, info->aw); - ret =3D vtd_page_walk_one(&entry, info); + event.entry.translated_addr =3D vtd_get_slpte_addr(slpte, info= ->aw); + event.type =3D event.entry.perm ? IOMMU_NOTIFIER_MAP : + IOMMU_NOTIFIER_UNMAP; + ret =3D vtd_page_walk_one(&event, info); } =20 if (ret < 0) { @@ -1430,10 +1435,10 @@ static int vtd_dev_to_context_entry(IntelIOMMUState= *s, uint8_t bus_num, return 0; } =20 -static int vtd_sync_shadow_page_hook(IOMMUTLBEntry *entry, +static int vtd_sync_shadow_page_hook(IOMMUTLBEvent *event, void *private) { - memory_region_notify_iommu((IOMMUMemoryRegion *)private, 0, *entry); + memory_region_notify_iommu(private, 0, *event); return 0; } =20 @@ -1993,14 +1998,17 @@ static void vtd_iotlb_page_invalidate_notify(IntelI= OMMUState *s, * page tables. We just deliver the PSI down to * invalidate caches. */ - IOMMUTLBEntry entry =3D { - .target_as =3D &address_space_memory, - .iova =3D addr, - .translated_addr =3D 0, - .addr_mask =3D size - 1, - .perm =3D IOMMU_NONE, + IOMMUTLBEvent event =3D { + .type =3D IOMMU_NOTIFIER_UNMAP, + .entry =3D { + .target_as =3D &address_space_memory, + .iova =3D addr, + .translated_addr =3D 0, + .addr_mask =3D size - 1, + .perm =3D IOMMU_NONE, + }, }; - memory_region_notify_iommu(&vtd_as->iommu, 0, entry); + memory_region_notify_iommu(&vtd_as->iommu, 0, event); } } } @@ -2412,7 +2420,7 @@ static bool vtd_process_device_iotlb_desc(IntelIOMMUS= tate *s, VTDInvDesc *inv_desc) { VTDAddressSpace *vtd_dev_as; - IOMMUTLBEntry entry; + IOMMUTLBEvent event; struct VTDBus *vtd_bus; hwaddr addr; uint64_t sz; @@ -2460,12 +2468,13 @@ static bool vtd_process_device_iotlb_desc(IntelIOMM= UState *s, sz =3D VTD_PAGE_SIZE; } =20 - entry.target_as =3D &vtd_dev_as->as; - entry.addr_mask =3D sz - 1; - entry.iova =3D addr; - entry.perm =3D IOMMU_NONE; - entry.translated_addr =3D 0; - memory_region_notify_iommu(&vtd_dev_as->iommu, 0, entry); + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.target_as =3D &vtd_dev_as->as; + event.entry.addr_mask =3D sz - 1; + event.entry.iova =3D addr; + event.entry.perm =3D IOMMU_NONE; + event.entry.translated_addr =3D 0; + memory_region_notify_iommu(&vtd_dev_as->iommu, 0, event); =20 done: return true; @@ -3485,19 +3494,20 @@ static void vtd_address_space_unmap(VTDAddressSpace= *as, IOMMUNotifier *n) size =3D remain =3D end - start + 1; =20 while (remain >=3D VTD_PAGE_SIZE) { - IOMMUTLBEntry entry; + IOMMUTLBEvent event; uint64_t mask =3D get_naturally_aligned_size(start, remain, s->aw_= bits); =20 assert(mask); =20 - entry.iova =3D start; - entry.addr_mask =3D mask - 1; - entry.target_as =3D &address_space_memory; - entry.perm =3D IOMMU_NONE; + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.iova =3D start; + event.entry.addr_mask =3D mask - 1; + event.entry.target_as =3D &address_space_memory; + event.entry.perm =3D IOMMU_NONE; /* This field is meaningless for unmap */ - entry.translated_addr =3D 0; + event.entry.translated_addr =3D 0; =20 - memory_region_notify_iommu_one(n, &entry); + memory_region_notify_iommu_one(n, &event); =20 start +=3D mask; remain -=3D mask; @@ -3533,9 +3543,9 @@ static void vtd_address_space_refresh_all(IntelIOMMUS= tate *s) vtd_switch_address_space_all(s); } =20 -static int vtd_replay_hook(IOMMUTLBEntry *entry, void *private) +static int vtd_replay_hook(IOMMUTLBEvent *event, void *private) { - memory_region_notify_iommu_one((IOMMUNotifier *)private, entry); + memory_region_notify_iommu_one(private, event); return 0; } =20 diff --git a/hw/misc/tz-mpc.c b/hw/misc/tz-mpc.c index 98f151237f..30481e1c90 100644 --- a/hw/misc/tz-mpc.c +++ b/hw/misc/tz-mpc.c @@ -82,8 +82,10 @@ static void tz_mpc_iommu_notify(TZMPC *s, uint32_t lutid= x, /* Called when the LUT word at lutidx has changed from oldlut to newlu= t; * must call the IOMMU notifiers for the changed blocks. */ - IOMMUTLBEntry entry =3D { - .addr_mask =3D s->blocksize - 1, + IOMMUTLBEvent event =3D { + .entry =3D { + .addr_mask =3D s->blocksize - 1, + } }; hwaddr addr =3D lutidx * s->blocksize * 32; int i; @@ -100,26 +102,28 @@ static void tz_mpc_iommu_notify(TZMPC *s, uint32_t lu= tidx, block_is_ns =3D newlut & (1 << i); =20 trace_tz_mpc_iommu_notify(addr); - entry.iova =3D addr; - entry.translated_addr =3D addr; + event.entry.iova =3D addr; + event.entry.translated_addr =3D addr; =20 - entry.perm =3D IOMMU_NONE; - memory_region_notify_iommu(&s->upstream, IOMMU_IDX_S, entry); - memory_region_notify_iommu(&s->upstream, IOMMU_IDX_NS, entry); + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.perm =3D IOMMU_NONE; + memory_region_notify_iommu(&s->upstream, IOMMU_IDX_S, event); + memory_region_notify_iommu(&s->upstream, IOMMU_IDX_NS, event); =20 - entry.perm =3D IOMMU_RW; + event.type =3D IOMMU_NOTIFIER_MAP; + event.entry.perm =3D IOMMU_RW; if (block_is_ns) { - entry.target_as =3D &s->blocked_io_as; + event.entry.target_as =3D &s->blocked_io_as; } else { - entry.target_as =3D &s->downstream_as; + event.entry.target_as =3D &s->downstream_as; } - memory_region_notify_iommu(&s->upstream, IOMMU_IDX_S, entry); + memory_region_notify_iommu(&s->upstream, IOMMU_IDX_S, event); if (block_is_ns) { - entry.target_as =3D &s->downstream_as; + event.entry.target_as =3D &s->downstream_as; } else { - entry.target_as =3D &s->blocked_io_as; + event.entry.target_as =3D &s->blocked_io_as; } - memory_region_notify_iommu(&s->upstream, IOMMU_IDX_NS, entry); + memory_region_notify_iommu(&s->upstream, IOMMU_IDX_NS, event); } } =20 diff --git a/hw/ppc/spapr_iommu.c b/hw/ppc/spapr_iommu.c index 0790239ba5..30352df00e 100644 --- a/hw/ppc/spapr_iommu.c +++ b/hw/ppc/spapr_iommu.c @@ -445,7 +445,7 @@ static void spapr_tce_reset(DeviceState *dev) static target_ulong put_tce_emu(SpaprTceTable *tcet, target_ulong ioba, target_ulong tce) { - IOMMUTLBEntry entry; + IOMMUTLBEvent event; hwaddr page_mask =3D IOMMU_PAGE_MASK(tcet->page_shift); unsigned long index =3D (ioba - tcet->bus_offset) >> tcet->page_shift; =20 @@ -457,12 +457,13 @@ static target_ulong put_tce_emu(SpaprTceTable *tcet, = target_ulong ioba, =20 tcet->table[index] =3D tce; =20 - entry.target_as =3D &address_space_memory, - entry.iova =3D (ioba - tcet->bus_offset) & page_mask; - entry.translated_addr =3D tce & page_mask; - entry.addr_mask =3D ~page_mask; - entry.perm =3D spapr_tce_iommu_access_flags(tce); - memory_region_notify_iommu(&tcet->iommu, 0, entry); + event.entry.target_as =3D &address_space_memory, + event.entry.iova =3D (ioba - tcet->bus_offset) & page_mask; + event.entry.translated_addr =3D tce & page_mask; + event.entry.addr_mask =3D ~page_mask; + event.entry.perm =3D spapr_tce_iommu_access_flags(tce); + event.type =3D event.entry.perm ? IOMMU_NOTIFIER_MAP : IOMMU_NOTIFIER_= UNMAP; + memory_region_notify_iommu(&tcet->iommu, 0, event); =20 return H_SUCCESS; } diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c index 70bfd91bf7..d9e1e29f1e 100644 --- a/hw/s390x/s390-pci-inst.c +++ b/hw/s390x/s390-pci-inst.c @@ -602,15 +602,18 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *i= ommu, S390IOTLBEntry *entry) { S390IOTLBEntry *cache =3D g_hash_table_lookup(iommu->iotlb, &entry->io= va); - IOMMUTLBEntry notify =3D { - .target_as =3D &address_space_memory, - .iova =3D entry->iova, - .translated_addr =3D entry->translated_addr, - .perm =3D entry->perm, - .addr_mask =3D ~PAGE_MASK, + IOMMUTLBEvent event =3D { + .type =3D entry->perm ? IOMMU_NOTIFIER_MAP : IOMMU_NOTIFIER_UNMAP, + .entry =3D { + .target_as =3D &address_space_memory, + .iova =3D entry->iova, + .translated_addr =3D entry->translated_addr, + .perm =3D entry->perm, + .addr_mask =3D ~PAGE_MASK, + }, }; =20 - if (entry->perm =3D=3D IOMMU_NONE) { + if (event.type =3D=3D IOMMU_NOTIFIER_UNMAP) { if (!cache) { goto out; } @@ -623,9 +626,11 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *io= mmu, goto out; } =20 - notify.perm =3D IOMMU_NONE; - memory_region_notify_iommu(&iommu->iommu_mr, 0, notify); - notify.perm =3D entry->perm; + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.perm =3D IOMMU_NONE; + memory_region_notify_iommu(&iommu->iommu_mr, 0, event); + event.type =3D IOMMU_NOTIFIER_MAP; + event.entry.perm =3D entry->perm; } =20 cache =3D g_new(S390IOTLBEntry, 1); @@ -637,7 +642,7 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *iom= mu, dec_dma_avail(iommu); } =20 - memory_region_notify_iommu(&iommu->iommu_mr, 0, notify); + memory_region_notify_iommu(&iommu->iommu_mr, 0, event); =20 out: return iommu->dma_limit ? iommu->dma_limit->avail : 1; diff --git a/hw/virtio/virtio-iommu.c b/hw/virtio/virtio-iommu.c index fc5c75d693..cea8811295 100644 --- a/hw/virtio/virtio-iommu.c +++ b/hw/virtio/virtio-iommu.c @@ -129,7 +129,7 @@ static void virtio_iommu_notify_map(IOMMUMemoryRegion *= mr, hwaddr virt_start, hwaddr virt_end, hwaddr paddr, uint32_t flags) { - IOMMUTLBEntry entry; + IOMMUTLBEvent event; IOMMUAccessFlags perm =3D IOMMU_ACCESS_FLAG(flags & VIRTIO_IOMMU_MAP_F= _READ, flags & VIRTIO_IOMMU_MAP_F_W= RITE); =20 @@ -141,19 +141,20 @@ static void virtio_iommu_notify_map(IOMMUMemoryRegion= *mr, hwaddr virt_start, trace_virtio_iommu_notify_map(mr->parent_obj.name, virt_start, virt_en= d, paddr, perm); =20 - entry.target_as =3D &address_space_memory; - entry.addr_mask =3D virt_end - virt_start; - entry.iova =3D virt_start; - entry.perm =3D perm; - entry.translated_addr =3D paddr; + event.type =3D IOMMU_NOTIFIER_MAP; + event.entry.target_as =3D &address_space_memory; + event.entry.addr_mask =3D virt_end - virt_start; + event.entry.iova =3D virt_start; + event.entry.perm =3D perm; + event.entry.translated_addr =3D paddr; =20 - memory_region_notify_iommu(mr, 0, entry); + memory_region_notify_iommu(mr, 0, event); } =20 static void virtio_iommu_notify_unmap(IOMMUMemoryRegion *mr, hwaddr virt_s= tart, hwaddr virt_end) { - IOMMUTLBEntry entry; + IOMMUTLBEvent event; =20 if (!(mr->iommu_notify_flags & IOMMU_NOTIFIER_UNMAP)) { return; @@ -161,13 +162,14 @@ static void virtio_iommu_notify_unmap(IOMMUMemoryRegi= on *mr, hwaddr virt_start, =20 trace_virtio_iommu_notify_unmap(mr->parent_obj.name, virt_start, virt_= end); =20 - entry.target_as =3D &address_space_memory; - entry.addr_mask =3D virt_end - virt_start; - entry.iova =3D virt_start; - entry.perm =3D IOMMU_NONE; - entry.translated_addr =3D 0; + event.type =3D IOMMU_NOTIFIER_UNMAP; + event.entry.target_as =3D &address_space_memory; + event.entry.addr_mask =3D virt_end - virt_start; + event.entry.iova =3D virt_start; + event.entry.perm =3D IOMMU_NONE; + event.entry.translated_addr =3D 0; =20 - memory_region_notify_iommu(mr, 0, entry); + memory_region_notify_iommu(mr, 0, event); } =20 static gboolean virtio_iommu_notify_unmap_cb(gpointer key, gpointer value, diff --git a/softmmu/memory.c b/softmmu/memory.c index 44de610c72..6ca87e8d73 100644 --- a/softmmu/memory.c +++ b/softmmu/memory.c @@ -1943,11 +1943,15 @@ void memory_region_unregister_iommu_notifier(Memory= Region *mr, } =20 void memory_region_notify_iommu_one(IOMMUNotifier *notifier, - IOMMUTLBEntry *entry) + IOMMUTLBEvent *event) { - IOMMUNotifierFlag request_flags; + IOMMUTLBEntry *entry =3D &event->entry; hwaddr entry_end =3D entry->iova + entry->addr_mask; =20 + if (event->type =3D=3D IOMMU_NOTIFIER_UNMAP) { + assert(entry->perm =3D=3D IOMMU_NONE); + } + /* * Skip the notification if the notification does not overlap * with registered range. @@ -1958,20 +1962,14 @@ void memory_region_notify_iommu_one(IOMMUNotifier *= notifier, =20 assert(entry->iova >=3D notifier->start && entry_end <=3D notifier->en= d); =20 - if (entry->perm & IOMMU_RW) { - request_flags =3D IOMMU_NOTIFIER_MAP; - } else { - request_flags =3D IOMMU_NOTIFIER_UNMAP; - } - - if (notifier->notifier_flags & request_flags) { + if (event->type & notifier->notifier_flags) { notifier->notify(notifier, entry); } } =20 void memory_region_notify_iommu(IOMMUMemoryRegion *iommu_mr, int iommu_idx, - IOMMUTLBEntry entry) + IOMMUTLBEvent event) { IOMMUNotifier *iommu_notifier; =20 @@ -1979,7 +1977,7 @@ void memory_region_notify_iommu(IOMMUMemoryRegion *io= mmu_mr, =20 IOMMU_NOTIFIER_FOREACH(iommu_notifier, iommu_mr) { if (iommu_notifier->iommu_idx =3D=3D iommu_idx) { - memory_region_notify_iommu_one(iommu_notifier, &entry); + memory_region_notify_iommu_one(iommu_notifier, &event); } } } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545517; cv=none; d=zohomail.com; s=zohoarc; b=BhctuAuwysVq/vujYXeTQTkXGtRnN3wmGL6LOUEnpo7iKKR0kFEZtjqENARrQLqyP4kIlXU7+8OamGHnp1kwkIefZCZbKxjXYwyKa9ItuiClCO4ir6tGiLpIWP0OE7f65NqcN6T3LXTJgbmp71Bv3RVWy4i5s70NcqfaH9/gNt4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545517; 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=DDpDvWnDXn0+AbenIHpi5XjLObz83cMo1H8va2rlpRI=; b=elPQ4daL9HjG0Y8/DN7pfohJF19o8Lib8pcPbFUHIb4p4COxV2lX8LbFX+Jq/QRDI36l1WJeyGzUK1MwJ+qiS5iQMuN4JRqr2gWdUl5Ax7K0bB2sZcjip5yB+Q05oEcUmuxFZqayjN2/kCAXEJsbR3UQJSaHyDtxdT+PYP8Amho= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545517279535.3983869790513; Wed, 9 Dec 2020 12:25:17 -0800 (PST) Received: from localhost ([::1]:41058 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn44A-0002x2-Av for importer@patchew.org; Wed, 09 Dec 2020 13:19:54 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51538) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rp-0001Lo-Cz for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:09 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:57050) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rk-0007fg-4i for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:09 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-248-Kvlzj8aCNp682Dk-g3F_KA-1; Wed, 09 Dec 2020 13:06:59 -0500 Received: by mail-wm1-f71.google.com with SMTP id r5so876979wma.2 for ; Wed, 09 Dec 2020 10:06:59 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id m21sm4781355wml.13.2020.12.09.10.06.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:06:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537222; h=from:from: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; bh=DDpDvWnDXn0+AbenIHpi5XjLObz83cMo1H8va2rlpRI=; b=T+QsY33rBoqf5QMXdrqjbOok191sclSQi0eDL1R5ew+5OFt6z23cCYcI05B1FWbLVxv2cX rOk/mTB5Ar2LQsYRQeWqezsUZa7n61njnC7FGeSP3SqL5P84bzaV/wMUTe27SmNlYA1fQg hAckrt81SQ8z6Wc+lOWl8C3X6bpUGAU= X-MC-Unique: Kvlzj8aCNp682Dk-g3F_KA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=DDpDvWnDXn0+AbenIHpi5XjLObz83cMo1H8va2rlpRI=; b=IjajC8PGf+J6Oo38kf721pAp5/ghQaP1DgJ91KGjP0FrQ9JpewvmZbjYMz+rMM3/oH 8tzLt1MylIDs01txP5F48Oor6OwBmYMb3mui+QPXhMOHukjmA4Xk5dDJWfhESjoJdhIG NkthKN6+pfm4P7yJFs8ucP4YWBuCnpXBraAEmD68Wr6xRaBSvMdkcExFCN1DmzneQSuT EbPQuv1wbrp6RLMZjUo+WWjsUsMHs26YnpGwXaSZsY9KlBhLI1zAgZnn6F5TN1/4GGj8 yWmRI/h4uPc1GZLur5RC7VadlB7HYjwSaVNVczQFkm3OJcms3neqQwTpLRwZGQXOIuo4 1EtA== X-Gm-Message-State: AOAM533a3QYz2n4OGMvMuEgSDDFjbPS6/bvH3aLzPPXbG9fW7XTKAqtl ef3ZoTuN8uF2IHFD6gQw6M7UVoBHfNGjC3fvtnTd7vAG68fpEUV+1Ms4JzmdJ5c7AHESX1FAhF1 N75/gyOZLVP9Fhr4LfC27PgiYHGKVLE8JeMwxTtsXMdJfUnDFXTARyWa2uNLk X-Received: by 2002:adf:e541:: with SMTP id z1mr4003011wrm.143.1607537217824; Wed, 09 Dec 2020 10:06:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJyeF8Ce/xcAQ6yzW6v3yRzgAodvZ01Akup6YvmPJ9+7r2RKMgqw+NxOHBhkVizxfua5E9jpkA== X-Received: by 2002:adf:e541:: with SMTP id z1mr4002982wrm.143.1607537217655; Wed, 09 Dec 2020 10:06:57 -0800 (PST) Date: Wed, 9 Dec 2020 13:06:49 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 04/65] memory: Add IOMMU_NOTIFIER_DEVIOTLB_UNMAP IOMMUTLBNotificationType Message-ID: <20201209180546.721296-5-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Juan Quintela , Jason Wang , Richard Henderson , Peter Xu , Eugenio =?utf-8?B?UMOpcmV6?= , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Eugenio P=C3=A9rez This allows us to differentiate between regular IOMMU map/unmap events and DEVIOTLB unmap. Doing so, notifiers that only need device IOTLB invalidations will not receive regular IOMMU unmappings. Adapt intel and vhost to use it. Signed-off-by: Eugenio P=C3=A9rez Reviewed-by: Peter Xu Reviewed-by: Juan Quintela Acked-by: Jason Wang Message-Id: <20201116165506.31315-4-eperezma@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/exec/memory.h | 7 ++++++- hw/i386/intel_iommu.c | 2 +- hw/virtio/vhost.c | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index e86b5e92da..521d9901d7 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -97,9 +97,14 @@ typedef enum { IOMMU_NOTIFIER_UNMAP =3D 0x1, /* Notify entry changes (newly created entries) */ IOMMU_NOTIFIER_MAP =3D 0x2, + /* Notify changes on device IOTLB entries */ + IOMMU_NOTIFIER_DEVIOTLB_UNMAP =3D 0x04, } IOMMUNotifierFlag; =20 -#define IOMMU_NOTIFIER_ALL (IOMMU_NOTIFIER_MAP | IOMMU_NOTIFIER_UNMAP) +#define IOMMU_NOTIFIER_IOTLB_EVENTS (IOMMU_NOTIFIER_MAP | IOMMU_NOTIFIER_U= NMAP) +#define IOMMU_NOTIFIER_DEVIOTLB_EVENTS IOMMU_NOTIFIER_DEVIOTLB_UNMAP +#define IOMMU_NOTIFIER_ALL (IOMMU_NOTIFIER_IOTLB_EVENTS | \ + IOMMU_NOTIFIER_DEVIOTLB_EVENTS) =20 struct IOMMUNotifier; typedef void (*IOMMUNotify)(struct IOMMUNotifier *notifier, diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index 56180b1c43..edc3090f91 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -2468,7 +2468,7 @@ static bool vtd_process_device_iotlb_desc(IntelIOMMUS= tate *s, sz =3D VTD_PAGE_SIZE; } =20 - event.type =3D IOMMU_NOTIFIER_UNMAP; + event.type =3D IOMMU_NOTIFIER_DEVIOTLB_UNMAP; event.entry.target_as =3D &vtd_dev_as->as; event.entry.addr_mask =3D sz - 1; event.entry.iova =3D addr; diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index 614ccc2bcb..28c7d78172 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -718,7 +718,7 @@ static void vhost_iommu_region_add(MemoryListener *list= ener, iommu_idx =3D memory_region_iommu_attrs_to_index(iommu_mr, MEMTXATTRS_UNSPECIFIED); iommu_notifier_init(&iommu->n, vhost_iommu_unmap_notify, - IOMMU_NOTIFIER_UNMAP, + IOMMU_NOTIFIER_DEVIOTLB_UNMAP, section->offset_within_region, int128_get64(end), iommu_idx); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607538550; cv=none; d=zohomail.com; s=zohoarc; b=H1vqUALKXt34HP5LTw+Z/uGL4vy45/qUZEpH8pTWcaJD79IexUnya6JAB2UfN4E+fP6FfYrC5uJi0ij5jpaZiqt4UKZxDeBYzhDvHR3ajMosNHEvNkuENMqjV0rfsKDdFfzdJdS1TwSmtbumAqGyozS7H0Ttr+z0VfphjjLMeZ4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607538550; 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=LOFadtS8P+HipB+dMXVoHfndgHAL2KBXN7L2k6t4OKo=; b=cUaTmGRrBsuDaxPPCjPRI2HHmhLD61eZOpPAYRYcNKwftIyR9rhyzRVZusIg+7t2eqoFsj143EkK7DiOaj55fTK/hYg4BNpIPskZH6kXcI4f4zrKaeCHqP6YGaYNilCpexXJNYSjDNL5lNzZBH6Y9bquNQWEL235Iklj39VlL2A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160753855052416.341200616624633; Wed, 9 Dec 2020 10:29:10 -0800 (PST) Received: from localhost ([::1]:48972 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn47x-0006Lf-Bw for importer@patchew.org; Wed, 09 Dec 2020 13:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51550) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rr-0001NK-EL for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:11 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:37562) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rn-0007hL-3j for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:10 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-91-vvfGoUx7OyKa56WUaK2Mzw-1; Wed, 09 Dec 2020 13:07:04 -0500 Received: by mail-wm1-f71.google.com with SMTP id w204so67879wmb.1 for ; Wed, 09 Dec 2020 10:07:04 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id c81sm5207541wmd.6.2020.12.09.10.06.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537226; h=from:from: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; bh=LOFadtS8P+HipB+dMXVoHfndgHAL2KBXN7L2k6t4OKo=; b=K4EIRLe5Gdrr0/j1zxdJwQNFu2lWuOmBL6QyVBS1C9wNKicYvCNIkVwY+TxHwkpu1UTuAd EUfIRO/vlSN4b2fl8ENb7ggjTClblFjN2yPiCcnuzDIDwqNGSsrQBchKDJrV3jPxMD3iIe MIeQVFHRQWxr4QrZa94M6e9IZXTrCsY= X-MC-Unique: vvfGoUx7OyKa56WUaK2Mzw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=LOFadtS8P+HipB+dMXVoHfndgHAL2KBXN7L2k6t4OKo=; b=OfabGsF2yFT0yB1ABV0v/4NcWVKxjY7aozCweLSJERjKJCK5ijqH7nc0dlMulZyv0o VCID7lVqwhrJ3ZsQiV2xd1l6NUxkaqgUs02+cxSSXv+kjsuik3p0QL5nhfagB7S3nmtE qqNPS1kwZBBKO3gRuxV3Dw/lnY35SE8QA0MqNpM3mhI5hr3OTAmPBd6j8qH3TYlQXY1C T8qzVP6GD4lEylpbjj5mIfUUnFKY8JkwNW87Gsz3ztFnNufD0b/ON/aLRctmDWnK7oJ8 f+1EKnr68OtLgNDze8wM/VwGShz+uyPceRbbRai5GhlkogsG05JVTHLlXQGNYi+O2gVT CbJw== X-Gm-Message-State: AOAM533qyqYLcjYo8q/A6fbX/oBCUe2I+ftYJ945wpNSPUeklOLcd383 TAK2MWDzNEJSLsyct6Eq3WfZEwd2yzf3iK7x9T37ptzDcinVKtqdlQmg1KmsbIKZg4gswOeHGBw uPIxweicfwwkaLyMAcAf7lZXI3bybPkfOcWAcVs2L/Ovpdra77H6xoStNWnzD X-Received: by 2002:a1c:8d:: with SMTP id 135mr4029082wma.177.1607537223007; Wed, 09 Dec 2020 10:07:03 -0800 (PST) X-Google-Smtp-Source: ABdhPJxHfJ7MYa1kXzjTDN8xixjgO33PvTWzOMDZCOtTV7HAKadoDFi5VvVkzoiZYJK9d6Rin5N9IA== X-Received: by 2002:a1c:8d:: with SMTP id 135mr4029048wma.177.1607537222732; Wed, 09 Dec 2020 10:07:02 -0800 (PST) Date: Wed, 9 Dec 2020 13:06:58 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 05/65] intel_iommu: Skip page walking on device iotlb invalidations Message-ID: <20201209180546.721296-6-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Jason Wang , Richard Henderson , Peter Xu , Eugenio =?utf-8?B?UMOpcmV6?= , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Eugenio P=C3=A9rez Although they didn't reach the notifier because of the filtering in memory_region_notify_iommu_one, the vt-d was still splitting huge memory invalidations in chunks. Skipping it. This improves performance in case of netperf with vhost-net: * TCP_STREAM: From 1923.6Mbit/s to 2175.13Mbit/s (13%) * TCP_RR: From 8464.73 trans/s to 8932.703333 trans/s (5.5%) * UDP_RR: From 8562.08 trans/s to 9005.62/s (5.1%) * UDP_STREAM: No change observed (insignificant 0.1% improvement) Signed-off-by: Eugenio P=C3=A9rez Acked-by: Jason Wang Message-Id: <20201116165506.31315-5-eperezma@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/intel_iommu.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index edc3090f91..0cc71e4057 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -1478,6 +1478,10 @@ static int vtd_sync_shadow_page_table(VTDAddressSpac= e *vtd_as) VTDContextEntry ce; IOMMUNotifier *n; =20 + if (!(vtd_as->iommu.iommu_notify_flags & IOMMU_NOTIFIER_IOTLB_EVENTS))= { + return 0; + } + ret =3D vtd_dev_to_context_entry(vtd_as->iommu_state, pci_bus_num(vtd_as->bus), vtd_as->devfn, &ce); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545586; cv=none; d=zohomail.com; s=zohoarc; b=F3jE2S507e3fYbjiZfzJo6sutkfvcxRGs6T6gbZfzIRbWmD8fWYm8YuFxMgtoy9Ir+csHt7gLDHxqHWrlqJQA778/W9ojcYUJvPvP5f7bLcI1lbXyW6dlXuCMJDhUSIHVWe9XgKD41E5dVY6+/6RvQey7GtRqmEekDPvnYZqA+A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545586; 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=zxJ3f9AkcimEoHVGFWIULEfxtXcI3G+nN2yyJC0qTJU=; b=S7haN9oMSYOSF7Zc8lmULrkdbtye39Wdw1THzg0L3xx7L/sNr4dup3QgVpr2br12tjKQ/KOsHwy5OWPyeacBglaGAtkkNepd71uRvPavUIlXjdO+44sxgOfPceCzVXNOgsLHiyeZ2P8uDTgKvTf5vc2no3OvjQCr3SRDHRFesEA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545586241392.2607108754861; Wed, 9 Dec 2020 12:26:26 -0800 (PST) Received: from localhost ([::1]:39690 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Fg-00060H-Ho for importer@patchew.org; Wed, 09 Dec 2020 13:31:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51562) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rt-0001QJ-TO for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:13 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:55308) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rr-0007iz-6R for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:13 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-9-ONaq8ufYNzC251S1rZI1zQ-1; Wed, 09 Dec 2020 13:07:07 -0500 Received: by mail-wr1-f70.google.com with SMTP id j5so948927wro.12 for ; Wed, 09 Dec 2020 10:07:07 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id z17sm4486307wrh.88.2020.12.09.10.07.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537230; h=from:from: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; bh=zxJ3f9AkcimEoHVGFWIULEfxtXcI3G+nN2yyJC0qTJU=; b=TJ7u0oAF2K0iZ7jdUymuFu0V7ZFUYPobowPmI4eiUyv9kuxdBUJtmL6YZCNfzXCkdLau+Z ks9uS4TXIRu6+1zGNktfEkPq8C6vuH7GDzfu2TUxRLqc++77aD2x4OZY0mE0Tn1OoqfmIs +ToDYyESqJ4VBbz2H4rJ+KtHzeuJLxQ= X-MC-Unique: ONaq8ufYNzC251S1rZI1zQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=zxJ3f9AkcimEoHVGFWIULEfxtXcI3G+nN2yyJC0qTJU=; b=ZBgcuIMOXKJa7uhOvhB2JuRtVV+byVUDqKJUTABjlbggKG13sq+7Jt6BZuEvB7OCdC thQdAEAceCtUQ3I0liY9iMYMazaVOkLY69y+FvPXyrGphbaD5AmUDpMKGeT1VoZNNxyv g3sBDc9Sl7SFneOucD1cZS2LIiTY2vxRaKCZ9hUaGAPkdb8vdQqJg67F1zfNIulQoUgX SxfR6M1oW73vJr4b16R5mpg2z+3OHEO5UjBFIwhvJ9HpcqsCxnwgatnlft9BHv1jDUVA IJiOkYKQAfTWE4QuHcFPwyPg3cYhFSgdsJ3m9GEFPwPQw24vwqZM1JZSxoP0vTPDcSph Yh0Q== X-Gm-Message-State: AOAM531HqztssMGc1EdaHT/pV91dsdcMF8YTITbgTbZPJf+zOF4K5NcF UPGAcdwGIgXBb17GiwT1d868zJMm+e7SYBsPvGbR1kIcjVpyowG3q1z/DsSMGmjLEAzpzoMVttY CJL1S7aNSMZSGPqYcp7mm+GRYkwZ1rhneVvej+CU5kMLmvTd0tfgqOhMTwLUB X-Received: by 2002:adf:dd90:: with SMTP id x16mr3950373wrl.85.1607537226087; Wed, 09 Dec 2020 10:07:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJyVC6oR2ZrKX9VPHlDs/pKJHwvwr60/ZT4uH5qmXowcMrZ6PGPpOO6b2UuGEPaLD+c/UtLTEA== X-Received: by 2002:adf:dd90:: with SMTP id x16mr3950348wrl.85.1607537225821; Wed, 09 Dec 2020 10:07:05 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:03 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 06/65] memory: Skip bad range assertion if notifier is DEVIOTLB_UNMAP type Message-ID: <20201209180546.721296-7-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Juan Quintela , Jason Wang , Peter Xu , Eugenio =?utf-8?B?UMOpcmV6?= , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Eugenio P=C3=A9rez Device IOTLB invalidations can unmap arbitrary ranges, eiter outside of the memory region or even [0, ~0ULL] for all the space. The assertion could be hit by a guest, and rhel7 guest effectively hit it. Signed-off-by: Eugenio P=C3=A9rez Reviewed-by: Peter Xu Reviewed-by: Juan Quintela Acked-by: Jason Wang Message-Id: <20201116165506.31315-6-eperezma@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- softmmu/memory.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/softmmu/memory.c b/softmmu/memory.c index 6ca87e8d73..22bacbbc78 100644 --- a/softmmu/memory.c +++ b/softmmu/memory.c @@ -1947,6 +1947,7 @@ void memory_region_notify_iommu_one(IOMMUNotifier *no= tifier, { IOMMUTLBEntry *entry =3D &event->entry; hwaddr entry_end =3D entry->iova + entry->addr_mask; + IOMMUTLBEntry tmp =3D *entry; =20 if (event->type =3D=3D IOMMU_NOTIFIER_UNMAP) { assert(entry->perm =3D=3D IOMMU_NONE); @@ -1960,10 +1961,16 @@ void memory_region_notify_iommu_one(IOMMUNotifier *= notifier, return; } =20 - assert(entry->iova >=3D notifier->start && entry_end <=3D notifier->en= d); + if (notifier->notifier_flags & IOMMU_NOTIFIER_DEVIOTLB_UNMAP) { + /* Crop (iova, addr_mask) to range */ + tmp.iova =3D MAX(tmp.iova, notifier->start); + tmp.addr_mask =3D MIN(entry_end, notifier->end) - tmp.iova; + } else { + assert(entry->iova >=3D notifier->start && entry_end <=3D notifier= ->end); + } =20 if (event->type & notifier->notifier_flags) { - notifier->notify(notifier, entry); + notifier->notify(notifier, &tmp); } } =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542041; cv=none; d=zohomail.com; s=zohoarc; b=i322uuMcBd94xj0AHVYgkC/Q3IJ19uL8id12tGRYpBTwL2PC9P8FMsHPJB5z4g/GzvBzxN8jOTIOnU/oaqNrTpfdvcWJfhWV3IXQIs0ox3htnSBW5rruAjdq37t8ibqULASA2ZPffMw0JYwA+D9kQTXp7xCAOZFdxq2PcwNJQPQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542041; h=Content-Type: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=bcDsWwFf1VSLW/JLtS3fVtqy9UgBR89UFwruerLljvk=; b=muxgbznflhVb60MfVYIoUqasrxUl1JeVwvUGQpSaXndnSLU8uceJ1kndjdVwfx5vBNRnVkPcvSYUF3xjPwUZ1CnjoltqzDre+gUynqTgPX8pI1tTluuJTgjTwxHmx5SukWBd9IgwWAE5ZkpOtQnbZzJ3joBNyiQUArcdE9/wB6w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542041634613.8194669014673; Wed, 9 Dec 2020 11:27:21 -0800 (PST) Received: from localhost ([::1]:35854 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn42H-0000jJ-H6 for importer@patchew.org; Wed, 09 Dec 2020 13:17:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51594) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3rw-0001X9-NH for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:16 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:29231) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rt-0007k8-HX for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:16 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-424-wwYqJV0aOyC5msfTjSEKgA-1; Wed, 09 Dec 2020 13:07:10 -0500 Received: by mail-wm1-f72.google.com with SMTP id a134so638287wmd.8 for ; Wed, 09 Dec 2020 10:07:10 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id j7sm4472359wmb.40.2020.12.09.10.07.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537232; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=bcDsWwFf1VSLW/JLtS3fVtqy9UgBR89UFwruerLljvk=; b=gf3xzncJi1vFF+a9twzk8Ef5ir5ZbAUHBdMg7M658KdNYcdyS3bx/kvafTRv4lVifr4X/1 Ry+RWabhqt9VAnXuFOlSGk1HBggMtDn406oeRVu0/1LfDtNdU/BWUOLuVuyFD7Z9iIgrGo t/ibJSGDiL3Suj+yQPfuMqXcnF4o91o= X-MC-Unique: wwYqJV0aOyC5msfTjSEKgA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=bcDsWwFf1VSLW/JLtS3fVtqy9UgBR89UFwruerLljvk=; b=G2WUh9hk6lM8woHrKVLidvnCGGVy18EyrZ0859ASAW3PzxFeDRIaIi600a7hL8pKzC 8FpaVJgNrfTmkIj7murpJajRAmTJ+rNFMdH07Snedh4ixypw61Mb/of3fllBSf/elO5y P1qKLNrKheS92EjmOhQqH9Rykk3IafgPD0AuRaUeQE9DjRaFnVXfbhZu351OhvfESDsE Rp56+/12/kHcveG8+I+tJ9HyhQOf64XNwweIa4ZRf9q5kF/DQnxdseg21NiF/kmdTloU SGlSVLw/YNTYyioBzhhhaaFiTBcSiAJ+xj60lVmz5ppyYGfk6Z9eBF9aqyY3k/S0JzEl yZ0g== X-Gm-Message-State: AOAM532bJ/wl0gj/RL+MQHG0h4p54rbOtlvyNt/0jTyNTWEmnjwQdohZ QCbVfIa9Yh1Yb9nVXQmZVCy739HC8tE86yUFMbDg2SVWNVwG3BBSJz0LKoPuOX8jt2zjC82mJoA Jog/JQP87/08UQRHSu1OcOs3N/i1DqZiN4UU7YrVWhnityGptYKxCEcpuhW3Z X-Received: by 2002:adf:ce84:: with SMTP id r4mr3966802wrn.91.1607537229052; Wed, 09 Dec 2020 10:07:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJzhWa02DiXCxtQKBYRYJj9v4XnFG7sDwQbM6OeD/fCb24WJzn0RaLvu0P/XDS6W8E6TqgQo0A== X-Received: by 2002:adf:ce84:: with SMTP id r4mr3966778wrn.91.1607537228856; Wed, 09 Dec 2020 10:07:08 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:06 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 07/65] virtio: reset device on bad guest index in virtio_load() Message-ID: <20201209180546.721296-8-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , John Levon Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: John Levon If we find a queue with an inconsistent guest index value, explicitly mark = the device as needing a reset - and broken - via virtio_error(). There's at least one driver implementation - the virtio-win NetKVM driver -= that is able to handle a VIRTIO_CONFIG_S_NEEDS_RESET notification and successful= ly restore the device to a working state. Other implementations do not correct= ly handle this, but as the VQ is not in a functional state anyway, this is sti= ll worth doing. Signed-off-by: John Levon Message-Id: <20201120185103.GA442386@sent> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/virtio/virtio.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c index ceb58fda6c..eff35fab7c 100644 --- a/hw/virtio/virtio.c +++ b/hw/virtio/virtio.c @@ -3161,12 +3161,15 @@ int virtio_load(VirtIODevice *vdev, QEMUFile *f, in= t version_id) nheads =3D vring_avail_idx(&vdev->vq[i]) - vdev->vq[i].last_av= ail_idx; /* Check it isn't doing strange things with descriptor numbers= . */ if (nheads > vdev->vq[i].vring.num) { - qemu_log_mask(LOG_GUEST_ERROR, - "VQ %d size 0x%x Guest index 0x%x " - "inconsistent with Host index 0x%x: delta 0x= %x", - i, vdev->vq[i].vring.num, - vring_avail_idx(&vdev->vq[i]), - vdev->vq[i].last_avail_idx, nheads); + virtio_error(vdev, "VQ %d size 0x%x Guest index 0x%x " + "inconsistent with Host index 0x%x: delta 0x%= x", + i, vdev->vq[i].vring.num, + vring_avail_idx(&vdev->vq[i]), + vdev->vq[i].last_avail_idx, nheads); + vdev->vq[i].used_idx =3D 0; + vdev->vq[i].shadow_avail_idx =3D 0; + vdev->vq[i].inuse =3D 0; + continue; } vdev->vq[i].used_idx =3D vring_used_idx(&vdev->vq[i]); vdev->vq[i].shadow_avail_idx =3D vring_avail_idx(&vdev->vq[i]); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542141; cv=none; d=zohomail.com; s=zohoarc; b=g/CLEp7cbrV2NwUIOI7eAKklaeYiS9F+1WZMBcQDV8/rUw1oTC5/fXVzOUD1Ihl/049Yh7j6bQmHGimC2x+Fffm7wRSlVIS3IoJWJMyblQM63Vg6FMc9alKgRAsJOiQHCDF2FFaAr0JkZiF7ZpGk5Kzm56lyyFftYWjPaX390xk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542141; h=Content-Type: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=sBbYqATIAnCNBcAAt91kqKRHx/wGJ4fEyCpCv6h89HQ=; b=RXENUAMFiBMUTcdiVlA3bUd11Hk4ebbnHudr5ryfGbhGKjCahSAfwapS4hczNZzmegdFd/+L8Y91pg9H+DAa7h7+c8bcbK/NQAZxfnKpSq8zcua4htnLAXYkzyo0Cis5JXmis+OCPPdQZB+V3UhuyxCF+OO1hx9ECOErvTk/Gvs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542141505436.208848534553; Wed, 9 Dec 2020 11:29:01 -0800 (PST) Received: from localhost ([::1]:44364 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn45X-0004KF-Mx for importer@patchew.org; Wed, 09 Dec 2020 13:21:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51606) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3s1-0001gm-25 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:21 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:27614) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3rz-0007mc-2O for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:20 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-230-ER_adXl4OEOgCTKCXmqUzA-1; Wed, 09 Dec 2020 13:07:16 -0500 Received: by mail-wm1-f72.google.com with SMTP id f187so871524wme.3 for ; Wed, 09 Dec 2020 10:07:16 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id k18sm5670081wrd.45.2020.12.09.10.07.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537238; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sBbYqATIAnCNBcAAt91kqKRHx/wGJ4fEyCpCv6h89HQ=; b=HzF4HETwXwEHUKLDeAfdJQ8oPfkYj1sMuM5UlQU1tb0O/izng7+t1BpeebI3opxXobqGWl t3yqwd2vDrCfPw3GDStCdB0b1zx8NS6EOgYdM/o9UbCWku3Ixg2RKgH5TazfDEFNitD3Ly Bae2kiCOVxyjl6WS0TKW/npQ/BZpEeY= X-MC-Unique: ER_adXl4OEOgCTKCXmqUzA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=sBbYqATIAnCNBcAAt91kqKRHx/wGJ4fEyCpCv6h89HQ=; b=evpVWSqWKY7mmUzGOD83LzKhl7BAQqgzcd+68ciSbYY4RKdge0FZogEUlURMxlRRMY N2Kchv5C/tYvPpe5qJUdpx2nKznUD1syHeGiQXR0LHh82o0jAlyjuTV9MfzthbZMpixx y7HJQdxjs4WXZG6/Szf+IgLV0b6K9RGcL334spGzie0Jmwqr+ieOlcoduySQKZ0sYsPF KCEz+ZjdmhVdriJyijfvZZjAuUykCfyKzYcZv5HiD0YCGh0QD8hlLKJfe9D2fH2+/fJS t3VbBC9mcCMpG2rZ1wnrLztOjghYyzqFFT4waEDZSQZP6Xxzq2Db+/weuURr1vP27J8E yqJw== X-Gm-Message-State: AOAM5306G1vkubckAh/8SlkmM0UDrKpjps5peL9lwANqeb6yDCrjVILP aaoXPXc3GwEn14GyOCuEBRc5j9USmQa4VujQTfB1iwARkdr7BtubpA1Ax42ocj/ByrLu2kG06MX itHIRcHWpPlcdeB1SZqmsLknSTYeNsaPiqd2UmuCVa9HjL0nwddAsuZOTYprO X-Received: by 2002:a1c:2ec6:: with SMTP id u189mr4119482wmu.31.1607537234715; Wed, 09 Dec 2020 10:07:14 -0800 (PST) X-Google-Smtp-Source: ABdhPJxEGsixJ9jJajbthmOiNj27s8wKwlpDe5GjIQXVYLRJePZ2ll+gGjRXjQ1Z/NGyosUP0DQP/Q== X-Received: by 2002:a1c:2ec6:: with SMTP id u189mr4119458wmu.31.1607537234538; Wed, 09 Dec 2020 10:07:14 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:09 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 08/65] acpi/gpex: Extract two APIs from acpi_dsdt_add_pci Message-ID: <20201209180546.721296-9-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Yubo Miao , Jiahui Cen , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao Extract two APIs acpi_dsdt_add_pci_route_table and acpi_dsdt_add_pci_osc from acpi_dsdt_add_pci. The first API is used to specify the pci route table and the second API is used to declare the operation system capabilities. These two APIs would be used to specify the pxb-pcie in DSDT. Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-2-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/pci-host/gpex-acpi.c | 112 ++++++++++++++++++++++------------------ 1 file changed, 63 insertions(+), 49 deletions(-) diff --git a/hw/pci-host/gpex-acpi.c b/hw/pci-host/gpex-acpi.c index dbb350a837..32a9f2796d 100644 --- a/hw/pci-host/gpex-acpi.c +++ b/hw/pci-host/gpex-acpi.c @@ -2,21 +2,11 @@ #include "hw/acpi/aml-build.h" #include "hw/pci-host/gpex.h" =20 -void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig *cfg) +static void acpi_dsdt_add_pci_route_table(Aml *dev, uint32_t irq) { - int nr_pcie_buses =3D cfg->ecam.size / PCIE_MMCFG_SIZE_MIN; - Aml *method, *crs, *ifctx, *UUID, *ifctx1, *elsectx, *buf; + Aml *method, *crs; int i, slot_no; =20 - Aml *dev =3D aml_device("%s", "PCI0"); - aml_append(dev, aml_name_decl("_HID", aml_string("PNP0A08"))); - aml_append(dev, aml_name_decl("_CID", aml_string("PNP0A03"))); - aml_append(dev, aml_name_decl("_SEG", aml_int(0))); - aml_append(dev, aml_name_decl("_BBN", aml_int(0))); - aml_append(dev, aml_name_decl("_UID", aml_int(0))); - aml_append(dev, aml_name_decl("_STR", aml_unicode("PCIe 0 Device"))); - aml_append(dev, aml_name_decl("_CCA", aml_int(1))); - /* Declare the PCI Routing Table. */ Aml *rt_pkg =3D aml_varpackage(PCI_SLOT_MAX * PCI_NUM_PINS); for (slot_no =3D 0; slot_no < PCI_SLOT_MAX; slot_no++) { @@ -34,7 +24,7 @@ void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig *cf= g) =20 /* Create GSI link device */ for (i =3D 0; i < PCI_NUM_PINS; i++) { - uint32_t irqs =3D cfg->irq + i; + uint32_t irqs =3D irq + i; Aml *dev_gsi =3D aml_device("GSI%d", i); aml_append(dev_gsi, aml_name_decl("_HID", aml_string("PNP0C0F"))); aml_append(dev_gsi, aml_name_decl("_UID", aml_int(i))); @@ -52,43 +42,11 @@ void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig *= cfg) aml_append(dev_gsi, method); aml_append(dev, dev_gsi); } +} =20 - method =3D aml_method("_CBA", 0, AML_NOTSERIALIZED); - aml_append(method, aml_return(aml_int(cfg->ecam.base))); - aml_append(dev, method); - - Aml *rbuf =3D aml_resource_template(); - aml_append(rbuf, - aml_word_bus_number(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECODE, - 0x0000, 0x0000, nr_pcie_buses - 1, 0x0000, - nr_pcie_buses)); - if (cfg->mmio32.size) { - aml_append(rbuf, - aml_dword_memory(AML_POS_DECODE, AML_MIN_FIXED, AML_MAX= _FIXED, - AML_NON_CACHEABLE, AML_READ_WRITE, 0x0= 000, - cfg->mmio32.base, - cfg->mmio32.base + cfg->mmio32.size - = 1, - 0x0000, - cfg->mmio32.size)); - } - if (cfg->pio.size) { - aml_append(rbuf, - aml_dword_io(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECO= DE, - AML_ENTIRE_RANGE, 0x0000, 0x0000, - cfg->pio.size - 1, - cfg->pio.base, - cfg->pio.size)); - } - if (cfg->mmio64.size) { - aml_append(rbuf, - aml_qword_memory(AML_POS_DECODE, AML_MIN_FIXED, AML_MAX= _FIXED, - AML_NON_CACHEABLE, AML_READ_WRITE, 0x0= 000, - cfg->mmio64.base, - cfg->mmio64.base + cfg->mmio64.size - = 1, - 0x0000, - cfg->mmio64.size)); - } - aml_append(dev, aml_name_decl("_CRS", rbuf)); +static void acpi_dsdt_add_pci_osc(Aml *dev) +{ + Aml *method, *UUID, *ifctx, *ifctx1, *elsectx, *buf; =20 /* Declare an _OSC (OS Control Handoff) method */ aml_append(dev, aml_name_decl("SUPP", aml_int(0))); @@ -160,6 +118,62 @@ void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig = *cfg) buf =3D aml_buffer(1, byte_list); aml_append(method, aml_return(buf)); aml_append(dev, method); +} + +void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig *cfg) +{ + int nr_pcie_buses =3D cfg->ecam.size / PCIE_MMCFG_SIZE_MIN; + Aml *method, *crs, *dev, *rbuf; + + dev =3D aml_device("%s", "PCI0"); + aml_append(dev, aml_name_decl("_HID", aml_string("PNP0A08"))); + aml_append(dev, aml_name_decl("_CID", aml_string("PNP0A03"))); + aml_append(dev, aml_name_decl("_SEG", aml_int(0))); + aml_append(dev, aml_name_decl("_BBN", aml_int(0))); + aml_append(dev, aml_name_decl("_UID", aml_int(0))); + aml_append(dev, aml_name_decl("_STR", aml_unicode("PCIe 0 Device"))); + aml_append(dev, aml_name_decl("_CCA", aml_int(1))); + + acpi_dsdt_add_pci_route_table(dev, cfg->irq); + + method =3D aml_method("_CBA", 0, AML_NOTSERIALIZED); + aml_append(method, aml_return(aml_int(cfg->ecam.base))); + aml_append(dev, method); + + rbuf =3D aml_resource_template(); + aml_append(rbuf, + aml_word_bus_number(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECODE, + 0x0000, 0x0000, nr_pcie_buses - 1, 0x0000, + nr_pcie_buses)); + if (cfg->mmio32.size) { + aml_append(rbuf, + aml_dword_memory(AML_POS_DECODE, AML_MIN_FIXED, AML_MAX= _FIXED, + AML_NON_CACHEABLE, AML_READ_WRITE, 0x0= 000, + cfg->mmio32.base, + cfg->mmio32.base + cfg->mmio32.size - = 1, + 0x0000, + cfg->mmio32.size)); + } + if (cfg->pio.size) { + aml_append(rbuf, + aml_dword_io(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECO= DE, + AML_ENTIRE_RANGE, 0x0000, 0x0000, + cfg->pio.size - 1, + cfg->pio.base, + cfg->pio.size)); + } + if (cfg->mmio64.size) { + aml_append(rbuf, + aml_qword_memory(AML_POS_DECODE, AML_MIN_FIXED, AML_MAX= _FIXED, + AML_NON_CACHEABLE, AML_READ_WRITE, 0x0= 000, + cfg->mmio64.base, + cfg->mmio64.base + cfg->mmio64.size - = 1, + 0x0000, + cfg->mmio64.size)); + } + aml_append(dev, aml_name_decl("_CRS", rbuf)); + + acpi_dsdt_add_pci_osc(dev); =20 Aml *dev_res0 =3D aml_device("%s", "RES0"); aml_append(dev_res0, aml_name_decl("_HID", aml_string("PNP0C02"))); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549476; cv=none; d=zohomail.com; s=zohoarc; b=Eyvq6sVRxRrYe/AcGnbfB+wwJRJ0okPbvUYezg1btDN5huUQnXwtRgFO50WnWZPYWjdoZafgUz1WPVjHb5TSGnJVgeJJoA8DxDeN7xYw8+J/Gsnhyugsi8hHGKFxWkmhz73z9Xu+008OJ6tMAofBawcLPvD6T/FZzgqfc0JTzLs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549476; h=Content-Type: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=aC7Cd6TYlILALJJv5OMkXJYmgQWD2IPIt7fFj22zuwI=; b=XofHGytOpaWZkas2nQbqCuFJ0qROKoWJj02qEXXCEUsxw/MvuzmYE2Irs5gNkPObEollp/6YQB5b3VqOb7mzMhQdVveijfErgUJyuJRJjBjZ/knZZ/qT6BPEFV/Yh6teiYOyazWcTHc3fDOEaMkQlgjUAYJUdC8EMxOQryYU74E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549476035582.2956190807164; Wed, 9 Dec 2020 13:31:16 -0800 (PST) Received: from localhost ([::1]:48326 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4J6-0001CO-5W for importer@patchew.org; Wed, 09 Dec 2020 13:35:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51652) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sI-0001sr-8E for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:39 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:56773) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sF-0007rD-RF for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:38 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-384-BndqvIoMM72A4goj1UPcMQ-1; Wed, 09 Dec 2020 13:07:32 -0500 Received: by mail-wm1-f72.google.com with SMTP id b4so818092wmj.4 for ; Wed, 09 Dec 2020 10:07:32 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id s13sm4490435wmj.28.2020.12.09.10.07.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537254; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=aC7Cd6TYlILALJJv5OMkXJYmgQWD2IPIt7fFj22zuwI=; b=jTDP7SJW2hlDMu8XSHDZ1JpLwekWrQ5g0KZz4YOIhQUfazYOSu9piGfRbcLG8lqSkmztR7 9EEZC7sWLG3vNWdQ8VQlubfSCOojFt82PJbTa/+0vWVbNKU+DaFb2JP62I5FEpd18x3823 D+FWvmQYEbwnELAogSduYFGzsNgilk0= X-MC-Unique: BndqvIoMM72A4goj1UPcMQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=aC7Cd6TYlILALJJv5OMkXJYmgQWD2IPIt7fFj22zuwI=; b=tnhFJOT7tu34LBKuLYFaEOVCrqAjsYlol2mV69TFkGHZdDker4yckftA3XrnqB07Ru 2YvKIlWNEY0FnglE5mqVpUvHgIac+dhGOrcgXjS5kVUTJI/UohAOO0lXsmvcGVs7s30P K90OEYm9fFUdp6MTIw3UnfMvgxwiuJKJSuFilYzosQGkfqq13RD+mYMh+/BPZ01iLsoV oqgVEOtxHEoSBYPCiy7wUhrxXftxMHBynREojnuCF0Je6tVTohHAF2lBMOmmopqBmLuu Xpg2Mr+E2VqOmch6zlqMcoWwYrpkS5+u5zo+b59cjj2a8G9HIQ5U4+RpP2la/4BzlxHd m4FQ== X-Gm-Message-State: AOAM5309mgbmE7vAnddxXKjwfEd+xF4rUqH0nulO+u0Vddu+0N6UK0KE hLtWHECMVnd9iaUJYMCt8p+fU3FG3uMELVgl297W5T+YKR2RcYE838FfjRRvdQv48EW0qeDwq3r Ya3jj8/2PAwh37tkXQm9Rl7UN2Wnu8wwTeHUbldJNXUPbHvz7Hl4TM+HXOgIQ X-Received: by 2002:a5d:464b:: with SMTP id j11mr4031579wrs.227.1607537251054; Wed, 09 Dec 2020 10:07:31 -0800 (PST) X-Google-Smtp-Source: ABdhPJwrpaR+96Fm3Qx/dQWw6n8bWAkplFKCscSQm7Uy4zB0zIS8i86a5OeQVmT7M9eJa0Ofc1viKw== X-Received: by 2002:a5d:464b:: with SMTP id j11mr4031547wrs.227.1607537250816; Wed, 09 Dec 2020 10:07:30 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:14 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 09/65] fw_cfg: Refactor extra pci roots addition Message-ID: <20201209180546.721296-10-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jiahui Cen , Eduardo Habkost , Laszlo Ersek , Richard Henderson , Yubo Miao , Gerd Hoffmann , Paolo Bonzini , Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jiahui Cen Extract extra pci roots addition from pc machine, which could be used by other machines. In order to make uefi get the extra roots, it is necessary to write extra roots into fw_cfg. And only if the uefi knows there are extra roots, the config spaces of devices behind the root could be obtained. Signed-off-by: Jiahui Cen Signed-off-by: Yubo Miao Message-Id: <20201119014841.7298-3-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/nvram/fw_cfg.h | 9 +++++++++ hw/i386/pc.c | 18 +----------------- hw/nvram/fw_cfg.c | 23 +++++++++++++++++++++++ 3 files changed, 33 insertions(+), 17 deletions(-) diff --git a/include/hw/nvram/fw_cfg.h b/include/hw/nvram/fw_cfg.h index 8a9f5738bf..0e7a8bc7af 100644 --- a/include/hw/nvram/fw_cfg.h +++ b/include/hw/nvram/fw_cfg.h @@ -308,6 +308,15 @@ void *fw_cfg_modify_file(FWCfgState *s, const char *fi= lename, void *data, bool fw_cfg_add_from_generator(FWCfgState *s, const char *filename, const char *gen_id, Error **errp); =20 +/** + * fw_cfg_add_extra_pci_roots: + * @bus: main pci root bus to be scanned from + * @s: fw_cfg device being modified + * + * Add a new fw_cfg item... + */ +void fw_cfg_add_extra_pci_roots(PCIBus *bus, FWCfgState *s); + FWCfgState *fw_cfg_init_io_dma(uint32_t iobase, uint32_t dma_iobase, AddressSpace *dma_as); FWCfgState *fw_cfg_init_io(uint32_t iobase); diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 17b514d1da..76a846ff9a 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -777,27 +777,11 @@ void pc_machine_done(Notifier *notifier, void *data) PCMachineState *pcms =3D container_of(notifier, PCMachineState, machine_done); X86MachineState *x86ms =3D X86_MACHINE(pcms); - PCIBus *bus =3D pcms->bus; =20 /* set the number of CPUs */ x86_rtc_set_cpus_count(x86ms->rtc, x86ms->boot_cpus); =20 - if (bus) { - int extra_hosts =3D 0; - - QLIST_FOREACH(bus, &bus->child, sibling) { - /* look for expander root buses */ - if (pci_bus_is_root(bus)) { - extra_hosts++; - } - } - if (extra_hosts && x86ms->fw_cfg) { - uint64_t *val =3D g_malloc(sizeof(*val)); - *val =3D cpu_to_le64(extra_hosts); - fw_cfg_add_file(x86ms->fw_cfg, - "etc/extra-pci-roots", val, sizeof(*val)); - } - } + fw_cfg_add_extra_pci_roots(pcms->bus, x86ms->fw_cfg); =20 acpi_setup(); if (x86ms->fw_cfg) { diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index 08539a1aab..282ba93e2e 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -40,6 +40,7 @@ #include "qemu/cutils.h" #include "qapi/error.h" #include "hw/acpi/aml-build.h" +#include "hw/pci/pci_bus.h" =20 #define FW_CFG_FILE_SLOTS_DFLT 0x20 =20 @@ -1061,6 +1062,28 @@ bool fw_cfg_add_from_generator(FWCfgState *s, const = char *filename, return true; } =20 +void fw_cfg_add_extra_pci_roots(PCIBus *bus, FWCfgState *s) +{ + int extra_hosts =3D 0; + + if (!bus) { + return; + } + + QLIST_FOREACH(bus, &bus->child, sibling) { + /* look for expander root buses */ + if (pci_bus_is_root(bus)) { + extra_hosts++; + } + } + + if (extra_hosts && s) { + uint64_t *val =3D g_malloc(sizeof(*val)); + *val =3D cpu_to_le64(extra_hosts); + fw_cfg_add_file(s, "etc/extra-pci-roots", val, sizeof(*val)); + } +} + static void fw_cfg_machine_reset(void *opaque) { MachineClass *mc =3D MACHINE_GET_CLASS(qdev_get_machine()); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549074; cv=none; d=zohomail.com; s=zohoarc; b=HiF3YyZleqrOoFfMOQHrWOp1axvVoxOHZhQku6HdL7uk5ENeJxb81IdYL7B2VYDOSeERkalzdR+bpA4IjemKwo6P6DezAMBo8FoMUjqK5sTI7cK5OzZnTv3Hn9FewTjoTk2aJXNu7Ot9iMo5zvJQo4lQKwj82tQtOo3oNa6wI1c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549074; h=Content-Type: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=eNcV8yenr5e4/gQuOd0WGDeItExL2HtrnjnsPaPv3a0=; b=V+pjiyMBmKd0MXo+GP/Jbdw49vuYeo4PCGU0GuS0wbywhYHXPMvFH8nmq43coOX6QAO5cU5Ytu5SHkI8jQbypacuDT4fFqtEzJCRa9vyksB8XCq9CQuDJ43LwXsQHYkbNJD+zoJ5ykP9O3fBt1A6qk+WFA1YBtX7xvpJu7f83os= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549074647750.4667419520298; Wed, 9 Dec 2020 13:24:34 -0800 (PST) Received: from localhost ([::1]:58460 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4BI-0001uW-Sl for importer@patchew.org; Wed, 09 Dec 2020 13:27:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51686) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sL-0001tK-N5 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:41 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:49766) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sI-0007sC-9x for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:41 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-180-R68z7d5nP9eHlY4dKAFxIA-1; Wed, 09 Dec 2020 13:07:35 -0500 Received: by mail-wm1-f72.google.com with SMTP id a134so638450wmd.8 for ; Wed, 09 Dec 2020 10:07:34 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id z17sm4488154wrh.88.2020.12.09.10.07.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=eNcV8yenr5e4/gQuOd0WGDeItExL2HtrnjnsPaPv3a0=; b=CKedmBXugKdjUAcOGwpg8pW5qEAFOTL7s9vRvif/TqTQH+9UUHlmz1EgNNGxzTksFKbz5N feHkm5I0crIytm5EGE2Dr1dq0XS0Q7iQtoyXMC9IZsc9VHxEgOdyTbwhC+9MU2DtyLsGgE a+lAEkxWgReY6Bj9iBb4x6Bq07rv9FA= X-MC-Unique: R68z7d5nP9eHlY4dKAFxIA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=eNcV8yenr5e4/gQuOd0WGDeItExL2HtrnjnsPaPv3a0=; b=l8zpDSTlSXFGsEP35YdVOoFtCdM4Grx6rzbK5SBVW0GDzJelPo98x9TS991klltqNF +ua5VBwiO77XgOMUL0mOYlXhQq1+oHBHgmDEXtRd15k8fFj1kDc+foBMb0eJrBQZ7Y4g prkr3Al1ARBNi6VEEpYncns02zg/cfOPPrTa1v2GuAwQiWlEaso0dyAQXltNdQjbyy8H EaE6YHRuGnXsw9Xov4fxnAnxfbAnPk4Wz+9u1rAEHfrI4ZMTIlijZrp5vKcYJSo5Y8M3 fpFiqVLY5l70GfiAWTKPeNH/dpEKTWe5D9GM6vTskm6Dhob/XTCaAD8dEdjpA58/QWcs YTTQ== X-Gm-Message-State: AOAM532Sm0Bf99XWfvujRb8x/gqYLCRm89leMd+OJzzvh/YgxBvbuStG OfMBQSSLiF7elTWwRoTuAT8dbDl5tmkrXxIIUpdH0HtrkhRQJDL+Spl8dvRKAQc84FNt325DMvb ARXZuMyQRRXyZKgglvjgl+CwsPhSc+25qdhFc0Rb47t00hPpBVwEmRpKRlw1O X-Received: by 2002:a7b:c182:: with SMTP id y2mr4041427wmi.57.1607537253550; Wed, 09 Dec 2020 10:07:33 -0800 (PST) X-Google-Smtp-Source: ABdhPJwBlOjzcVqu/OJDiGqmE0d3OdChXQINZdHe2dPqxbDChR+TbY5Cdtw47IM96VBQNblEx+cnbQ== X-Received: by 2002:a7b:c182:: with SMTP id y2mr4041407wmi.57.1607537253397; Wed, 09 Dec 2020 10:07:33 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:31 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 10/65] hw/arm/virt: Write extra pci roots into fw_cfg Message-ID: <20201209180546.721296-11-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jiahui Cen , qemu-arm@nongnu.org, Yubo Miao Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jiahui Cen Add bus property to virt machine for primary PCI root bus and use it to add extra pci roots behind it. Signed-off-by: Jiahui Cen Signed-off-by: Yubo Miao Message-Id: <20201119014841.7298-4-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/arm/virt.h | 1 + hw/arm/virt.c | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h index aad6d69841..abf54fab49 100644 --- a/include/hw/arm/virt.h +++ b/include/hw/arm/virt.h @@ -163,6 +163,7 @@ struct VirtMachineState { DeviceState *gic; DeviceState *acpi_dev; Notifier powerdown_notifier; + PCIBus *bus; }; =20 #define VIRT_ECAM_ID(high) (high ? VIRT_HIGH_PCIE_ECAM : VIRT_PCIE_ECAM) diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 27dbeb549e..847257aa5c 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -1289,7 +1289,8 @@ static void create_pcie(VirtMachineState *vms) } =20 pci =3D PCI_HOST_BRIDGE(dev); - if (pci->bus) { + vms->bus =3D pci->bus; + if (vms->bus) { for (i =3D 0; i < nb_nics; i++) { NICInfo *nd =3D &nd_table[i]; =20 @@ -1346,7 +1347,7 @@ static void create_pcie(VirtMachineState *vms) =20 switch (vms->iommu) { case VIRT_IOMMU_SMMUV3: - create_smmu(vms, pci->bus); + create_smmu(vms, vms->bus); qemu_fdt_setprop_cells(vms->fdt, nodename, "iommu-map", 0x0, vms->iommu_phandle, 0x0, 0x10000); break; @@ -1481,6 +1482,8 @@ void virt_machine_done(Notifier *notifier, void *data) exit(1); } =20 + fw_cfg_add_extra_pci_roots(vms->bus, vms->fw_cfg); + virt_acpi_setup(vms); virt_build_smbios(vms); } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607538488; cv=none; d=zohomail.com; s=zohoarc; b=TRRedJd7lxWfLh6ZZpZqe7WOFc5AGQG6yw0kUMxhNx4z/CeC52gLpmHxKG8eDv2mJWYYkWCSO9VfnndMPCYxT7vIb0Z5u8kz9z8QMvrOoVaJfaxX2dRYuHI+9tcEuhXIBhn/jgNMlEcrr1J4nlTXicaM6E31pHcPcUa9/O302vE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607538488; h=Content-Type: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=TVR/3R4ZqClFMyO1Kzexn8XC/0JTzZKpKAnPNCHy7i0=; b=Kzgpp2I0DOc298nili7rx0hMdXiNfY+P56O3ei25LoV+AKfYmUlwI6uzxsWMjqkDrJByIA3iTgWICSm7fWCbT9xBAZxuu5xvehDtmStZ2z9d1YgD0smwYjMObZw0a3tMDwTGeSF0cbFL1EVKYZZBZfXzWJkE8x35p3sWmG93o0M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607538488576523.7048524861173; Wed, 9 Dec 2020 10:28:08 -0800 (PST) Received: from localhost ([::1]:53208 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn49G-00084p-52 for importer@patchew.org; Wed, 09 Dec 2020 13:25:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51782) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sV-0001y0-PC for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:55 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:21638) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sR-0007uq-2l for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:49 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-151-vI1QM4RLNq6E2GZgrilBMQ-1; Wed, 09 Dec 2020 13:07:44 -0500 Received: by mail-wr1-f69.google.com with SMTP id v5so962152wrr.0 for ; Wed, 09 Dec 2020 10:07:43 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id o203sm5387780wmb.0.2020.12.09.10.07.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537266; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=TVR/3R4ZqClFMyO1Kzexn8XC/0JTzZKpKAnPNCHy7i0=; b=YATGFsk2GzkI39weREo9EbMj7rRdvjNo2ChoYaDlGv5Z7lBqbApMlFFwHDCKUzrZYWIh28 0r18tznTyodtIon++egPPm49ZvQN8BCjm1KJO6SQR0A60zXfvl0J0JYcHgL0sCY4IQdpqB ReyU+tT3QamOdozrFIE3e7PALc/Gdj8= X-MC-Unique: vI1QM4RLNq6E2GZgrilBMQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=TVR/3R4ZqClFMyO1Kzexn8XC/0JTzZKpKAnPNCHy7i0=; b=rMQSVP8ItocOqxxJrjXpEHJxXhA6fuIaR7Xan4dNzElr1KLGJSzOk9arZk8kVCxOLG 9UHdnPMSFh8k3CgKw/rOXqevxjflJZh8QxqvupbkCx0Z1sqLPlWvh7BW6ONvcweOeE4O yhh7uLSOH4CiOfyZL+MAw7oKX15CTweSilvy5fmXIGJLWKsakD/oINGda7dVZr/9zYyk QlHBvr79STiV5xEsrbT4Vr3hBIeQ2xBs2vgsmZtwnD3XTPaIZGOwAxbL+6lekLmwVIrI uKyZktPWg7wJ5/pTWKKpegtaYpD0b13E74VP79BSEav1wZfG2yW0KUvIWbLEKNjy+Ake RrrA== X-Gm-Message-State: AOAM532dcHR/e9iyQvGope91GkodBC2/hnY4W0mhzc1UAdnKBe5Z86ds fhsxByeGc9lUiWEv4C4HuA8DkAApeD4205eraBArLyBCK+7ZNuUOi/MxshikXfAoZrD1XeGjfA4 YG9r59O27E909c9ytzx5Nn/75WMTUcd4LmmD1914E/cZZU6Qqy1H7QeKUWqk/ X-Received: by 2002:adf:e54a:: with SMTP id z10mr4084476wrm.1.1607537262251; Wed, 09 Dec 2020 10:07:42 -0800 (PST) X-Google-Smtp-Source: ABdhPJzTiop2hB1/edpyNL+dxqFegdtGOuqWsy52lJQWmdYuYnCzCA3PYQefIRZ5l960heLD0ApgOQ== X-Received: by 2002:adf:e54a:: with SMTP id z10mr4084449wrm.1.1607537261984; Wed, 09 Dec 2020 10:07:41 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:33 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 11/65] acpi: Extract crs build form acpi_build.c Message-ID: <20201209180546.721296-12-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jiahui Cen , Eduardo Habkost , Richard Henderson , Yubo Miao , Igor Mammedov , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao Extract crs build form acpi_build.c, the function could also be used to build the crs for pxbs for arm. The resources are composed by two parts: 1. The bar space of pci-bridge/pcie-root-ports 2. The resources needed by devices behind PXBs. The base and limit of memory/io are obtained from the config via two APIs: pci_bridge_get_base and pci_bridge_get_limit Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-5-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/acpi/aml-build.h | 22 +++ hw/acpi/aml-build.c | 285 +++++++++++++++++++++++++++++++++++ hw/i386/acpi-build.c | 293 ------------------------------------ 3 files changed, 307 insertions(+), 293 deletions(-) diff --git a/include/hw/acpi/aml-build.h b/include/hw/acpi/aml-build.h index fe0055fffb..e727bea1bc 100644 --- a/include/hw/acpi/aml-build.h +++ b/include/hw/acpi/aml-build.h @@ -224,6 +224,20 @@ struct AcpiBuildTables { BIOSLinker *linker; } AcpiBuildTables; =20 +typedef +struct CrsRangeEntry { + uint64_t base; + uint64_t limit; +} CrsRangeEntry; + +typedef +struct CrsRangeSet { + GPtrArray *io_ranges; + GPtrArray *mem_ranges; + GPtrArray *mem_64bit_ranges; +} CrsRangeSet; + + /* * ACPI 5.0: 6.4.3.8.2 Serial Bus Connection Descriptors * Serial Bus Type @@ -432,6 +446,14 @@ build_append_gas_from_struct(GArray *table, const stru= ct AcpiGenericAddress *s) s->access_width, s->address); } =20 +void crs_range_insert(GPtrArray *ranges, uint64_t base, uint64_t limit); +void crs_replace_with_free_ranges(GPtrArray *ranges, + uint64_t start, uint64_t end); +void crs_range_set_init(CrsRangeSet *range_set); +void crs_range_set_free(CrsRangeSet *range_set); + +Aml *build_crs(PCIHostState *host, CrsRangeSet *range_set); + void build_srat_memory(AcpiSratMemoryAffinity *numamem, uint64_t base, uint64_t len, int node, MemoryAffinityFlags flags); =20 diff --git a/hw/acpi/aml-build.c b/hw/acpi/aml-build.c index 3792ba96ce..f976aa667b 100644 --- a/hw/acpi/aml-build.c +++ b/hw/acpi/aml-build.c @@ -27,6 +27,9 @@ #include "sysemu/numa.h" #include "hw/boards.h" #include "hw/acpi/tpm.h" +#include "hw/pci/pci_host.h" +#include "hw/pci/pci_bus.h" +#include "hw/pci/pci_bridge.h" =20 static GArray *build_alloc_array(void) { @@ -55,6 +58,128 @@ static void build_append_array(GArray *array, GArray *v= al) =20 #define ACPI_NAMESEG_LEN 4 =20 +void crs_range_insert(GPtrArray *ranges, uint64_t base, uint64_t limit) +{ + CrsRangeEntry *entry; + + entry =3D g_malloc(sizeof(*entry)); + entry->base =3D base; + entry->limit =3D limit; + + g_ptr_array_add(ranges, entry); +} + +static void crs_range_free(gpointer data) +{ + CrsRangeEntry *entry =3D (CrsRangeEntry *)data; + g_free(entry); +} + +void crs_range_set_init(CrsRangeSet *range_set) +{ + range_set->io_ranges =3D g_ptr_array_new_with_free_func(crs_range_free= ); + range_set->mem_ranges =3D g_ptr_array_new_with_free_func(crs_range_fre= e); + range_set->mem_64bit_ranges =3D + g_ptr_array_new_with_free_func(crs_range_free); +} + +void crs_range_set_free(CrsRangeSet *range_set) +{ + g_ptr_array_free(range_set->io_ranges, true); + g_ptr_array_free(range_set->mem_ranges, true); + g_ptr_array_free(range_set->mem_64bit_ranges, true); +} + +static gint crs_range_compare(gconstpointer a, gconstpointer b) +{ + CrsRangeEntry *entry_a =3D *(CrsRangeEntry **)a; + CrsRangeEntry *entry_b =3D *(CrsRangeEntry **)b; + + if (entry_a->base < entry_b->base) { + return -1; + } else if (entry_a->base > entry_b->base) { + return 1; + } else { + return 0; + } +} + +/* + * crs_replace_with_free_ranges - given the 'used' ranges within [start - = end] + * interval, computes the 'free' ranges from the same interval. + * Example: If the input array is { [a1 - a2],[b1 - b2] }, the function + * will return { [base - a1], [a2 - b1], [b2 - limit] }. + */ +void crs_replace_with_free_ranges(GPtrArray *ranges, + uint64_t start, uint64_t end) +{ + GPtrArray *free_ranges =3D g_ptr_array_new(); + uint64_t free_base =3D start; + int i; + + g_ptr_array_sort(ranges, crs_range_compare); + for (i =3D 0; i < ranges->len; i++) { + CrsRangeEntry *used =3D g_ptr_array_index(ranges, i); + + if (free_base < used->base) { + crs_range_insert(free_ranges, free_base, used->base - 1); + } + + free_base =3D used->limit + 1; + } + + if (free_base < end) { + crs_range_insert(free_ranges, free_base, end); + } + + g_ptr_array_set_size(ranges, 0); + for (i =3D 0; i < free_ranges->len; i++) { + g_ptr_array_add(ranges, g_ptr_array_index(free_ranges, i)); + } + + g_ptr_array_free(free_ranges, true); +} + +/* + * crs_range_merge - merges adjacent ranges in the given array. + * Array elements are deleted and replaced with the merged ranges. + */ +static void crs_range_merge(GPtrArray *range) +{ + GPtrArray *tmp =3D g_ptr_array_new_with_free_func(crs_range_free); + CrsRangeEntry *entry; + uint64_t range_base, range_limit; + int i; + + if (!range->len) { + return; + } + + g_ptr_array_sort(range, crs_range_compare); + + entry =3D g_ptr_array_index(range, 0); + range_base =3D entry->base; + range_limit =3D entry->limit; + for (i =3D 1; i < range->len; i++) { + entry =3D g_ptr_array_index(range, i); + if (entry->base - 1 =3D=3D range_limit) { + range_limit =3D entry->limit; + } else { + crs_range_insert(tmp, range_base, range_limit); + range_base =3D entry->base; + range_limit =3D entry->limit; + } + } + crs_range_insert(tmp, range_base, range_limit); + + g_ptr_array_set_size(range, 0); + for (i =3D 0; i < tmp->len; i++) { + entry =3D g_ptr_array_index(tmp, i); + crs_range_insert(range, entry->base, entry->limit); + } + g_ptr_array_free(tmp, true); +} + static void build_append_nameseg(GArray *array, const char *seg) { @@ -1951,6 +2076,166 @@ void build_tpm2(GArray *table_data, BIOSLinker *lin= ker, GArray *tcpalog) tpm2_ptr, "TPM2", table_data->len - tpm2_start, 4, NULL, = NULL); } =20 +Aml *build_crs(PCIHostState *host, CrsRangeSet *range_set) +{ + Aml *crs =3D aml_resource_template(); + CrsRangeSet temp_range_set; + CrsRangeEntry *entry; + uint8_t max_bus =3D pci_bus_num(host->bus); + uint8_t type; + int devfn; + int i; + + crs_range_set_init(&temp_range_set); + for (devfn =3D 0; devfn < ARRAY_SIZE(host->bus->devices); devfn++) { + uint64_t range_base, range_limit; + PCIDevice *dev =3D host->bus->devices[devfn]; + + if (!dev) { + continue; + } + + for (i =3D 0; i < PCI_NUM_REGIONS; i++) { + PCIIORegion *r =3D &dev->io_regions[i]; + + range_base =3D r->addr; + range_limit =3D r->addr + r->size - 1; + + /* + * Work-around for old bioses + * that do not support multiple root buses + */ + if (!range_base || range_base > range_limit) { + continue; + } + + if (r->type & PCI_BASE_ADDRESS_SPACE_IO) { + crs_range_insert(temp_range_set.io_ranges, + range_base, range_limit); + } else { /* "memory" */ + uint64_t length =3D range_limit - range_base + 1; + if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { + crs_range_insert(temp_range_set.mem_ranges, range_base, + range_limit); + } else { + crs_range_insert(temp_range_set.mem_64bit_ranges, + range_base, range_limit); + } + } + } + + type =3D dev->config[PCI_HEADER_TYPE] & ~PCI_HEADER_TYPE_MULTI_FUN= CTION; + if (type =3D=3D PCI_HEADER_TYPE_BRIDGE) { + uint8_t subordinate =3D dev->config[PCI_SUBORDINATE_BUS]; + if (subordinate > max_bus) { + max_bus =3D subordinate; + } + + range_base =3D pci_bridge_get_base(dev, PCI_BASE_ADDRESS_SPACE= _IO); + range_limit =3D pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_SPA= CE_IO); + + /* + * Work-around for old bioses + * that do not support multiple root buses + */ + if (range_base && range_base <=3D range_limit) { + crs_range_insert(temp_range_set.io_ranges, + range_base, range_limit); + } + + range_base =3D + pci_bridge_get_base(dev, PCI_BASE_ADDRESS_SPACE_MEMORY); + range_limit =3D + pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_SPACE_MEMORY); + + /* + * Work-around for old bioses + * that do not support multiple root buses + */ + if (range_base && range_base <=3D range_limit) { + uint64_t length =3D range_limit - range_base + 1; + if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { + crs_range_insert(temp_range_set.mem_ranges, + range_base, range_limit); + } else { + crs_range_insert(temp_range_set.mem_64bit_ranges, + range_base, range_limit); + } + } + + range_base =3D + pci_bridge_get_base(dev, PCI_BASE_ADDRESS_MEM_PREFETCH); + range_limit =3D + pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_MEM_PREFETCH); + + /* + * Work-around for old bioses + * that do not support multiple root buses + */ + if (range_base && range_base <=3D range_limit) { + uint64_t length =3D range_limit - range_base + 1; + if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { + crs_range_insert(temp_range_set.mem_ranges, + range_base, range_limit); + } else { + crs_range_insert(temp_range_set.mem_64bit_ranges, + range_base, range_limit); + } + } + } + } + + crs_range_merge(temp_range_set.io_ranges); + for (i =3D 0; i < temp_range_set.io_ranges->len; i++) { + entry =3D g_ptr_array_index(temp_range_set.io_ranges, i); + aml_append(crs, + aml_word_io(AML_MIN_FIXED, AML_MAX_FIXED, + AML_POS_DECODE, AML_ENTIRE_RANGE, + 0, entry->base, entry->limit, 0, + entry->limit - entry->base + 1)); + crs_range_insert(range_set->io_ranges, entry->base, entry->limit); + } + + crs_range_merge(temp_range_set.mem_ranges); + for (i =3D 0; i < temp_range_set.mem_ranges->len; i++) { + entry =3D g_ptr_array_index(temp_range_set.mem_ranges, i); + assert(entry->limit <=3D UINT32_MAX && + (entry->limit - entry->base + 1) <=3D UINT32_MAX); + aml_append(crs, + aml_dword_memory(AML_POS_DECODE, AML_MIN_FIXED, + AML_MAX_FIXED, AML_NON_CACHEABLE, + AML_READ_WRITE, + 0, entry->base, entry->limit, 0, + entry->limit - entry->base + 1)); + crs_range_insert(range_set->mem_ranges, entry->base, entry->limit); + } + + crs_range_merge(temp_range_set.mem_64bit_ranges); + for (i =3D 0; i < temp_range_set.mem_64bit_ranges->len; i++) { + entry =3D g_ptr_array_index(temp_range_set.mem_64bit_ranges, i); + aml_append(crs, + aml_qword_memory(AML_POS_DECODE, AML_MIN_FIXED, + AML_MAX_FIXED, AML_NON_CACHEABLE, + AML_READ_WRITE, + 0, entry->base, entry->limit, 0, + entry->limit - entry->base + 1)); + crs_range_insert(range_set->mem_64bit_ranges, + entry->base, entry->limit); + } + + crs_range_set_free(&temp_range_set); + + aml_append(crs, + aml_word_bus_number(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECODE, + 0, + pci_bus_num(host->bus), + max_bus, + 0, + max_bus - pci_bus_num(host->bus) + 1)); + + return crs; +} + /* ACPI 5.0: 6.4.3.8.2 Serial Bus Connection Descriptors */ static Aml *aml_serial_bus_device(uint8_t serial_bus_type, uint8_t flags, uint16_t type_flags, diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 1f5c211245..76e27f8fad 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -613,299 +613,6 @@ static Aml *build_prt(bool is_pci0_prt) return method; } =20 -typedef struct CrsRangeEntry { - uint64_t base; - uint64_t limit; -} CrsRangeEntry; - -static void crs_range_insert(GPtrArray *ranges, uint64_t base, uint64_t li= mit) -{ - CrsRangeEntry *entry; - - entry =3D g_malloc(sizeof(*entry)); - entry->base =3D base; - entry->limit =3D limit; - - g_ptr_array_add(ranges, entry); -} - -static void crs_range_free(gpointer data) -{ - CrsRangeEntry *entry =3D (CrsRangeEntry *)data; - g_free(entry); -} - -typedef struct CrsRangeSet { - GPtrArray *io_ranges; - GPtrArray *mem_ranges; - GPtrArray *mem_64bit_ranges; - } CrsRangeSet; - -static void crs_range_set_init(CrsRangeSet *range_set) -{ - range_set->io_ranges =3D g_ptr_array_new_with_free_func(crs_range_free= ); - range_set->mem_ranges =3D g_ptr_array_new_with_free_func(crs_range_fre= e); - range_set->mem_64bit_ranges =3D - g_ptr_array_new_with_free_func(crs_range_free); -} - -static void crs_range_set_free(CrsRangeSet *range_set) -{ - g_ptr_array_free(range_set->io_ranges, true); - g_ptr_array_free(range_set->mem_ranges, true); - g_ptr_array_free(range_set->mem_64bit_ranges, true); -} - -static gint crs_range_compare(gconstpointer a, gconstpointer b) -{ - CrsRangeEntry *entry_a =3D *(CrsRangeEntry **)a; - CrsRangeEntry *entry_b =3D *(CrsRangeEntry **)b; - - if (entry_a->base < entry_b->base) { - return -1; - } else if (entry_a->base > entry_b->base) { - return 1; - } else { - return 0; - } -} - -/* - * crs_replace_with_free_ranges - given the 'used' ranges within [start - = end] - * interval, computes the 'free' ranges from the same interval. - * Example: If the input array is { [a1 - a2],[b1 - b2] }, the function - * will return { [base - a1], [a2 - b1], [b2 - limit] }. - */ -static void crs_replace_with_free_ranges(GPtrArray *ranges, - uint64_t start, uint64_t end) -{ - GPtrArray *free_ranges =3D g_ptr_array_new(); - uint64_t free_base =3D start; - int i; - - g_ptr_array_sort(ranges, crs_range_compare); - for (i =3D 0; i < ranges->len; i++) { - CrsRangeEntry *used =3D g_ptr_array_index(ranges, i); - - if (free_base < used->base) { - crs_range_insert(free_ranges, free_base, used->base - 1); - } - - free_base =3D used->limit + 1; - } - - if (free_base < end) { - crs_range_insert(free_ranges, free_base, end); - } - - g_ptr_array_set_size(ranges, 0); - for (i =3D 0; i < free_ranges->len; i++) { - g_ptr_array_add(ranges, g_ptr_array_index(free_ranges, i)); - } - - g_ptr_array_free(free_ranges, true); -} - -/* - * crs_range_merge - merges adjacent ranges in the given array. - * Array elements are deleted and replaced with the merged ranges. - */ -static void crs_range_merge(GPtrArray *range) -{ - GPtrArray *tmp =3D g_ptr_array_new_with_free_func(crs_range_free); - CrsRangeEntry *entry; - uint64_t range_base, range_limit; - int i; - - if (!range->len) { - return; - } - - g_ptr_array_sort(range, crs_range_compare); - - entry =3D g_ptr_array_index(range, 0); - range_base =3D entry->base; - range_limit =3D entry->limit; - for (i =3D 1; i < range->len; i++) { - entry =3D g_ptr_array_index(range, i); - if (entry->base - 1 =3D=3D range_limit) { - range_limit =3D entry->limit; - } else { - crs_range_insert(tmp, range_base, range_limit); - range_base =3D entry->base; - range_limit =3D entry->limit; - } - } - crs_range_insert(tmp, range_base, range_limit); - - g_ptr_array_set_size(range, 0); - for (i =3D 0; i < tmp->len; i++) { - entry =3D g_ptr_array_index(tmp, i); - crs_range_insert(range, entry->base, entry->limit); - } - g_ptr_array_free(tmp, true); -} - -static Aml *build_crs(PCIHostState *host, CrsRangeSet *range_set) -{ - Aml *crs =3D aml_resource_template(); - CrsRangeSet temp_range_set; - CrsRangeEntry *entry; - uint8_t max_bus =3D pci_bus_num(host->bus); - uint8_t type; - int devfn; - int i; - - crs_range_set_init(&temp_range_set); - for (devfn =3D 0; devfn < ARRAY_SIZE(host->bus->devices); devfn++) { - uint64_t range_base, range_limit; - PCIDevice *dev =3D host->bus->devices[devfn]; - - if (!dev) { - continue; - } - - for (i =3D 0; i < PCI_NUM_REGIONS; i++) { - PCIIORegion *r =3D &dev->io_regions[i]; - - range_base =3D r->addr; - range_limit =3D r->addr + r->size - 1; - - /* - * Work-around for old bioses - * that do not support multiple root buses - */ - if (!range_base || range_base > range_limit) { - continue; - } - - if (r->type & PCI_BASE_ADDRESS_SPACE_IO) { - crs_range_insert(temp_range_set.io_ranges, - range_base, range_limit); - } else { /* "memory" */ - uint64_t length =3D range_limit - range_base + 1; - if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { - crs_range_insert(temp_range_set.mem_ranges, range_base, - range_limit); - } else { - crs_range_insert(temp_range_set.mem_64bit_ranges, - range_base, range_limit); - } - } - } - - type =3D dev->config[PCI_HEADER_TYPE] & ~PCI_HEADER_TYPE_MULTI_FUN= CTION; - if (type =3D=3D PCI_HEADER_TYPE_BRIDGE) { - uint8_t subordinate =3D dev->config[PCI_SUBORDINATE_BUS]; - if (subordinate > max_bus) { - max_bus =3D subordinate; - } - - range_base =3D pci_bridge_get_base(dev, PCI_BASE_ADDRESS_SPACE= _IO); - range_limit =3D pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_SPA= CE_IO); - - /* - * Work-around for old bioses - * that do not support multiple root buses - */ - if (range_base && range_base <=3D range_limit) { - crs_range_insert(temp_range_set.io_ranges, - range_base, range_limit); - } - - range_base =3D - pci_bridge_get_base(dev, PCI_BASE_ADDRESS_SPACE_MEMORY); - range_limit =3D - pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_SPACE_MEMORY); - - /* - * Work-around for old bioses - * that do not support multiple root buses - */ - if (range_base && range_base <=3D range_limit) { - uint64_t length =3D range_limit - range_base + 1; - if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { - crs_range_insert(temp_range_set.mem_ranges, - range_base, range_limit); - } else { - crs_range_insert(temp_range_set.mem_64bit_ranges, - range_base, range_limit); - } - } - - range_base =3D - pci_bridge_get_base(dev, PCI_BASE_ADDRESS_MEM_PREFETCH); - range_limit =3D - pci_bridge_get_limit(dev, PCI_BASE_ADDRESS_MEM_PREFETCH); - - /* - * Work-around for old bioses - * that do not support multiple root buses - */ - if (range_base && range_base <=3D range_limit) { - uint64_t length =3D range_limit - range_base + 1; - if (range_limit <=3D UINT32_MAX && length <=3D UINT32_MAX)= { - crs_range_insert(temp_range_set.mem_ranges, - range_base, range_limit); - } else { - crs_range_insert(temp_range_set.mem_64bit_ranges, - range_base, range_limit); - } - } - } - } - - crs_range_merge(temp_range_set.io_ranges); - for (i =3D 0; i < temp_range_set.io_ranges->len; i++) { - entry =3D g_ptr_array_index(temp_range_set.io_ranges, i); - aml_append(crs, - aml_word_io(AML_MIN_FIXED, AML_MAX_FIXED, - AML_POS_DECODE, AML_ENTIRE_RANGE, - 0, entry->base, entry->limit, 0, - entry->limit - entry->base + 1)); - crs_range_insert(range_set->io_ranges, entry->base, entry->limit); - } - - crs_range_merge(temp_range_set.mem_ranges); - for (i =3D 0; i < temp_range_set.mem_ranges->len; i++) { - entry =3D g_ptr_array_index(temp_range_set.mem_ranges, i); - assert(entry->limit <=3D UINT32_MAX && - (entry->limit - entry->base + 1) <=3D UINT32_MAX); - aml_append(crs, - aml_dword_memory(AML_POS_DECODE, AML_MIN_FIXED, - AML_MAX_FIXED, AML_NON_CACHEABLE, - AML_READ_WRITE, - 0, entry->base, entry->limit, 0, - entry->limit - entry->base + 1)); - crs_range_insert(range_set->mem_ranges, entry->base, entry->limit); - } - - crs_range_merge(temp_range_set.mem_64bit_ranges); - for (i =3D 0; i < temp_range_set.mem_64bit_ranges->len; i++) { - entry =3D g_ptr_array_index(temp_range_set.mem_64bit_ranges, i); - aml_append(crs, - aml_qword_memory(AML_POS_DECODE, AML_MIN_FIXED, - AML_MAX_FIXED, AML_NON_CACHEABLE, - AML_READ_WRITE, - 0, entry->base, entry->limit, 0, - entry->limit - entry->base + 1)); - crs_range_insert(range_set->mem_64bit_ranges, - entry->base, entry->limit); - } - - crs_range_set_free(&temp_range_set); - - aml_append(crs, - aml_word_bus_number(AML_MIN_FIXED, AML_MAX_FIXED, AML_POS_DECODE, - 0, - pci_bus_num(host->bus), - max_bus, - 0, - max_bus - pci_bus_num(host->bus) + 1)); - - return crs; -} - static void build_hpet_aml(Aml *table) { Aml *crs; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542017; cv=none; d=zohomail.com; s=zohoarc; b=Cm+qdqiYyn2cegR1DE0n9nK0aSZb4ZfOiSJEurmCsrxim6mvsXNTzEWTp9u5GU6/PRZ2oIfWc7iMswvpzrOzRof9G31mfRKK2YX4YltPx61ibHeMy4yyVkbKO/zQ/37Zr75VxIl+uQl8zyM36gleUhaFvzmeAxOWbBi2BpyOMmE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542017; h=Content-Type: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=mzQ1+jPNPrN4c5K1M4rWE8GS0J7EkEqlO41LOzITqvE=; b=Mt86I3mUZtuDfe8cPSro40KWLmpAJ2seBSP3DK88Qywck0KCB9hSyhzqtiXswvPF2gcobpT3mx/sdgkXoenfIgsF3wyNKlWdrGgxwmkLQ3MaxWM+8PSWE8p1WJQefft8sVtAol1g/CevcI6uXVPtYcFYf03n+IyYUeSEHC135iQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160754201776122.85729028017795; Wed, 9 Dec 2020 11:26:57 -0800 (PST) Received: from localhost ([::1]:56822 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4MC-0004lv-6p for importer@patchew.org; Wed, 09 Dec 2020 13:38:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51824) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sb-0001yD-C2 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:00 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:43704) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sV-0007w0-I7 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:07:54 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-392-GCz_hle0NW-XCmIae0YdFA-1; Wed, 09 Dec 2020 13:07:46 -0500 Received: by mail-wr1-f71.google.com with SMTP id b5so951019wrp.3 for ; Wed, 09 Dec 2020 10:07:46 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id a21sm4561894wmb.38.2020.12.09.10.07.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537269; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mzQ1+jPNPrN4c5K1M4rWE8GS0J7EkEqlO41LOzITqvE=; b=PCnoVVpUj8hrq6jrOqSTisY55Oj3bIUaGqW083rMCy41lFTOzwFXSJo1XZT4xTMlXILOXF uIniEO8rfBUa3+zQhwD5sADohgX9I0WmxRW+0Z3Nb7bNG9RIrLrV4vbbDw8EmBUQum4FOq eMBGq4CTSaJTZycpQ6FpfrfRxSNGZ34= X-MC-Unique: GCz_hle0NW-XCmIae0YdFA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=mzQ1+jPNPrN4c5K1M4rWE8GS0J7EkEqlO41LOzITqvE=; b=RXD8TjepowOCOZFNNpMwuR1DoyB8GE0atDpls2npymmUFKjcn+OYWpggQrlBbBucQi SaOn94yA6iw9Y4T9CSgARMrWOhhsUWU+28lS2EoTI4D6zYx6RKtvMZxAMtyZ42ploe89 3hHDOrJfuxVadQAX2if5uAq6s9p3bWLTsk5I+DCLTkBuvHs4LvecRHABSTIEHlIHBTHh LGUXJhsFU2l9ohsCby9WGP1s7ckYnnqOUG0CDjscBILmrE1o2ljHlI3lFEgqIoK80q+c MuoTSuSgE7BlFJkNJfE4HxD1rf6C1njsoUSn4SI2rOAq37j74eLDAJFD5xjY5B1LSUGr GS4A== X-Gm-Message-State: AOAM531TkL4+2TjeTPZbNT719anktHMNGCSV6xJhWqO+lRFCX4ORIqtS EwDMH0DCPUytGLQR+4wLm6Cl2l1QNNDpZzf2JXRjYmOu+7t0SwysVBaEaGzbIGrXA/GEOlmHm4h nA1s031OD/9ZpYNsMmCmb6LwgWlCVhlM8kT6luFhPAUfWbav9BbAC9N9r9dbn X-Received: by 2002:adf:e704:: with SMTP id c4mr4059599wrm.355.1607537265113; Wed, 09 Dec 2020 10:07:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJwbDB41aQvYtH7TuFbS+Mr9Gpd9x94WQqS5vrxZPBMS30J4UVQnHQES4YzsjoeVC57zFQbEJw== X-Received: by 2002:adf:e704:: with SMTP id c4mr4059563wrm.355.1607537264865; Wed, 09 Dec 2020 10:07:44 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:42 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 12/65] acpi/gpex: Build tables for pxb Message-ID: <20201209180546.721296-13-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jiahui Cen , Shannon Zhao , Yubo Miao , qemu-arm@nongnu.org, Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao The resources of pxbs are obtained by crs_build and the resources used by pxbs would be moved from the resources defined for host-bridge. The resources for pxb are composed of following two parts: 1. The bar space of the pci-bridge/pcie-root-port behined it 2. The config space of devices behind it. Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-6-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/pci-host/gpex.h | 1 + hw/arm/virt-acpi-build.c | 6 +++-- hw/pci-host/gpex-acpi.c | 54 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 2 deletions(-) diff --git a/include/hw/pci-host/gpex.h b/include/hw/pci-host/gpex.h index d52ea80d4e..d48a020a95 100644 --- a/include/hw/pci-host/gpex.h +++ b/include/hw/pci-host/gpex.h @@ -59,6 +59,7 @@ struct GPEXConfig { MemMapEntry mmio64; MemMapEntry pio; int irq; + PCIBus *bus; }; =20 int gpex_set_irq_num(GPEXHost *s, int index, int gsi); diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c index 9747a6458f..e0bed9037c 100644 --- a/hw/arm/virt-acpi-build.c +++ b/hw/arm/virt-acpi-build.c @@ -153,7 +153,8 @@ static void acpi_dsdt_add_virtio(Aml *scope, } =20 static void acpi_dsdt_add_pci(Aml *scope, const MemMapEntry *memmap, - uint32_t irq, bool use_highmem, bool highmem= _ecam) + uint32_t irq, bool use_highmem, bool highmem= _ecam, + VirtMachineState *vms) { int ecam_id =3D VIRT_ECAM_ID(highmem_ecam); struct GPEXConfig cfg =3D { @@ -161,6 +162,7 @@ static void acpi_dsdt_add_pci(Aml *scope, const MemMapE= ntry *memmap, .pio =3D memmap[VIRT_PCIE_PIO], .ecam =3D memmap[ecam_id], .irq =3D irq, + .bus =3D vms->bus, }; =20 if (use_highmem) { @@ -609,7 +611,7 @@ build_dsdt(GArray *table_data, BIOSLinker *linker, Virt= MachineState *vms) acpi_dsdt_add_virtio(scope, &memmap[VIRT_MMIO], (irqmap[VIRT_MMIO] + ARM_SPI_BASE), NUM_VIRTIO_TRANSPO= RTS); acpi_dsdt_add_pci(scope, memmap, (irqmap[VIRT_PCIE] + ARM_SPI_BASE), - vms->highmem, vms->highmem_ecam); + vms->highmem, vms->highmem_ecam, vms); if (vms->acpi_dev) { build_ged_aml(scope, "\\_SB."GED_DEVICE, HOTPLUG_HANDLER(vms->acpi_dev), diff --git a/hw/pci-host/gpex-acpi.c b/hw/pci-host/gpex-acpi.c index 32a9f2796d..7f20ee1c98 100644 --- a/hw/pci-host/gpex-acpi.c +++ b/hw/pci-host/gpex-acpi.c @@ -1,6 +1,10 @@ #include "qemu/osdep.h" #include "hw/acpi/aml-build.h" #include "hw/pci-host/gpex.h" +#include "hw/arm/virt.h" +#include "hw/pci/pci_bus.h" +#include "hw/pci/pci_bridge.h" +#include "hw/pci/pcie_host.h" =20 static void acpi_dsdt_add_pci_route_table(Aml *dev, uint32_t irq) { @@ -124,7 +128,57 @@ void acpi_dsdt_add_gpex(Aml *scope, struct GPEXConfig = *cfg) { int nr_pcie_buses =3D cfg->ecam.size / PCIE_MMCFG_SIZE_MIN; Aml *method, *crs, *dev, *rbuf; + PCIBus *bus =3D cfg->bus; + CrsRangeSet crs_range_set; =20 + /* start to construct the tables for pxb */ + crs_range_set_init(&crs_range_set); + if (bus) { + QLIST_FOREACH(bus, &bus->child, sibling) { + uint8_t bus_num =3D pci_bus_num(bus); + uint8_t numa_node =3D pci_bus_numa_node(bus); + + if (!pci_bus_is_root(bus)) { + continue; + } + + /* + * 0 - (nr_pcie_buses - 1) is the bus range for the main + * host-bridge and it equals the MIN of the + * busNr defined for pxb-pcie. + */ + if (bus_num < nr_pcie_buses) { + nr_pcie_buses =3D bus_num; + } + + dev =3D aml_device("PC%.02X", bus_num); + aml_append(dev, aml_name_decl("_HID", aml_string("PNP0A08"))); + aml_append(dev, aml_name_decl("_CID", aml_string("PNP0A03"))); + aml_append(dev, aml_name_decl("_BBN", aml_int(bus_num))); + aml_append(dev, aml_name_decl("_UID", aml_int(bus_num))); + aml_append(dev, aml_name_decl("_STR", aml_unicode("pxb Device"= ))); + if (numa_node !=3D NUMA_NODE_UNASSIGNED) { + aml_append(dev, aml_name_decl("_PXM", aml_int(numa_node))); + } + + acpi_dsdt_add_pci_route_table(dev, cfg->irq); + + /* + * Resources defined for PXBs are composed by the folling part= s: + * 1. The resources the pci-brige/pcie-root-port need. + * 2. The resources the devices behind pxb need. + */ + crs =3D build_crs(PCI_HOST_BRIDGE(BUS(bus)->parent), &crs_rang= e_set); + aml_append(dev, aml_name_decl("_CRS", crs)); + + acpi_dsdt_add_pci_osc(dev); + + aml_append(scope, dev); + } + } + crs_range_set_free(&crs_range_set); + + /* tables for the main */ dev =3D aml_device("%s", "PCI0"); aml_append(dev, aml_name_decl("_HID", aml_string("PNP0A08"))); aml_append(dev, aml_name_decl("_CID", aml_string("PNP0A03"))); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549260; cv=none; d=zohomail.com; s=zohoarc; b=DneNpitpSuryo9c008ehMG24LVFGMGDpMs0eOGIPOVVrmewBydxRT+2VoczblAv6wdVSE+bEn7bDrSor7a2IK4Qs50uIPN7f3po5+r35+zW2x9hS3TTTq5BtNEFr7uPJ9yFcJDcapd0MztddFnfIVfBFVgqI0vSGh9BNVClcSgU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549260; h=Content-Type: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=E8KRj603PozPBooN+Hrw7u6hn2/z258ATjiH9hYG620=; b=iDjE0me5Mg+Dpn+D0SAA79iEifkqzb/mXWie9njU4z/7oj83+hXKOw+EYfK2OpV8sR5+mk4NItCYSvIhj5zmadRkxdQegBq5Jfvbk/3/EZMYCx5xsCadz7cKtD6ftDSM/lEcIN711Us7jS0CE2TyzHF5FLKY80Yq6DnG/wdknx8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549260302540.3733732157738; Wed, 9 Dec 2020 13:27:40 -0800 (PST) Received: from localhost ([::1]:37316 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4S5-00007B-6r for importer@patchew.org; Wed, 09 Dec 2020 13:44:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51912) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sl-00021S-2Q for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:59244) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sa-0007x7-2w for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:05 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-13-_JzSLNPmOO-edNSR9ql8Ng-1; Wed, 09 Dec 2020 13:07:51 -0500 Received: by mail-wr1-f69.google.com with SMTP id r8so935044wro.22 for ; Wed, 09 Dec 2020 10:07:50 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id 125sm4920272wmc.27.2020.12.09.10.07.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537272; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=E8KRj603PozPBooN+Hrw7u6hn2/z258ATjiH9hYG620=; b=bRz6ndgQ8ZJVuwrcsK3t/wpfvZcBYLeOxSt01uz4HYzMsDrRn6jhJVQl0ei21Mb2/tfN0Z u12ZrbNAT8nMd70TbkOKdLbHPS9WuoZbl3VKpBnNMA06YWKI4IorAGRXOpzuGJSylHekK+ 9zVmTyTQWnkSLCJL7la5ILNF+wRrr9A= X-MC-Unique: _JzSLNPmOO-edNSR9ql8Ng-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=E8KRj603PozPBooN+Hrw7u6hn2/z258ATjiH9hYG620=; b=thBLv5CFmvjl8xIN8RiNA23P6kYWj33yZ/SmXGMh9bhij+rFOnGWKVXDxA1OPOEduy llhWj2az8kxQQ8RgiXmIoO0RFYkhVOHQTxJfJPw8/WH6wk8TC66yaPfHOGyBUwYkZoax iChGlKqh4Xd0/W4QdvdBsE1vFx9YSFBxA8AXSdjYyB5Q1fYZKCiy19k21EDgfOPfrxr5 nQzEYQnW/76yoO84yTjSom8E07YxhGWpqlnWYMWExSAEfnpOs2+oieHEFDhti8gBAIHu 9aLXImJn/oJWzzHJn82tOLosN9fACZJTxUWsgBJoE13nV2O85uqVS8nesaHpkLIImOy0 SXRQ== X-Gm-Message-State: AOAM532S+y7TQvzS0X0lvJw760sC+aKzLqBjNc/osJ7XvqNz4WAiYAi2 EMpgMhPhjPxQ6/J23cHtcLCVeJ3jQ+QhWC+U6uWFOLdiaCWx0NirJNbmb3e0GIZA9i4R07lHodr 2jXhB23fEpvh7KwqvGX1ak31X/XhtjobWfqLh9r2Qm2aK6anlBwqE8bvWT8Gq X-Received: by 2002:a7b:cc0f:: with SMTP id f15mr4059393wmh.29.1607537269555; Wed, 09 Dec 2020 10:07:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJz49e30RNto5gNReUDG9ekbQ76MD1gIi6G1BgDfBfys77UcAWv3bPOM1A/DyWBORacgOY8Feg== X-Received: by 2002:a7b:cc0f:: with SMTP id f15mr4059344wmh.29.1607537268978; Wed, 09 Dec 2020 10:07:48 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:45 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 13/65] acpi: Align the size to 128k Message-ID: <20201209180546.721296-14-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jiahui Cen , Shannon Zhao , Yubo Miao , qemu-arm@nongnu.org, Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao If table size is changed between virt_acpi_build and virt_acpi_build_update, the table size would not be updated to UEFI, therefore, just align the size to 128kb, which is enough and same with x86. It would warn if 64k is not enough and the align size should be updated. Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-7-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/arm/virt-acpi-build.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c index e0bed9037c..711cf2069f 100644 --- a/hw/arm/virt-acpi-build.c +++ b/hw/arm/virt-acpi-build.c @@ -57,6 +57,8 @@ =20 #define ARM_SPI_BASE 32 =20 +#define ACPI_BUILD_TABLE_SIZE 0x20000 + static void acpi_dsdt_add_cpus(Aml *scope, int smp_cpus) { uint16_t i; @@ -656,6 +658,15 @@ struct AcpiBuildState { bool patched; } AcpiBuildState; =20 +static void acpi_align_size(GArray *blob, unsigned align) +{ + /* + * Align size to multiple of given size. This reduces the chance + * we need to change size in the future (breaking cross version migrat= ion). + */ + g_array_set_size(blob, ROUND_UP(acpi_data_len(blob), align)); +} + static void virt_acpi_build(VirtMachineState *vms, AcpiBuildTables *tables) { @@ -743,6 +754,20 @@ void virt_acpi_build(VirtMachineState *vms, AcpiBuildT= ables *tables) build_rsdp(tables->rsdp, tables->linker, &rsdp_data); } =20 + /* + * The align size is 128, warn if 64k is not enough therefore + * the align size could be resized. + */ + if (tables_blob->len > ACPI_BUILD_TABLE_SIZE / 2) { + warn_report("ACPI table size %u exceeds %d bytes," + " migration may not work", + tables_blob->len, ACPI_BUILD_TABLE_SIZE / 2); + error_printf("Try removing CPUs, NUMA nodes, memory slots" + " or PCI bridges."); + } + acpi_align_size(tables_blob, ACPI_BUILD_TABLE_SIZE); + + /* Cleanup memory that's no longer used. */ g_array_free(table_offsets, true); } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549331; cv=none; d=zohomail.com; s=zohoarc; b=QPTjVG6AeD4QSJ1cf6YTlwvw0tSDQNh2280nLtj9gimzoUm0mkKjX7OqEqH078/ZhfgWjR8M+YTSHS2LRe+alHC0dWMo1V8tLHDqr5xGpo61V6TzXw46Mx/TFpIo22FNyiTeKMiPklNALaEo/z6rYeRIF0Sio2KzrCJY7Tyy7kI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549331; h=Content-Type: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=RXU9oHUsBTnreSZxooPdG4q/TIo+LgrSLDWhpXXsVuM=; b=KRxI8mIpdt4eOnR309CNVBlR2fOoYqceGbaS8IKhEDYUvDeUgCOt39C3sRpwBXg5+w3n4K2dfsM8wXFld9KeOqjWePHfYovJZSaw9QsDS5G5LOZGaIFnZmthRJHsC+f8wK3v/jDmuFf1KNk2xmI1m5Kiv6cKC0FpLUq1dmotybs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549331564509.61698625177735; Wed, 9 Dec 2020 13:28:51 -0800 (PST) Received: from localhost ([::1]:45758 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4W6-0003hu-Q1 for importer@patchew.org; Wed, 09 Dec 2020 13:48:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51918) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sl-00021Z-43 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:21557) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sb-0007xH-5Q for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:04 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-260-vWqoprHDOdWHd4rLWyN6-Q-1; Wed, 09 Dec 2020 13:07:54 -0500 Received: by mail-wr1-f70.google.com with SMTP id d26so745311wrb.1 for ; Wed, 09 Dec 2020 10:07:53 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id k7sm5842917wrn.63.2020.12.09.10.07.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537275; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=RXU9oHUsBTnreSZxooPdG4q/TIo+LgrSLDWhpXXsVuM=; b=iKMq+BFB3rfxGOF3YW8g2A9XiANqDnbg3nGwrOyPachrhpFUmOauiFu/5TJng0DBQExr+i m/lKRRgaBYuLxz1+Ulj6XL9ygPnj5t7G902+LYdcAiV7kTa2SCkeoJFQ3JCOuEK0T1zwCQ 6RFu6UOJ2WOiwtv8fY3pUDFuHsfRxwc= X-MC-Unique: vWqoprHDOdWHd4rLWyN6-Q-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=RXU9oHUsBTnreSZxooPdG4q/TIo+LgrSLDWhpXXsVuM=; b=OO5IwdUTzhKc1KPTufRG5c+wIznbUBDh9urkyKJMvZVyZQaey2/XkMgbreoNBIOOPf EWId86CL/bY0arnQ6oa9UJeu3bHKZl+tJyRLu260omg+JcF83DIUbvHPeak0Rgjppufa tX6Ui7ZRgvfmMRrsuEGOncy/dhZlu/iUGy4pB1iBm7uT39uT1pFGKtn0fEiQV0KQOTbv Ye1wDHwJPt5mR0VX8edy2v0auSaF+1iYEbZj4EIPVbwbMTOWUIM5eAB026mF+1WV4tzT t+Pt5+KkOUL08aWQTzltwZwauqdcjzEBmkNe2Jxtif/hkHiNEyYeaXDm0AiDhTk/+/7Z e6Eg== X-Gm-Message-State: AOAM532yG13RV29BVbIpsPFW7+cNkdQt22IUtkYawpy01mpQdwLxcEB2 +39kMCC2D590ITWQbSUHdvc1lA0oLoJ89rBdRtG0u0vlr/RM6ArCaIlhF8rm2Dg0QCGcz7mZA9P Q5fkw7QoUX9BvBoM4Kh7hAYxyrH3stLuPntUbo9bE08NYbWBWrq4Q3wF7F3xs X-Received: by 2002:a5d:630b:: with SMTP id i11mr4162384wru.404.1607537272255; Wed, 09 Dec 2020 10:07:52 -0800 (PST) X-Google-Smtp-Source: ABdhPJwYcEwAx1WbbHVb3la3KcUw1rw/qCmSe6DBydPDtU2JcbHMTG9im9o3Zil8XiOYCglPAkpnrw== X-Received: by 2002:a5d:630b:: with SMTP id i11mr4162350wru.404.1607537271997; Wed, 09 Dec 2020 10:07:51 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:49 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 14/65] unit-test: The files changed. Message-ID: <20201209180546.721296-15-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Yubo Miao , Jiahui Cen , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao The unit-test is seperated into three patches: 1. The files changed and list in bios-tables-test-allowed-diff.h 2. The unit-test 3. The binary file and clear bios-tables-test-allowed-diff.h The ASL diff would also be listed. Sice there are 1000+lines diff, some changes would be omitted. * Original Table Header: * Signature "DSDT" - * Length 0x000014BB (5307) + * Length 0x00001E7A (7802) * Revision 0x02 - * Checksum 0xD1 + * Checksum 0x57 * OEM ID "BOCHS " * OEM Table ID "BXPCDSDT" * OEM Revision 0x00000001 (1) + Device (PC80) + { + Name (_HID, "PNP0A08" /* PCI Express Bus */) // _HID: Hardwar= e ID + Name (_CID, "PNP0A03" /* PCI Bus */) // _CID: Compatible ID + Name (_ADR, Zero) // _ADR: Address + Name (_CCA, One) // _CCA: Cache Coherency Attribute + Name (_SEG, Zero) // _SEG: PCI Segment + Name (_BBN, 0x80) // _BBN: BIOS Bus Number + Name (_UID, 0x80) // _UID: Unique ID + Name (_STR, Unicode ("pxb Device")) // _STR: Description Stri= ng + Name (_PRT, Package (0x80) // _PRT: PCI Routing Table + { + Package (0x04) + { + 0xFFFF, + Zero, + GSI0, + Zero + }, + Packages are omitted. + Package (0x04) + { + 0x001FFFFF, + 0x03, + GSI2, + Zero + } + }) + Device (GSI0) + { + Name (_HID, "PNP0C0F" /* PCI Interrupt Link Device */) //= _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_PRS, ResourceTemplate () // _PRS: Possible Resourc= e Settings + { + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclus= ive, ,, ) + { + 0x00000023, + } + }) + Name (_CRS, ResourceTemplate () // _CRS: Current Resource= Settings + { + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclus= ive, ,, ) + { + 0x00000023, + } + }) + Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Set= tings + { + } + } GSI1,2,3 are omitted. + Name (_CRS, ResourceTemplate () // _CRS: Current Resource Set= tings + { + WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDe= code, + 0x0000, // Granularity + 0x0080, // Range Minimum + 0x0080, // Range Maximum + 0x0000, // Translation Offset + 0x0001, // Length + ,, ) + }) + Name (SUPP, Zero) + Name (CTRL, Zero) + Method (_OSC, 4, NotSerialized) // _OSC: Operating System Cap= abilities + { + CreateDWordField (Arg3, Zero, CDW1) + If ((Arg0 =3D=3D ToUUID ("33db4d5b-1ff7-401c-9657-7441c03d= d766") /* PCI Host Bridge Device */)) + { + CreateDWordField (Arg3, 0x04, CDW2) + CreateDWordField (Arg3, 0x08, CDW3) + SUPP =3D CDW2 /* \_SB_.PC80._OSC.CDW2 */ + CTRL =3D CDW3 /* \_SB_.PC80._OSC.CDW3 */ + CTRL &=3D 0x1F + If ((Arg1 !=3D One)) + { + CDW1 |=3D 0x08 + } + + If ((CDW3 !=3D CTRL)) + { + CDW1 |=3D 0x10 + } + + CDW3 =3D CTRL /* \_SB_.PC80.CTRL */ + Return (Arg3) + } + Else + { + CDW1 |=3D 0x04 + Return (Arg3) + } + } DSM is are omitted Device (PCI0) { Name (_HID, "PNP0A08" /* PCI Express Bus */) // _HID: Hardwar= e ID WordBusNumber (ResourceProducer, MinFixed, MaxFixed, P= osDecode, 0x0000, // Granularity 0x0000, // Range Minimum - 0x00FF, // Range Maximum + 0x007F, // Range Maximum 0x0000, // Translation Offset - 0x0100, // Length + 0x0080, // Length Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-8-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios= -tables-test-allowed-diff.h index dfb8523c8b..90c53925fc 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,2 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/virt/DSDT.pxb", --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607538593; cv=none; d=zohomail.com; s=zohoarc; b=Hdp5Y7CfrRMfZ2vy8/rIIFE0Ut+nz/wW0mWTkiW0JYlm9uIEz56j6F4SgaHs66jpen/pUdTdMuWVkZAdvWpOi2BEtmRNToaAK4hhx8FU+iVMfy7XnRlT3UkLDUI6PxSpQMc/5p3fhrlxakW3dzU6/jCUBL2YCjhJ/uw0teuFBKg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607538593; h=Content-Type: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=WHE7KFDKGldERbfBu/1KjueHDoBVCOeK90uoPSHzyjk=; b=hBIPmRZa9bxC92vhao+2vT8w1eazBRV58DFfdWkqqYGJRhtDkFLxObAvlf762H3NkAQHnTn15iFhIpmNIU39hn9eD0GFujGFph6ZixCMHRs1zrXYIJJk9q5FCn7yE5JG9Wiq8Z0wZDIY4MN2aLHagOhmsph+KuKsKCOSn+KwgKA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607538593675777.7647870584761; Wed, 9 Dec 2020 10:29:53 -0800 (PST) Received: from localhost ([::1]:36862 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Do-0004fD-JD for importer@patchew.org; Wed, 09 Dec 2020 13:29:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51940) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sm-00024I-5z for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:08 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:54908) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3si-0007yV-Pg for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:07 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-594-J8jI-OjIMYWYEcbMFOffNQ-1; Wed, 09 Dec 2020 13:07:57 -0500 Received: by mail-wm1-f71.google.com with SMTP id f12so869882wmf.6 for ; Wed, 09 Dec 2020 10:07:56 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id t10sm5070718wrp.39.2020.12.09.10.07.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=WHE7KFDKGldERbfBu/1KjueHDoBVCOeK90uoPSHzyjk=; b=G3UFrpvHCWjFBNFzcUsZwT8Z+KOe0qn1VJshtYfS/sGsSjgZKaziYR29BeCmF23+WVJoRx ifMP5eEQTGtVTMHCeqVhRtuxI8mVPrGb7Q39AdWFC+cTzp6jcpwvG7y6aFdgKm/RbQCzI5 Zn6OPGcazzuf9pyyFQVQKhhseSVXW+s= X-MC-Unique: J8jI-OjIMYWYEcbMFOffNQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=WHE7KFDKGldERbfBu/1KjueHDoBVCOeK90uoPSHzyjk=; b=s96wfNr+RiMAuGvSgHBAi3MFiYp8cI/psOo4xl0BDDxGtYU89tTL+aUIfB4U3GzL+l W2gFm/jjWMEj5/jIhbrGkVFsAdcZqsXalqmRcof/Rm3ayU6CUp2TarE7EHp7i5T7U3Ro 9Fn6y6yWZiYDCsTPYhY6E/4eEU5q6N4ObAYwGkWPiVjBxCEnelO1b52CqUxfXdC/58PF XpjbcPMW5CqvvyJvnafLHIy6o7konDTmR7yEZkOPJ6BK5kaigCZe83WJ6EScTfQL3SbC 1G0Wa/wJWFfXuO7xCLhlrYHCjkd+YIlZx4Qjx3zhrER0lMAIRCVgDiizKOJ2Sw3SsXde /1cw== X-Gm-Message-State: AOAM530mbiP3gMaS1H0HOVYzsiSwc6gftIp6MpvPVwjobLr5wXy0FZOt eZhtGdp44U3J1WBMlMaThxqh52QwHwoIetYecalSGFAo1ZcIftbdihEMbOux5etqdCzQmY/YcpH gER1vTf2f8w042uQHBQpKEdlnJXfi9LdGHlK+2dX9IQuu/2a7w3O1zc3bXmd0 X-Received: by 2002:a1c:770d:: with SMTP id t13mr4188310wmi.153.1607537275342; Wed, 09 Dec 2020 10:07:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJw/7sDzCs8mh04mdDPmJOE6dvg5pzGFWqoUhPfX2JJBYJvh9qdhK1IjHp3crbQLvjVOAbW7Kw== X-Received: by 2002:a1c:770d:: with SMTP id t13mr4188283wmi.153.1607537275104; Wed, 09 Dec 2020 10:07:55 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:52 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 15/65] unit-test: Add testcase for pxb Message-ID: <20201209180546.721296-16-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Yubo Miao , Jiahui Cen , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao Add testcase for pxb to make sure the ACPI table is correct for guest. Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-9-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 58 ++++++++++++++++++++++++++++++---- 1 file changed, 52 insertions(+), 6 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index f23a5335a8..64a9a772ee 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -671,12 +671,21 @@ static void test_acpi_one(const char *params, test_da= ta *data) * TODO: convert '-drive if=3Dpflash' to new syntax (see e33763be7= cd3) * when arm/virt boad starts to support it. */ - args =3D g_strdup_printf("-machine %s %s -accel tcg -nodefaults -n= ographic " - "-drive if=3Dpflash,format=3Draw,file=3D%s,readonly " - "-drive if=3Dpflash,format=3Draw,file=3D%s,snapshot=3Don -cdro= m %s %s", - data->machine, data->tcg_only ? "" : "-accel kvm", - data->uefi_fl1, data->uefi_fl2, data->cd, params ? params : ""= ); - + if (data->cd) { + args =3D g_strdup_printf("-machine %s %s -accel tcg " + "-nodefaults -nographic " + "-drive if=3Dpflash,format=3Draw,file=3D%s,readonly " + "-drive if=3Dpflash,format=3Draw,file=3D%s,snapshot=3Don -= cdrom %s %s", + data->machine, data->tcg_only ? "" : "-accel kvm", + data->uefi_fl1, data->uefi_fl2, data->cd, params ? params = : ""); + } else { + args =3D g_strdup_printf("-machine %s %s -accel tcg " + "-nodefaults -nographic " + "-drive if=3Dpflash,format=3Draw,file=3D%s,readonly " + "-drive if=3Dpflash,format=3Draw,file=3D%s,snapshot=3Don %= s", + data->machine, data->tcg_only ? "" : "-accel kvm", + data->uefi_fl1, data->uefi_fl2, params ? params : ""); + } } else { args =3D g_strdup_printf("-machine %s %s -accel tcg " "-net none -display none %s " @@ -1176,6 +1185,40 @@ static void test_acpi_virt_tcg_numamem(void) =20 } =20 +#ifdef CONFIG_PXB +static void test_acpi_virt_tcg_pxb(void) +{ + test_data data =3D { + .machine =3D "virt", + .tcg_only =3D true, + .uefi_fl1 =3D "pc-bios/edk2-aarch64-code.fd", + .uefi_fl2 =3D "pc-bios/edk2-arm-vars.fd", + .ram_start =3D 0x40000000ULL, + .scan_len =3D 128ULL * 1024 * 1024, + }; + /* + * While using -cdrom, the cdrom would auto plugged into pxb-pcie, + * the reason is the bus of pxb-pcie is also root bus, it would lead + * to the error only PCI/PCIE bridge could plug onto pxb. + * Therefore,thr cdrom is defined and plugged onto the scsi controller + * to solve the conflicts. + */ + data.variant =3D ".pxb"; + test_acpi_one(" -device pcie-root-port,chassis=3D1,id=3Dpci.1" + " -device virtio-scsi-pci,id=3Dscsi0,bus=3Dpci.1" + " -drive file=3D" + "tests/data/uefi-boot-images/bios-tables-test.aarch64.is= o.qcow2," + "if=3Dnone,media=3Dcdrom,id=3Ddrive-scsi0-0-0-1,readonly= =3Don" + " -device scsi-cd,bus=3Dscsi0.0,scsi-id=3D0," + "drive=3Ddrive-scsi0-0-0-1,id=3Dscsi0-0-0-1,bootindex=3D= 1" + " -cpu cortex-a57" + " -device pxb-pcie,bus_nr=3D128", + &data); + + free_test_data(&data); +} +#endif + static void test_acpi_tcg_acpi_hmat(const char *machine) { test_data data; @@ -1287,6 +1330,9 @@ int main(int argc, char *argv[]) qtest_add_func("acpi/virt", test_acpi_virt_tcg); qtest_add_func("acpi/virt/numamem", test_acpi_virt_tcg_numamem); qtest_add_func("acpi/virt/memhp", test_acpi_virt_tcg_memhp); +#ifdef CONFIG_PXB + qtest_add_func("acpi/virt/pxb", test_acpi_virt_tcg_pxb); +#endif } ret =3D g_test_run(); boot_sector_cleanup(disk); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545802; cv=none; d=zohomail.com; s=zohoarc; b=kyeGfZxUu1TWS0NNNXqrJ7UDnf56dZJqr/wjwBg+nWf1ZQk6B4nh48rkmSTioNz7ls1EIpIv7dtcv5p0KmykWkqAYIsIgxb9u69pf+p0J/oi4ZvPSQwYbopOJiagpjwaIUmKjBixi7mByKPA1Y69ZdkDI0/fBOwwA6vGsh+Apyc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545802; h=Content-Type: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=dOwz9KFzM4aITjt0PTvszOOZ0AmKV1RsHpDeoXXjql0=; b=bYCvMX82PMHTH6sVR9my/wBFaTKbvtrHWdnL5UsqKB4CttfjSybq0r+wJBS10vp733mwuPaellyJI4+bnR7V8ESpqjyV+EST56oWrCBHuqdfK213VIKfDa+QqKLsEYWkCQBxr9pvK7EwAVOU5Wt0j48EsJHayxT1pqL0GgDIFEY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545802125286.06166153589186; Wed, 9 Dec 2020 12:30:02 -0800 (PST) Received: from localhost ([::1]:38736 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Ey-0005Qp-DM for importer@patchew.org; Wed, 09 Dec 2020 13:31:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51960) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sn-00025f-FJ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:09 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:48503) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3si-0007yW-Bi for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:09 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-227-OXE1hNBwMdeZyV-t4t-KqQ-1; Wed, 09 Dec 2020 13:07:59 -0500 Received: by mail-wm1-f71.google.com with SMTP id k128so866286wme.7 for ; Wed, 09 Dec 2020 10:07:58 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id d191sm4959865wmd.24.2020.12.09.10.07.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:07:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=dOwz9KFzM4aITjt0PTvszOOZ0AmKV1RsHpDeoXXjql0=; b=OQ4nqGO17zGhRtDoSVXFUjAwo63GtrJ4MX7MbBymfKI9PGE6/nHDpQLKjeHd9N1mzJuPN/ JlJGmNaWgcIxKYQsGPqxJQi3u2yTUGB0dq2gy4Q+5lxmtdw6b2g1WPx+SQzf7hdYs86J3R 8W22PtV2khrewjR0pAkw1buZr9YBlr0= X-MC-Unique: OXE1hNBwMdeZyV-t4t-KqQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=dOwz9KFzM4aITjt0PTvszOOZ0AmKV1RsHpDeoXXjql0=; b=grVuvCjuSobA3BykJvg8VCz+8dkCtL5OE6yPDPoxM85mGEtTIsxX+SuE1/dNImXVqR vpCM2heBgyBbJiSzLpZWqeR/eqcjziv3N4sW1FuH9eeSzebUMStAGEe+/yPQDiAwROqA VVCgzL3uwxz6281UD405mwgZKD+Yb46DQYGgz2LPxAbs/5X7wqbe9VoEUZ9X1B5DG7Zu 4mZVT7ziYO405ahfkG/Jhg8Bw77zFj9RIVTzRHW2PiZpaKx5dGlJMAfKE54cdsxlgxjY 5hipvTJCsYayVExvKExNtC4gSbkUGiGFiHn7q8XDU6nffFb7CrkvbctX5O82ZmgvKKXM L0Iw== X-Gm-Message-State: AOAM531rngLu2QpZGlDTTDrqTRi3AvkTIqH/jWKQhCJChqx7XhQwTisk FtlYXfCIcAxVGh2IiOFv9FGvTtD2LOIsE3hJ0OEFJPa5hU7n32btb3yqKrjnQdWkcT8gaYbK5QB Ryqq/3qS8tJqiFDCOY1gHqmO8K0MSBfZ2KFbxTKYu2Jq1z3mCzbONcLIpXtcv X-Received: by 2002:adf:ba91:: with SMTP id p17mr4038563wrg.328.1607537277597; Wed, 09 Dec 2020 10:07:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJxcLOTrqr1bmLw06b2uJrHEhDDL6+wLnOt5fBMh+QxLAV6MhqUMocLbZtDZXvBm34TFFJLuhQ== X-Received: by 2002:adf:ba91:: with SMTP id p17mr4038543wrg.328.1607537277418; Wed, 09 Dec 2020 10:07:57 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:55 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 16/65] unit-test: Add the binary file and clear diff.h Message-ID: <20201209180546.721296-17-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Yubo Miao , Jiahui Cen , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yubo Miao Add the binary file DSDT.pxb and clear bios-tables-test-allowed-diff.h Signed-off-by: Yubo Miao Signed-off-by: Jiahui Cen Message-Id: <20201119014841.7298-10-cenjiahui@huawei.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 1 - tests/data/acpi/virt/DSDT.pxb | Bin 0 -> 7802 bytes 2 files changed, 1 deletion(-) create mode 100644 tests/data/acpi/virt/DSDT.pxb diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios= -tables-test-allowed-diff.h index 90c53925fc..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,2 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/virt/DSDT.pxb", diff --git a/tests/data/acpi/virt/DSDT.pxb b/tests/data/acpi/virt/DSDT.pxb new file mode 100644 index 0000000000000000000000000000000000000000..d5f0533a02d62bc2ae2db9b9de9= 484e5c06652fe GIT binary patch literal 7802 zcmeI1%WoT16o;=3DLiS6+tw&OgUms2Pe&&rRcNlRN|kDbINPK+mQkW$GN2t>&y5*4DY z5GE1@x}%ZUunAHY{255B*s){5x*Prhb`0mvok@O&o()@MN3!S4-1E)-#wYff>!#D( zdAOidc(<`_Z#avMce{3z_Jx#EdRxC{zj_wB({~#Ey~7#1TrS7^8|`MgZg<-hEUS3` zR=3DcV84zJqVo#0rnvr#TrD*mx}-|jiN8EfisLTO+^WtIANRE0w4D0)D-m9e1W1K-`?I3=3D=3D%fJX5q(*jFqgf=3DxI;=3D+i!j2&*$h#YZ&sEUM@nAgr*&hytUE zjGD-ZNQ_Zn)R1vWWJD!K92l37u_Q7^B!&fyC1hL{8KV*-1&qtcSQZ&EiID-uGBQ>~ zMqFZKfw6*&DG%GO{fw77VxlVHu;{{;Uks;S< zUSgaFMgtjgosLV43&5~}QI+eoATeGBMiUuwolZ!MSAo$&hFqtU661AXtRX|L(Vw8cgfeg7$ixQ&>j5adlI-QXimw<5-8FHP@N{q|EcpDjVoz6*&6<};4 zL$1?#iE$Me9bnYtI$e+$*MPBw47pBA65|FiwtYtDhpxTi&!fB5E!WE{)VJ8wgqf&D zQN7vI`@BBFX|2AGs&X_uAR4$*c+C9j#H9`7}G}OzaP-oI?ys;54Gnhd{>C9kg#AMP?FOx!@Ni*^?sUtLF z{m6IphEmhyTLvL|jxf&=3D@0@|>h{+5lPa%4aGEZuLX$HYiYO>IiLiCI=3D&lvNJaZd`- zGtNBYUS@Dfs3}8F3ehvcJgIFrSI@g73GPWDdRolWVxH8*p(lmtnPi?x=3D9%Q46ryK} zd8U{rHGSwwA$q2nXPSAYxhI9_nPHw8=3D1EN=3DdQymU3el5po1kv9%#)f* z^rR3ybIdcxJagQWLiEft&ph*_CKNp>M9*>NInF%CxhI9_Szw+8=3D1EN}dQym<6U=3Djh zc}{Ro3ej_tc}_ARl0q^1}>DMZgA^DHvYBKM>a zJ!hEb4D+NW8a*jQ&spX<%RFbfCxz%a$2{klCpF#ZNg;a9GtYVEInO;QL{D1OFrQi8 zXZ!;5q$V9bDMZf_^DHsX68EIgcZYER-{LZqUNJz{O9IR6<1D|`%V{aWZ#O?fGWMl>9uyC1I^JJHH~_tpRAI8KF&Tp zx)=3DJKj#RwSmE*~$N5MF=3DJF5>K=3D)rpb$^MTSvtOU2a0Ek zp0J{OUnX^Ex184IVqw1Dy1kP)(81l~?9rpUmR_}c+}-Uptij%4QEy (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607539930953347.9735946876027; Wed, 9 Dec 2020 10:52:10 -0800 (PST) Received: from localhost ([::1]:54430 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4ZN-0007Mm-Px for importer@patchew.org; Wed, 09 Dec 2020 13:52:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51964) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3so-00026i-B5 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:10 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:48078) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sl-0007zr-6u for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:09 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-424-j7qLjOdPNSyeKHot7mafVg-1; Wed, 09 Dec 2020 13:08:04 -0500 Received: by mail-wr1-f70.google.com with SMTP id y5so949242wrs.15 for ; Wed, 09 Dec 2020 10:08:04 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id n5sm1804808wrp.55.2020.12.09.10.07.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537286; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=OPkEy7zdzU+em153CCBpKaOYJAvGL44aXjwYpC3hvpA=; b=Sx/f7vo8OpnmmISYrrnc1Mqd6kQP1fgw6PoKPE62Fonl5WtID6zUIXOXYEkHvwSRAdOZML YaDTbF+BKNlwQabQ2zwHH9sjfl6fFw0NtNLyCxbQyw9FNNOEfvO3ZVfoDFG6aZxHYS6YBf tKJZTRBND6HBTB4/tcxAmAY/Rm9ZNAM= X-MC-Unique: j7qLjOdPNSyeKHot7mafVg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=OPkEy7zdzU+em153CCBpKaOYJAvGL44aXjwYpC3hvpA=; b=rgsVOIee01/46gJwxpy93BtytwWXSu7tPeA++exEapB6isGW8zyVM/niP47A7QAuwh qZHwJHuImBtqnLG+8MY9mCOlqVY4cPbclRQm1N8pAChzeR+RoHnNkss993iijN8D/7a2 riqEOSKLFkmXnzpJcDDu1kZ5XQj8JjuS5i+cONrMOWxo6SfXdiaGNKz79iD5jB+483BM aT1eFWoJs65+DKNNtCvZ3V8v+9aFyF9mmsFi1pIUyMYQ0/ZoXXtlYV0MQw50C18z0NbF nvumq3RHq6R0vhPQYzKtRsd5hfsNyc9Dd99AK+mbGp6/3nAQE/jJfojsG3l8uOTgxS0x T/5A== X-Gm-Message-State: AOAM533IITpC/zlIki28RqIA7q7DUNzR+1QphupesUR6lKUx/3hHc5sD pj6FgRSEiSdyRuSNJROmfvGJdzMhWK3109G7aFvzcsyzpwLK5ahvxfEmVwDqlmYgrHgZkAiu5FP nqma7UYZ6vgKnOdZ6RZQwybMrdiZc/v6QoyCE0ZBZF7hc0Xpi+An4MOP1XLFy X-Received: by 2002:a1c:6002:: with SMTP id u2mr4139184wmb.29.1607537282789; Wed, 09 Dec 2020 10:08:02 -0800 (PST) X-Google-Smtp-Source: ABdhPJwdXPj8DvIQKKT958pONlOzk5cA1CLJHQSFGeJ9lTuN65lJ+HIIgt7SXpj1b1fFZmzv8CS0wA== X-Received: by 2002:a1c:6002:: with SMTP id u2mr4139155wmb.29.1607537282497; Wed, 09 Dec 2020 10:08:02 -0800 (PST) Date: Wed, 9 Dec 2020 13:07:57 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 17/65] failover: fix indentantion Message-ID: <20201209180546.721296-18-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela , Jason Wang , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Once there, remove not needed cast. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-3-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 33 +++++++++++++++------------------ softmmu/qdev-monitor.c | 4 ++-- 2 files changed, 17 insertions(+), 20 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 9179013ac4..1011a524bf 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -797,7 +797,7 @@ static void failover_add_primary(VirtIONet *n, Error **= errp) } =20 n->primary_device_opts =3D qemu_opts_find(qemu_find_opts("device"), - n->primary_device_id); + n->primary_device_id); if (n->primary_device_opts) { n->primary_dev =3D qdev_device_add(n->primary_device_opts, &err); if (err) { @@ -814,9 +814,9 @@ static void failover_add_primary(VirtIONet *n, Error **= errp) } else { error_setg(errp, "Primary device not found"); error_append_hint(errp, "Virtio-net failover will not work. Make " - "sure primary device has parameter" - " failover_pair_id=3D\n"); -} + "sure primary device has parameter" + " failover_pair_id=3D\n"); + } error_propagate(errp, err); } =20 @@ -824,7 +824,6 @@ static int is_my_primary(void *opaque, QemuOpts *opts, = Error **errp) { VirtIONet *n =3D opaque; int ret =3D 0; - const char *standby_id =3D qemu_opt_get(opts, "failover_pair_id"); =20 if (standby_id !=3D NULL && (g_strcmp0(standby_id, n->netclient_name) = =3D=3D 0)) { @@ -841,14 +840,14 @@ static DeviceState *virtio_net_find_primary(VirtIONet= *n, Error **errp) Error *err =3D NULL; =20 if (qemu_opts_foreach(qemu_find_opts("device"), - is_my_primary, n, &err)) { + is_my_primary, n, &err)) { if (err) { error_propagate(errp, err); return NULL; } if (n->primary_device_id) { dev =3D qdev_find_recursive(sysbus_get_default(), - n->primary_device_id); + n->primary_device_id); } else { error_setg(errp, "Primary device id not found"); return NULL; @@ -857,8 +856,6 @@ static DeviceState *virtio_net_find_primary(VirtIONet *= n, Error **errp) return dev; } =20 - - static DeviceState *virtio_connect_failover_devices(VirtIONet *n, DeviceState *dev, Error **errp) @@ -3126,9 +3123,9 @@ static bool failover_replug_primary(VirtIONet *n, Err= or **errp) return true; } if (!n->primary_device_opts) { - n->primary_device_opts =3D qemu_opts_from_qdict( - qemu_find_opts("device"), - n->primary_device_dict, errp); + n->primary_device_opts =3D qemu_opts_from_qdict(qemu_find_opts("de= vice"), + n->primary_device_di= ct, + errp); if (!n->primary_device_opts) { return false; } @@ -3176,8 +3173,8 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, if (migration_in_setup(s) && !should_be_hidden) { if (failover_unplug_primary(n)) { vmstate_unregister(VMSTATE_IF(n->primary_dev), - qdev_get_vmsd(n->primary_dev), - n->primary_dev); + qdev_get_vmsd(n->primary_dev), + n->primary_dev); qapi_event_send_unplug_primary(n->primary_device_id); qatomic_set(&n->primary_should_be_hidden, true); } else { @@ -3201,7 +3198,7 @@ static void virtio_net_migration_state_notifier(Notif= ier *notifier, void *data) } =20 static int virtio_net_primary_should_be_hidden(DeviceListener *listener, - QemuOpts *device_opts) + QemuOpts *device_opts) { VirtIONet *n =3D container_of(listener, VirtIONet, primary_listener); bool match_found =3D false; @@ -3211,11 +3208,11 @@ static int virtio_net_primary_should_be_hidden(Devi= ceListener *listener, return -1; } n->primary_device_dict =3D qemu_opts_to_qdict(device_opts, - n->primary_device_dict); + n->primary_device_dict); if (n->primary_device_dict) { g_free(n->standby_id); n->standby_id =3D g_strdup(qdict_get_try_str(n->primary_device_dic= t, - "failover_pair_id")); + "failover_pair_id")); } if (g_strcmp0(n->standby_id, n->netclient_name) =3D=3D 0) { match_found =3D true; @@ -3235,7 +3232,7 @@ static int virtio_net_primary_should_be_hidden(Device= Listener *listener, if (n->primary_device_dict) { g_free(n->primary_device_id); n->primary_device_id =3D g_strdup(qdict_get_try_str( - n->primary_device_dict, "id")); + n->primary_device_dict, "id")); if (!n->primary_device_id) { warn_report("primary_device_id not set"); } diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index bf79d0bbcd..a25f5d612c 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -573,10 +573,10 @@ void qdev_set_id(DeviceState *dev, const char *id) } =20 static int is_failover_device(void *opaque, const char *name, const char *= value, - Error **errp) + Error **errp) { if (strcmp(name, "failover_pair_id") =3D=3D 0) { - QemuOpts *opts =3D (QemuOpts *)opaque; + QemuOpts *opts =3D opaque; =20 if (qdev_should_hide_device(opts)) { return 1; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547597; cv=none; d=zohomail.com; s=zohoarc; b=H00UDRJTq7nP8Tqj3b/KuvS+rZRUWziMsy5iJQXIl8PzyjCIQGCM8c0KulmhK7fLMeSXEZmVhGTbQA2b7KpG4yM2tHjjM880uZnpJVgRyQEudymtS5gKxmWOiXgXH/sMcdsxHz/sJSQHzhb9uKgQGw/SkzuFbs4uxhbXl/JPris= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547597; h=Content-Type: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=FgcgZZzc2Flzw0fgzWTMsHtDenMVkVIL0C7rCd4lpNo=; b=ADhfKOX72jaAA4/co9o3FRyF/q19exn+vIF55FDuSC9K3kwKWgv4J7ORonkoIqyAHLYfw9G/Fn8nthpiPyjojIBo4fGXBbJJpvViLn3mQgP4ocQtvzG+3d/ozMgudKj9KdIppjNocEzdyDO6y+VL3SrKoqg7s8O95CrSSJuHASQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547597698155.3854358864122; Wed, 9 Dec 2020 12:59:57 -0800 (PST) Received: from localhost ([::1]:34592 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4cc-0002Mv-Uj for importer@patchew.org; Wed, 09 Dec 2020 13:55:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52000) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3sv-0002AW-P7 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:20 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:31459) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sr-00082P-0B for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:17 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-481-54zOus6LOrqY8nrNfWE7Wg-1; Wed, 09 Dec 2020 13:08:10 -0500 Received: by mail-wr1-f69.google.com with SMTP id o17so953345wra.8 for ; Wed, 09 Dec 2020 10:08:10 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id c9sm4919342wrp.73.2020.12.09.10.08.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537292; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=FgcgZZzc2Flzw0fgzWTMsHtDenMVkVIL0C7rCd4lpNo=; b=LqY4z5IjQrLJM7uwTU0WB5lzY9XTc33oWvEkDVMDl5jSK2+hVysafUpbibPBvqrIJpgX5h y8eHtgVOkT6hc+pblqt34iItrDO1lK+H+SZTt8AV8jjNajLu7FysWWPZ4suCw+HPh4u6pt tG5z4lOvhieCJuFu4MqTVVA5yAD3pBo= X-MC-Unique: 54zOus6LOrqY8nrNfWE7Wg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=FgcgZZzc2Flzw0fgzWTMsHtDenMVkVIL0C7rCd4lpNo=; b=RDUHJGQK8X9PgdhWqRb8hekG2FbpqxuW1jVN2juPV7ryjfQs43gYPgiKmWvGjLLFuy Y7Qvap0OdK8eGdLomMfZnwUOpaA9fdVtypXq4LG1igATvE5EdEnzYAZViB7MTYnr+kG3 nUn6gKExnNcWoZrITz77oV91aMP6Zm/7LjqKoP7BBKqhMeK70tAoSasvidWdhZ/r4S1k 1icjpzfEMAQ7NTUIt/8xgFEtpGeKFFmI+JnAb5Fsl33wWfBY43LuAc8ZtaWv9VCTavN/ RCXoMUh3omgXgcDlxW7gvio7Pqq8jYI6hI1AIKljNX0gogK76jT8O6aP1OZ2zfnGgpqu c1HQ== X-Gm-Message-State: AOAM530943TlPWDT3ifXIY8HdYFCflOAa6LrAyKYFdx5+69ZMB8hzkfW hPrmg+9RaDOZw8oPh+EAwpqlKdlBtbiMSGny11y1o9LLxqewxc1gHxzSpLWBlIyIHBMPdsM2VRt AK53HDK6hWaWqFzXM2kCx0JsXkFeAgPrbQn86WyXRaPMTfq76xNLT30Fnkma5 X-Received: by 2002:a5d:4e04:: with SMTP id p4mr2694409wrt.373.1607537288919; Wed, 09 Dec 2020 10:08:08 -0800 (PST) X-Google-Smtp-Source: ABdhPJyfDnJtAWnvPNOFVoTtkOM23ClChhYwpK2Bn7IB9zw/K0fUq74nYOuIAOJ1DyBCVNW+SpvYxw== X-Received: by 2002:a5d:4e04:: with SMTP id p4mr2694382wrt.373.1607537288758; Wed, 09 Dec 2020 10:08:08 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:02 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 18/65] failover: Use always atomics for primary_should_be_hidden Message-ID: <20201209180546.721296-19-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-4-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 1011a524bf..a0fa63e7cb 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3136,7 +3136,7 @@ static bool failover_replug_primary(VirtIONet *n, Err= or **errp) return false; } qdev_set_parent_bus(n->primary_dev, n->primary_bus, &error_abort); - n->primary_should_be_hidden =3D false; + qatomic_set(&n->primary_should_be_hidden, false); if (!qemu_opt_set_bool(n->primary_device_opts, "partially_hotplugged", true, errp)) { return false; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545679; cv=none; d=zohomail.com; s=zohoarc; b=CLNCCeDp38jg6A9TqunHTJHL0FWXgNUIkU8CyYTIcTgeU7ELq0tfb5x/R1N5rT0oMnqkLKvPLQUSo9oCTp48bxBgtDmHXBLrp3q3sjleryzx7LHrR3Mt3nCVr3hN4pT14g/4jtvnokx9r3aQKUPsSb9n21zr/K9CRUpPX0qswuE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545679; h=Content-Type: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=bvk6Ny86rso8mg1Vb1kLOvKe4SXQYHEXQ5syAnjwF2M=; b=HDGoe4U8VUu9VaWGKcpEWAS8FpaUmJjnPb3CZgNR6pJoiMsjz2l9MBPMsOt28aJRvVoOAPjb/IGkGaWfE6yb+p30nkOA2hVUWAoDy9LHNhbKJPeIhX7qqx+/ORUsUBxx+Lq7J5wpJi+crLKu4FvZrvW0EErTRLFHRtpYBfSD5aI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545679401325.4357448713446; Wed, 9 Dec 2020 12:27:59 -0800 (PST) Received: from localhost ([::1]:55118 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn49s-0000Pe-Tj for importer@patchew.org; Wed, 09 Dec 2020 13:25:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52092) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3t6-0002By-SX for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:28 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:30388) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sx-00084d-Ey for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:28 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-534--SB5PoG0PMmhCKD0i9iVdA-1; Wed, 09 Dec 2020 13:08:14 -0500 Received: by mail-wm1-f71.google.com with SMTP id k128so866602wme.7 for ; Wed, 09 Dec 2020 10:08:13 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id u66sm5197759wmg.30.2020.12.09.10.08.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=bvk6Ny86rso8mg1Vb1kLOvKe4SXQYHEXQ5syAnjwF2M=; b=H9FNjvc/UlRDQh5/NMlnxgSj4Kb2Wk6Dh+BknWqAZIqUp91FrLcFXU+hhoZ1p0Z7n3q33N VG3ONFd4coUEouIHLhpKplRVGISQg4fEuXZcHjFQib65VECeCoqF7YMza8KKLkYWukbqcn AolnfBvQqgc9k8kbPbMDwlAXTZPifTM= X-MC-Unique: -SB5PoG0PMmhCKD0i9iVdA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=bvk6Ny86rso8mg1Vb1kLOvKe4SXQYHEXQ5syAnjwF2M=; b=TQuPCz1UnshcXrbkvjBbeIYZDmLVZZilMzV/3hayjKOiEkl32uhZR2+Gpl2mYssihk jkYm7rUC9WMlMVjyilZ08a0EB8MF52gm9WwTYx/2v3MmMDHJNFs2gZE+DQxDiwE4SoJk +Udhlg1sFIAYzFPYsPgdukIfwSPKQhxpbYKQELdnZDHbNagRmB6iNHaT32a10lBTkhGz YjMyrXOVkRDj8nTVNPNd7QTiy9N7UVoITTTU8poTXVVzmd4iz34j/rFtBnk8GQf7R8g0 gh3c0+ZIFjqwpaxFZNjJECYJebLC556IXED8eIJn3RmClXKjrIg69EsI5n6fhFTUPfcH b8VQ== X-Gm-Message-State: AOAM531PJ0+zLB5o79tLUfg3iGle5pC3sJUSDjav6SZbEugwCT7lcUlO 10AOMpHj6sgvaNVnHo7mqCMQ6aSLtagHFeg5Zy67AH6YybWYnhGHBaozp8p0cgCSS5QfHTv9lgL pqomjgthLZxVTh42oarBWxsoOT2pZf465c53Sj4H1cy//mo/hK0c71hDaWkxZ X-Received: by 2002:adf:e48d:: with SMTP id i13mr4080140wrm.48.1607537292251; Wed, 09 Dec 2020 10:08:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJx6fwFfZnaDiGw+iZqpKoxWF30+fePH2QuFOFw4E146SXN1TFy9xSmDWwb/F5JSkYva8mxtaw== X-Received: by 2002:adf:e48d:: with SMTP id i13mr4080121wrm.48.1607537292066; Wed, 09 Dec 2020 10:08:12 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:09 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 19/65] failover: primary bus is only used once, and where it is set Message-ID: <20201209180546.721296-20-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Just remove the struct member. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-5-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 8 ++++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index f4852ac27b..c8da637d40 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -205,7 +205,6 @@ struct VirtIONet { QemuOpts *primary_device_opts; QDict *primary_device_dict; DeviceState *primary_dev; - BusState *primary_bus; char *primary_device_id; char *standby_id; bool primary_should_be_hidden; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index a0fa63e7cb..786d313330 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -804,7 +804,6 @@ static void failover_add_primary(VirtIONet *n, Error **= errp) qemu_opts_del(n->primary_device_opts); } if (n->primary_dev) { - n->primary_bus =3D n->primary_dev->parent_bus; if (err) { qdev_unplug(n->primary_dev, &err); qdev_set_id(n->primary_dev, ""); @@ -3118,6 +3117,7 @@ static bool failover_replug_primary(VirtIONet *n, Err= or **errp) Error *err =3D NULL; HotplugHandler *hotplug_ctrl; PCIDevice *pdev =3D PCI_DEVICE(n->primary_dev); + BusState *primary_bus; =20 if (!pdev->partially_hotplugged) { return true; @@ -3130,12 +3130,12 @@ static bool failover_replug_primary(VirtIONet *n, E= rror **errp) return false; } } - n->primary_bus =3D n->primary_dev->parent_bus; - if (!n->primary_bus) { + primary_bus =3D n->primary_dev->parent_bus; + if (!primary_bus) { error_setg(errp, "virtio_net: couldn't find primary bus"); return false; } - qdev_set_parent_bus(n->primary_dev, n->primary_bus, &error_abort); + qdev_set_parent_bus(n->primary_dev, primary_bus, &error_abort); qatomic_set(&n->primary_should_be_hidden, false); if (!qemu_opt_set_bool(n->primary_device_opts, "partially_hotplugged", true, errp)) { --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547296; cv=none; d=zohomail.com; s=zohoarc; b=Ce063u4gCGA8JmL0UR1TnTDwjDH3Ru4Y+sa4UFgbGGfvkNGfHjE0wl4arKUM45norBKKT1k2vOWinDSmkpz5W9gDWZIFp7hVXjaWhFaiuXq6G3zYx3Ai9kXwXQWspMQ5EKjT73ziXyJDkTcSHOTqfbaSqLXXgcA2LBmaKAi19Lg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547296; h=Content-Type: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=DyhXDtuex14GnTmqS7jV7i/02scrPG/xS6z1km7MojI=; b=WdM0zlQrGi7cBkL6AuDSMHTauT2HHqay18ti8pGTmjI++nOv37r74EptoTEU5Y+N9HbhvHoXNa4aAQ2B84pRURHSAAcWhGboPoffW2Yel7YaB9xk544Yi44yX7O6xqdDejniLGmPytpmm/kL6+jl15JMonqwVIfiH/wjuvPswNU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547296839883.9650408512302; Wed, 9 Dec 2020 12:54:56 -0800 (PST) Received: from localhost ([::1]:45240 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Hi-0008KM-1v for importer@patchew.org; Wed, 09 Dec 2020 13:33:54 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52054) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3t1-0002BX-3F for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:43785) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3sy-00084h-0T for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:22 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-558-Am--bv8OMe23rIGhbqxsFA-1; Wed, 09 Dec 2020 13:08:16 -0500 Received: by mail-wr1-f72.google.com with SMTP id 91so941597wrk.17 for ; Wed, 09 Dec 2020 10:08:15 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id s8sm4483939wrn.33.2020.12.09.10.08.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537298; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DyhXDtuex14GnTmqS7jV7i/02scrPG/xS6z1km7MojI=; b=N9IW4wD0YN9AXuIGGXtTQ+dKJCrbRg/VdBeih7WxnmHwEXy3G8uXSfaYs4WI0XwM0hYY19 ZopjHM0HWNHeyasmC6NxCztwET8wSnnzSyTSNJTQ6tJBilULNeUU3EfAQT94vm+EAkvtR8 t0gEYsUtanS9uY0R96kpGOFeDbP/NS8= X-MC-Unique: Am--bv8OMe23rIGhbqxsFA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=DyhXDtuex14GnTmqS7jV7i/02scrPG/xS6z1km7MojI=; b=FO7lLCOdA+GOvK0Zy9rXFua0Eeu21L0sxTYeFxFdBpiXn1k7UhledCxuyEz3VCT290 DBSWH1DW5aFw6zKIA8wUWpOWU6YKg49wbN0y7y9d7BKmZKLZ4Oh98F9uihRkuadCM2H2 wJoTSG7u6fEzmo2evIwMzC4bemtSDwKBn8Wbh9ZgAhMJDDel83N4ETXTyiUkf6FX/uMd vrTXNPdDC+32bsk2KHVZpHccYgMgweNcm/fs1ROGR1fqu4sOmxq7lUAj7+Yj5mCROAbj wqPTgECDwiKSa08BXxrd9lmw3+Db/v8MkXZ6uqko9fmV6eqXsNMaMekTMY8LnudQRi9F qJOw== X-Gm-Message-State: AOAM530ISqLHCpx0c1/8dF70Z28MAaEQz+d1pvAzIy2js3Ct42wEzOew znWU7IQeSmyESMZxPE+a77zoASvpn9FBse1nH+S9Hk6C5ujcu/FOBeKcM/F6U03eMMazixv6kWK C5a7HnQ00RfUuQLjMEqPjaQgbz0NieptAz3O2h8Cq9eqClK8OOWZRqhH8tN2Y X-Received: by 2002:adf:9167:: with SMTP id j94mr4044317wrj.249.1607537294555; Wed, 09 Dec 2020 10:08:14 -0800 (PST) X-Google-Smtp-Source: ABdhPJwkvPekH2hNn6UgOy/0cp+DGufcVB9UgVBXthPn3/qTe4jQz1RNYN7BzL55cCdVarLZr2S7oQ== X-Received: by 2002:adf:9167:: with SMTP id j94mr4044287wrj.249.1607537294346; Wed, 09 Dec 2020 10:08:14 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:12 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 20/65] failover: Remove unused parameter Message-ID: <20201209180546.721296-21-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-6-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 786d313330..3f658d6246 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -855,9 +855,7 @@ static DeviceState *virtio_net_find_primary(VirtIONet *= n, Error **errp) return dev; } =20 -static DeviceState *virtio_connect_failover_devices(VirtIONet *n, - DeviceState *dev, - Error **errp) +static DeviceState *virtio_connect_failover_devices(VirtIONet *n, Error **= errp) { DeviceState *prim_dev =3D NULL; Error *err =3D NULL; @@ -928,7 +926,7 @@ static void virtio_net_set_features(VirtIODevice *vdev,= uint64_t features) qatomic_set(&n->primary_should_be_hidden, false); failover_add_primary(n, &err); if (err) { - n->primary_dev =3D virtio_connect_failover_devices(n, n->qdev,= &err); + n->primary_dev =3D virtio_connect_failover_devices(n, &err); if (err) { goto out_err; } @@ -3164,7 +3162,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, should_be_hidden =3D qatomic_read(&n->primary_should_be_hidden); =20 if (!n->primary_dev) { - n->primary_dev =3D virtio_connect_failover_devices(n, n->qdev, &er= r); + n->primary_dev =3D virtio_connect_failover_devices(n, &err); if (!n->primary_dev) { return; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545690; cv=none; d=zohomail.com; s=zohoarc; b=H1kS/vwmmbogAMRY8Cs9kq73QYAzuO75TrRf53vfz8oHirq5TdgCDVaNeGq4nLUYkAAOGaQAgHP+U+RCuMgx89hNxJYO4mYm9Uo9xepDrm41OnXXnAnzijJem2YyyRg6KnXJdTShvT6Fl0vhpWIdeHsLxdmgjIGD/bpU+R/oQY8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545690; h=Content-Type: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=gA8OZSVFzke8UQRwamLZeTSgAvZS2ts8NQ1bKDBCEMU=; b=VOKebF2sXHIUaePQNlT+gqCeTCEXiERyDbG5F8PyFTSnirMK9trGPWVBNR1S8rXFMWfpbzm7H/VMpkZC6ux99SsUywgjO6gyElDaXzA69I95nQJhYpjYBnDEGCDJlDApxWZIXxE2rqvdyDWg62rt/OnCFZlVemuPrjebjxTqySo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545690102742.4309723580124; Wed, 9 Dec 2020 12:28:10 -0800 (PST) Received: from localhost ([::1]:47278 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Ir-0000ib-Sh for importer@patchew.org; Wed, 09 Dec 2020 13:35:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52098) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3t7-0002Cc-2F for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:29 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:59908) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3t0-00085H-QQ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:28 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-557-7PrA87RZMSOomXVJMSwGjg-1; Wed, 09 Dec 2020 13:08:18 -0500 Received: by mail-wr1-f69.google.com with SMTP id r11so938269wrs.23 for ; Wed, 09 Dec 2020 10:08:18 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id q15sm4835884wrw.75.2020.12.09.10.08.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=gA8OZSVFzke8UQRwamLZeTSgAvZS2ts8NQ1bKDBCEMU=; b=N7jp+fW8VChaLq5iNqcr5GCfPTfp57DsaU0SUyShz8O/oszZEg7hE1sfA90jsdZqp3BOZB +G3EPMZ1BtoP/c1UVNSn4D0LUtPag1/09bg2t3JmJi+7HuPEOXAKVAgaZnGWjmQGx8LsJ4 olexhUPlrkra08iG54maw4dhaGazQ+E= X-MC-Unique: 7PrA87RZMSOomXVJMSwGjg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=gA8OZSVFzke8UQRwamLZeTSgAvZS2ts8NQ1bKDBCEMU=; b=r4GJB/vOcAvA0BXlSbGrYsOdt5k23R4dIyZoT7J+7D0H9DjFvoJBdYkLstVZaxd9jw t9vc1cucWbn7bfaDnZY+2dLAJrmc5MfeAOao9EAU7TamXv3KmZoncdXYmBL3bfBekINU dBg1s3OePeHhUzavof8L9xUe08BryAh5igBYtFxPAHIsY+B8O+Sa9KknMAm0Hy1saFIj BCUjPlLy1cenLIL2OxgDTD4HZOKeQLA5NUyxC4M/NwhCU7RUBw9Ul7sMOV9LIv2Z2w8u 9KTKQcafaSlLvWDq9zfRxgIuNIvNcx+PpIYbvv/O04zG7C1EVluMlP+Foj55CtpLnwVu cT2A== X-Gm-Message-State: AOAM533yemi0s88ThsH1bgwwGH3+WXi2Tu4lie4/BH6Rtw7G6t7+6aI4 jrPcMyeyXwJXiIRc6tYgP/xQFKwOvrZRukTOOsUg7DKDt6G4iSo/+lRsr7e4i1YPBpH816gXtvU yE/WbXWDFNh+EIbhBtkUWbzmZHWhZ+iS/aosw29DgGAhtCkTTnkayE7Jy92ns X-Received: by 2002:adf:9b91:: with SMTP id d17mr4045825wrc.32.1607537296836; Wed, 09 Dec 2020 10:08:16 -0800 (PST) X-Google-Smtp-Source: ABdhPJwHKE2wIsJ0MuGiR1xZL8tmb9OitSai8rLaw1gRW6ktFKwAi91IGgYOsrNUlJ5a6pcvI2JUww== X-Received: by 2002:adf:9b91:: with SMTP id d17mr4045803wrc.32.1607537296668; Wed, 09 Dec 2020 10:08:16 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:14 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 21/65] failover: Remove external partially_hotplugged property Message-ID: <20201209180546.721296-22-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela It was only set "once", and with the wrong value. As far as I can see, libvirt still don't use it. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-7-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 3f658d6246..6ca85627d8 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3135,10 +3135,6 @@ static bool failover_replug_primary(VirtIONet *n, Er= ror **errp) } qdev_set_parent_bus(n->primary_dev, primary_bus, &error_abort); qatomic_set(&n->primary_should_be_hidden, false); - if (!qemu_opt_set_bool(n->primary_device_opts, - "partially_hotplugged", true, errp)) { - return false; - } hotplug_ctrl =3D qdev_get_hotplug_handler(n->primary_dev); if (hotplug_ctrl) { hotplug_handler_pre_plug(hotplug_ctrl, n->primary_dev, &err); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549071; cv=none; d=zohomail.com; s=zohoarc; b=Hq8aKdNLMpbfBmKwFUt5k1N9z6fZ/0FuzKUUABwigZRlRXs6erZ0FABidzt3hmLspj7zdldH9gAZzHOdokWZ2WKSPcvzSuB7Lx7BDhFUbpjHX7Wmwl2hxQMOpbj/YAlyHDlAzN9Xvj/qjXUfgF8nWBJuSRohmhREWHaTKW56n4U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549071; h=Content-Type: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=l0gJ2VpSbCOtbZxPOChuV1mVFMIO/b+gNgYfj7nsR0w=; b=E8fjmjfHQ9zXn4FO/gXoLNZ9YsbXP1hsZ+h5eMHpNu/ISGryEHM9omzmWpp3ezfx2eOwd+YftgKAKbSt3NaGZQk/WMd9GW91YhZEWK9QR3bgU0TuyLyKhEDstPvMagJ97AZTgJ9CLMVrieDcE5weXK4S4Xf3tedSgx86n/B3kZg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549071126743.3596606113939; Wed, 9 Dec 2020 13:24:31 -0800 (PST) Received: from localhost ([::1]:42904 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4fI-0005qJ-CT for importer@patchew.org; Wed, 09 Dec 2020 13:58:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52116) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3t8-0002EM-1u for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:30 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:51260) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3t3-000869-K8 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:29 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-308-Tpti0F5NNVGUDnlzqDIOmw-1; Wed, 09 Dec 2020 13:08:21 -0500 Received: by mail-wm1-f71.google.com with SMTP id q17so641680wmc.1 for ; Wed, 09 Dec 2020 10:08:21 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id q15sm4836085wrw.75.2020.12.09.10.08.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537303; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=l0gJ2VpSbCOtbZxPOChuV1mVFMIO/b+gNgYfj7nsR0w=; b=bD5GfSHF8E15d9OpfknM/AjUedfcxz/WSvPR+fGFsOTNMpt6lvz/UQlBwFnY1hr9jJKe73 mUlizUEO6K/qXHAvXCPW3hZgMMsrtYqPebX3W5cdWWD8hs6X/37tZFmzI26tjch9p7tU5Z n6tywkk7Ve8zh/uiQx5TFOROgtKwpOw= X-MC-Unique: Tpti0F5NNVGUDnlzqDIOmw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=l0gJ2VpSbCOtbZxPOChuV1mVFMIO/b+gNgYfj7nsR0w=; b=VV3Ybifx2FndUlRScQPIm+BHqkMZXSq+ALx3Mifn9Tgf/z3V6sOhxFUwJQoTDYKBM6 1qjIF8vYYZ9jelMuAVzhAEr+sZM0K3FLqiCcan9tFyEvIMSakYSp9RR5iSG1KrClOgQ0 Z9VbiAti9OvtsWFG9Kai7CGk5UQKSXxQeDy1rUZw37Lcyotx1ZrUpUofJTi4tvKAxWua 4Pu+bATAJ9tMcQyQzX3zLGVihHF3G2GQ3Fnp+V/tEnLUcc9gasVVOjHmGuTrdV+3YnkS ZPnuAp9pTri8t9TufYF7VPCgtcD+au8XNn0kO1lHhxnNVwr3eflUL9f+jidKdBOV+OOY cnFw== X-Gm-Message-State: AOAM530PHyu90TDfOkya2ceaRJFvcQKDBBEnOP1+Ccrvd9qHt3KyL+hz nVuomZY4O5/UE2zQEJylOBsw7gnGAFKxyqgO+Xhkx7jpAbHYY3ysGRs7kCovuUILnIag4hv8mJd cFAjQ44CquFnxsXiRLELbKlotjxBeTt5LBjEbILr+Z0Qbq0yRDakr7Ogt9oI4 X-Received: by 2002:a5d:5005:: with SMTP id e5mr3938999wrt.279.1607537300246; Wed, 09 Dec 2020 10:08:20 -0800 (PST) X-Google-Smtp-Source: ABdhPJyT1cqVEA0W3+dVvR3nDhpokYiLI0CpalXVsvLyNiTRB50PQ5IA96wgkR5/sOJDB9chtYKfHQ== X-Received: by 2002:a5d:5005:: with SMTP id e5mr3938976wrt.279.1607537300020; Wed, 09 Dec 2020 10:08:20 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:16 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 22/65] failover: qdev_device_add() returns err or dev set Message-ID: <20201209180546.721296-23-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Never both. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-8-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 6ca85627d8..3e82108d42 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -803,13 +803,6 @@ static void failover_add_primary(VirtIONet *n, Error *= *errp) if (err) { qemu_opts_del(n->primary_device_opts); } - if (n->primary_dev) { - if (err) { - qdev_unplug(n->primary_dev, &err); - qdev_set_id(n->primary_dev, ""); - - } - } } else { error_setg(errp, "Primary device not found"); error_append_hint(errp, "Virtio-net failover will not work. Make " --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545425; cv=none; d=zohomail.com; s=zohoarc; b=aAV4dDmWDIn6xqUpeZa2qqs/A109T9j+0XeO9kbIa/RuVkXEMPRdvppwGnU0zugUs/t0FybHZ0XeS4/RNVMo63ikPxlAo3EJ9I6R7nilSJz6GX2V2M8LpgDwdtursSSlrieStWrwi6IwmXrmBihuAVOH0PV6WGFrFJ++GL3SdBs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545425; h=Content-Type: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=MHcX9e7mD/h+Oeld8nnzKR5yrjwwB4Dy4Q0IjF0Tlvs=; b=INNa7X2baIl8i7XuIGUU9X/bVsTpOsfFcBjtxn4QW8/Pz7PjkKap31w8nwfedvPbCeAoivO/o4J9YujetkUe1r2G/PoddxV5sEOZjf/nT7Y/IvvL6HIwb2UYC6kyVci3ZWGw8q4N23I2OHOvDXXbIkfmVmKKWVTQYOQ/O3MyJXs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545425306977.9281935537616; Wed, 9 Dec 2020 12:23:45 -0800 (PST) Received: from localhost ([::1]:51558 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4jn-0000wC-Cl for importer@patchew.org; Wed, 09 Dec 2020 14:02:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52130) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tD-0002IQ-3g for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:35 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:47367) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tB-00087S-Fc for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:34 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-209-Iwk424pVMzm0BigQt6NvpQ-1; Wed, 09 Dec 2020 13:08:30 -0500 Received: by mail-wr1-f72.google.com with SMTP id w8so943317wrv.18 for ; Wed, 09 Dec 2020 10:08:30 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id p19sm5923770wrg.18.2020.12.09.10.08.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537312; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=MHcX9e7mD/h+Oeld8nnzKR5yrjwwB4Dy4Q0IjF0Tlvs=; b=Ed1lftdjrBnxnUlyC6xoZLoiIMSRH3w2Ic2x6dZTTXc/3TCXdmEvF2LwNc0E3FhMc5GUY7 hljH3QEHQXgqGlqIe48kk2CVdUfqeZH/YJX9+nt8Hl5+GDiVZGIk01GAYOCyPDBbxZDEjH LKblTkhodE4tcvPlq2dsDNFIT5xoSIk= X-MC-Unique: Iwk424pVMzm0BigQt6NvpQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=MHcX9e7mD/h+Oeld8nnzKR5yrjwwB4Dy4Q0IjF0Tlvs=; b=J1d3vWHSxWQuuX2nDa8lHZ1R9zLFKHoUUjbBs3IAPyBBRwKM7zwPR4A1ehXCCxN1kK 6IIaUz1Jc4idF3HOAG9fQsi9i9em8tck6gA0h2ZqHp8oQDcYY8C+RJMh8Fl8zU95b9Ky TFNYziwxUfHU23z1W+vZF45FYn8XI4Oia2dc3CEXXhtQriRhuW+xij1n6OTMVCPUZXwB NXzDvsmjQ1JrtkbPxKJWyfIQQsAqLzzRChoN5Fo7XtRf+988ZNsmDhvnCCikIIMvkSWW zDaIy+l+L8j/5AKBPU3ZgNKEq5h3cE+dBk/qU+xNT26oP3Zro0JTFpXWyyJoHiZssMrM 8fgA== X-Gm-Message-State: AOAM530vx7wJPNVNCVZThB5egswxTiCL51zWJTyrmU8rj43ZSrddBbmE Ywxkr7xD8nMgkI95kghCTn314oa8EupNmw0MXgbU9+i74+cDEXdBsYinrz4G4TJplucmjDP40gx 95K98ZJTZggWuE5spjJWf6sILANwme6szwW5zkQwlpoh3WjYxYIYO76J6+aYO X-Received: by 2002:a1c:f002:: with SMTP id a2mr4020292wmb.101.1607537308662; Wed, 09 Dec 2020 10:08:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJylIi1bEiX7yPWwAmgziMVLrM+IQKaOzgfVfNhG5z1JqBRDouz3EkF4oDiivlveSOkS6+/kPA== X-Received: by 2002:a1c:f002:: with SMTP id a2mr4020263wmb.101.1607537308402; Wed, 09 Dec 2020 10:08:28 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:20 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 23/65] failover: Rename bool to failover_primary_hidden Message-ID: <20201209180546.721296-24-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela You should not use passive naming variables. And once there, be able to search for them. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-9-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 3 ++- hw/net/virtio-net.c | 14 +++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index c8da637d40..ca68be759f 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -207,7 +207,8 @@ struct VirtIONet { DeviceState *primary_dev; char *primary_device_id; char *standby_id; - bool primary_should_be_hidden; + /* primary failover device is hidden*/ + bool failover_primary_hidden; bool failover; DeviceListener primary_listener; Notifier migration_state; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 3e82108d42..c221671852 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -916,7 +916,7 @@ static void virtio_net_set_features(VirtIODevice *vdev,= uint64_t features) =20 if (virtio_has_feature(features, VIRTIO_NET_F_STANDBY)) { qapi_event_send_failover_negotiated(n->netclient_name); - qatomic_set(&n->primary_should_be_hidden, false); + qatomic_set(&n->failover_primary_hidden, false); failover_add_primary(n, &err); if (err) { n->primary_dev =3D virtio_connect_failover_devices(n, &err); @@ -3127,7 +3127,7 @@ static bool failover_replug_primary(VirtIONet *n, Err= or **errp) return false; } qdev_set_parent_bus(n->primary_dev, primary_bus, &error_abort); - qatomic_set(&n->primary_should_be_hidden, false); + qatomic_set(&n->failover_primary_hidden, false); hotplug_ctrl =3D qdev_get_hotplug_handler(n->primary_dev); if (hotplug_ctrl) { hotplug_handler_pre_plug(hotplug_ctrl, n->primary_dev, &err); @@ -3148,7 +3148,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, bool should_be_hidden; Error *err =3D NULL; =20 - should_be_hidden =3D qatomic_read(&n->primary_should_be_hidden); + should_be_hidden =3D qatomic_read(&n->failover_primary_hidden); =20 if (!n->primary_dev) { n->primary_dev =3D virtio_connect_failover_devices(n, &err); @@ -3163,7 +3163,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, qdev_get_vmsd(n->primary_dev), n->primary_dev); qapi_event_send_unplug_primary(n->primary_device_id); - qatomic_set(&n->primary_should_be_hidden, true); + qatomic_set(&n->failover_primary_hidden, true); } else { warn_report("couldn't unplug primary device"); } @@ -3213,8 +3213,8 @@ static int virtio_net_primary_should_be_hidden(Device= Listener *listener, =20 n->primary_device_opts =3D device_opts; =20 - /* primary_should_be_hidden is set during feature negotiation */ - hide =3D qatomic_read(&n->primary_should_be_hidden); + /* failover_primary_hidden is set during feature negotiation */ + hide =3D qatomic_read(&n->failover_primary_hidden); =20 if (n->primary_device_dict) { g_free(n->primary_device_id); @@ -3271,7 +3271,7 @@ static void virtio_net_device_realize(DeviceState *de= v, Error **errp) if (n->failover) { n->primary_listener.should_be_hidden =3D virtio_net_primary_should_be_hidden; - qatomic_set(&n->primary_should_be_hidden, true); + qatomic_set(&n->failover_primary_hidden, true); device_listener_register(&n->primary_listener); n->migration_state.notify =3D virtio_net_migration_state_notifier; add_migration_state_change_notifier(&n->migration_state); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545450; cv=none; d=zohomail.com; s=zohoarc; b=mMg8tsKC15mP1LA1UXVslU07bj3qf8woYCrEZldxzXPmJ0zCsiczvMZmRcgQ6szk/0jkNvy+/bsYzQpAn61P25SrwlaJK+M7c2sTZKRU31dc5UE3wDcRoymnt37vrW6H8HohY1UH2YZJzXw+lQZfzoKD9h/Gvq2RVCea6zUrb4Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545450; h=Content-Type: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=e63XrFjhRraaBUyyxddNntT8UVuXnzEpnyPrT9Xi6Do=; b=aKegQSWuCksNND63MvTyiKwCypTAhKtgoQpmOrcw1j4MjThmfBi61tf1QR0dqbGyy6iE9SaiV59RwOPAjSJg/e5LKnf2zncTprKXu/1hU/y8qYVZGA9FNVM/ggJdY9eEkbT5pBzKO8IfR3dOry3S17Jgr20dZsSbo1by6hAJYv4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545450226519.7931514970704; Wed, 9 Dec 2020 12:24:10 -0800 (PST) Received: from localhost ([::1]:53852 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Km-0003XV-Pr for importer@patchew.org; Wed, 09 Dec 2020 13:37:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52154) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tL-0002KC-9m for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:43 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:59641) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tF-00088U-6z for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:43 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-574-IYHbzYXZOyqHEERIr2GSNg-1; Wed, 09 Dec 2020 13:08:34 -0500 Received: by mail-wr1-f71.google.com with SMTP id o4so936213wrw.19 for ; Wed, 09 Dec 2020 10:08:34 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id z64sm4610291wme.10.2020.12.09.10.08.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537316; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=e63XrFjhRraaBUyyxddNntT8UVuXnzEpnyPrT9Xi6Do=; b=E8lA66j7tju4fHiEFdJ+eqfsKjyS4DQquQQSbCyIbd995MgOZ0XG3iSCVLj3vh9ojzwoIE YcB2r3bBrTgqBnmqnmjPSEMlF5hjHDLYxEMg0MmNVOiUYtBFfaT+Kbv7tv9HsRYKOu1hCE rNOVJIvmHQTJpbnTcNcWRndaCjWyOdc= X-MC-Unique: IYHbzYXZOyqHEERIr2GSNg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=e63XrFjhRraaBUyyxddNntT8UVuXnzEpnyPrT9Xi6Do=; b=dXiY6f3qw8kdxvrnkfoXh4iS6Aob/msxYo2MgbBDsAb5mOV8cYk0a+uW5cX8bYI/0O EhPM6/XZiUQZX4CY2Ss4z+PoahndHt5XDDbJsO1o0vg1T+J6MGslh9oaWCrcB7qRWJ7m hrByUCG2UAHO2JV+KeXFPWrfUEVh2iMyg/tresDlwT6ObId8U3j+yJdF140+6D5o+KOj qXhGE++VR2RElnGmXJ5Ygm5Zi0WAo3b6ODLaHQCmrMNexYhD5EifuiojfJihj4grg3wa KkFPBXpcc6UEr09zfo4ex/sm01lhJoEqw4+hhi8gcsNiYZSnLXC7YcyMbapvq3w/nIVY 00Lw== X-Gm-Message-State: AOAM5308CcjCFb68zo5+moGRdHWu+rVS57aFm9knk97L8S6v/XoCZn2O eFk/5oqlyxGEP6qXh4YKg9dZq/ifIl9g1yw648xj/amQ67Jakb/SW0t7e9BRWUrFanKXgPqsuVY Tax5lQjNkQuoGDGUGvBpUBfS7+bCKnAUlhXV+lH8inESFgE9p/wRKVMzF9azP X-Received: by 2002:a5d:5401:: with SMTP id g1mr4010440wrv.93.1607537312964; Wed, 09 Dec 2020 10:08:32 -0800 (PST) X-Google-Smtp-Source: ABdhPJzTh+fOXnpFgSKeY5AEVgYbsQmU6zEVqaH5P6SWZAI7MpXNN99Q3HFMAFMvO/cFBNOw1n6Z7Q== X-Received: by 2002:a5d:5401:: with SMTP id g1mr4010414wrv.93.1607537312742; Wed, 09 Dec 2020 10:08:32 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 24/65] failover: g_strcmp0() knows how to handle NULL Message-ID: <20201209180546.721296-25-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-10-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index c221671852..e334f05352 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -818,7 +818,7 @@ static int is_my_primary(void *opaque, QemuOpts *opts, = Error **errp) int ret =3D 0; const char *standby_id =3D qemu_opt_get(opts, "failover_pair_id"); =20 - if (standby_id !=3D NULL && (g_strcmp0(standby_id, n->netclient_name) = =3D=3D 0)) { + if (g_strcmp0(standby_id, n->netclient_name) =3D=3D 0) { n->primary_device_id =3D g_strdup(opts->id); ret =3D 1; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542168; cv=none; d=zohomail.com; s=zohoarc; b=USVY7dJ7qlFeIzHcA0KJbI49+FgNspq/ExGGM/t6F+Gxz0NrEErSK+kdFpy2pmFxzhei420XJhHdn/c19Uhgy5MpJTUpwGGkq1NBPZU6UUCix0eIKy3WfbSHoGCiBLbDlXToz9FESL147YrqX1tjhn1gBK02+61RNrPrEVROXGE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542168; h=Content-Type: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=fWdn60YXLAPyXZe/D6icm9/1W6OTKOnwy4q/Y4bmQPM=; b=NJUlvhC+2rdSS8HDe1sIcwfgx1s9QmQ39xG87Ocu2xsXr11dhaXWtZAp02UYbuUVHVKIdOWL13HFStyRNYjPjaBGpL+TTrAFPtrEvXSrxxgsdEabK+sRRw155pK9HSI4U2DBN1LUZKfWpbY1f2iPi2/oncqWeRgYNdloCnSF6jw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542168726198.57805869106141; Wed, 9 Dec 2020 11:29:28 -0800 (PST) Received: from localhost ([::1]:55786 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Le-0004LQ-Rg for importer@patchew.org; Wed, 09 Dec 2020 13:37:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52186) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tM-0002MP-P9 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:44 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:57901) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tK-00089N-K3 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:44 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-470-iVmK0V2VObmpJ8csx_dHvA-1; Wed, 09 Dec 2020 13:08:38 -0500 Received: by mail-wm1-f70.google.com with SMTP id g198so638214wme.7 for ; Wed, 09 Dec 2020 10:08:38 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id s133sm4807510wmf.38.2020.12.09.10.08.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=fWdn60YXLAPyXZe/D6icm9/1W6OTKOnwy4q/Y4bmQPM=; b=h+tSq3nnHGBpEupKWCQbgaFmmUa3qvgbmkrJ6GfRjwM402JvykjEcuLbXh6kAgubcnx7Li bu1JMn+DVTP9ehfGQMLRwGWfLUMtIpA8vWiMAxluEEjZt3VemPRIR21kn3R76KNMkbtNPf bq4pritJA9yd3qCLFe1SMqw5pVbw/fI= X-MC-Unique: iVmK0V2VObmpJ8csx_dHvA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=fWdn60YXLAPyXZe/D6icm9/1W6OTKOnwy4q/Y4bmQPM=; b=M2ll7oUEs8+8F5gTpruYYYlc5fG97lwL0/onvNsANR/wQQBc6Axd4cLkiLFf8MjOcg B5MrCjsxCWGS4KeIfQQQ9vx5lGRhUb5PwZnxxve1vLQifcOgQy+ySeleRBuOLZh8NnI1 Hb9jJ3yYhnJv8uOx8et1FG1kLzg56ttYZb8KJXZe5z8LHTGokANT/qL9Ezkgx5wlkNjk gEYIOA5Zg7KLZG/HKGscvhzJh42UmGn17hQIXXagNU1dIJDNL+p9NIhKCZAzHFy8WUVG hkv0ENWw/jqZWaUqdMyCm9KMizt/vRhnV7QVjhoHMi8BwMdcXh/BheOvEc7vrGx7qWL3 OK+g== X-Gm-Message-State: AOAM5339KfwapRVbHHsTMafpkiAjShlRsguwW8zwdKwrpCWHOQ/ykGf3 gK2PozGnxdpW5/S3pqeLMQzepAtAElgqSDVly7G+D1GjGHeWbPh6845zUeZhSg36LUme2AS1jmP hQ4b4mBEKVytdZxWO71GUGqlmiqYqd8AyAdhUNE79bEU0Jv15tCjM7Zhu6aHm X-Received: by 2002:a5d:634d:: with SMTP id b13mr4150342wrw.310.1607537316654; Wed, 09 Dec 2020 10:08:36 -0800 (PST) X-Google-Smtp-Source: ABdhPJzBuSMOLVYHhLEj82JyZzL0Zoy6miMd/Cm4ISiI0OUTtU8N42OatigwH19s8DF5S4gS6Ufa4A== X-Received: by 2002:a5d:634d:: with SMTP id b13mr4150311wrw.310.1607537316430; Wed, 09 Dec 2020 10:08:36 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:32 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 25/65] failover: Remove primary_device_opts Message-ID: <20201209180546.721296-26-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela It was really only used once, in failover_add_primary(). Just search for it on global opts when it is needed. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-11-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 21 +++++---------------- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index ca68be759f..7159e6c0a0 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -202,7 +202,6 @@ struct VirtIONet { AnnounceTimer announce_timer; bool needs_vnet_hdr_swap; bool mtu_bypass_backend; - QemuOpts *primary_device_opts; QDict *primary_device_dict; DeviceState *primary_dev; char *primary_device_id; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index e334f05352..2a99b0e0f6 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -791,17 +791,17 @@ static inline uint64_t virtio_net_supported_guest_off= loads(VirtIONet *n) static void failover_add_primary(VirtIONet *n, Error **errp) { Error *err =3D NULL; + QemuOpts *opts; =20 if (n->primary_dev) { return; } =20 - n->primary_device_opts =3D qemu_opts_find(qemu_find_opts("device"), - n->primary_device_id); - if (n->primary_device_opts) { - n->primary_dev =3D qdev_device_add(n->primary_device_opts, &err); + opts =3D qemu_opts_find(qemu_find_opts("device"), n->primary_device_id= ); + if (opts) { + n->primary_dev =3D qdev_device_add(opts, &err); if (err) { - qemu_opts_del(n->primary_device_opts); + qemu_opts_del(opts); } } else { error_setg(errp, "Primary device not found"); @@ -856,7 +856,6 @@ static DeviceState *virtio_connect_failover_devices(Vir= tIONet *n, Error **errp) prim_dev =3D virtio_net_find_primary(n, &err); if (prim_dev) { n->primary_device_id =3D g_strdup(prim_dev->id); - n->primary_device_opts =3D prim_dev->opts; } else { error_propagate(errp, err); } @@ -3113,14 +3112,6 @@ static bool failover_replug_primary(VirtIONet *n, Er= ror **errp) if (!pdev->partially_hotplugged) { return true; } - if (!n->primary_device_opts) { - n->primary_device_opts =3D qemu_opts_from_qdict(qemu_find_opts("de= vice"), - n->primary_device_di= ct, - errp); - if (!n->primary_device_opts) { - return false; - } - } primary_bus =3D n->primary_dev->parent_bus; if (!primary_bus) { error_setg(errp, "virtio_net: couldn't find primary bus"); @@ -3211,8 +3202,6 @@ static int virtio_net_primary_should_be_hidden(Device= Listener *listener, goto out; } =20 - n->primary_device_opts =3D device_opts; - /* failover_primary_hidden is set during feature negotiation */ hide =3D qatomic_read(&n->failover_primary_hidden); =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543579; cv=none; d=zohomail.com; s=zohoarc; b=iEMka+khrvXEZKL0ULzCDRVssWgtSRvSGJxM7m+XPXmI2br1BaRubEhnuW26zqtGqskb6M9/ar3WnkkbYqvn3xK5hka9u48AABvSKWz6pZrQ9QLMAMUA3xMsrn3BSTg8Qh/DXGvx+yNgnMxYP+Vw7BmhFDfojg0CLKzqGzinrs4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543579; h=Content-Type: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=l0qss9gU1YSRIieMwhZYjklQs2fppW1raaUm6UbwM0U=; b=VYL1+IPH0UP0V/OI4GjIofWAqVh1xCNXJlOLE5eUUiQ62onOJ8lLsJo6zUkz6K1PkXK+WHjDUCDDTBDqZB7cPkpKIlPcWmjLEssSTEWwZ0NqHMM1x4CG2ySEG7wyrcKLfi15br7fqtLkEkn/6dFxYV9BUQoXM6IAD0QFJMFq9hw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543579707714.9695796710209; Wed, 9 Dec 2020 11:52:59 -0800 (PST) Received: from localhost ([::1]:43912 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4H8-0007m8-AO for importer@patchew.org; Wed, 09 Dec 2020 13:33:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52208) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tP-0002Ol-Cy for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:47 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:53955) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tM-0008A0-Cc for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:46 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-42-mfE3FdVVMNCVLu0FRfmAkg-1; Wed, 09 Dec 2020 13:08:41 -0500 Received: by mail-wr1-f72.google.com with SMTP id p18so946402wro.9 for ; Wed, 09 Dec 2020 10:08:41 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id i11sm4766045wrm.1.2020.12.09.10.08.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=l0qss9gU1YSRIieMwhZYjklQs2fppW1raaUm6UbwM0U=; b=Byahc4xnhe6CaOT//9Y/1kgrr+rrLkOgMQednxQgaVHLAaoNqbuR5hl6N3NDvPT6aDgXh1 RNWJRihUk8HUa99+o7/EfmcdZ1blgvJm4Pl9Yy11/UKmwqdKHLnvK4m8bb+X6SvXrT6AZH yttDJBVqp3JKB3c7sw664NBezlxUv/I= X-MC-Unique: mfE3FdVVMNCVLu0FRfmAkg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=l0qss9gU1YSRIieMwhZYjklQs2fppW1raaUm6UbwM0U=; b=PkNscYqqYjvbI2R/dj0DajrOq+XL4KAiTvht+tMi6blFda6aOztWFTUHErq65EMvm4 5B6q9UcHKJHN77MTSf/hdZV7fABe4vjdxqDWNwCG4+lCc8ezUydT9GEJA6YkZVsfo0+D O0WVcL+cE3X6llRjuVH4V/sQ3E7klDcSH9kNrfAPdaAeNUWkOm/brNuOopk4SfIjbEbj cm0rOGFaWhSad0IXYpGEbDKRNr7De+fiWEL9VykOKhwGa/DcBuv0X/qTOtUCTXF50MJF xNcwDK8bHyy7BzyPAcWo/UMUSSPvliQVTrowXWgcnvuMVIvwcfXevgmhakEVf8tQKr1I VHRw== X-Gm-Message-State: AOAM530GgfO0iIUQt4hdVOOjQgZR46W8mrdmmzFumXHWeoeLZWzzGWXh DXGgvv0vCOEhT4RQ+oVtsAL/XeGjytYSpeWqlHUTndzlelgpphoFGY7q1ZkMklffWhZ/xF/aMtQ 9xanpCc/ncSc6IcmsPcZg6+QxXmWVI2XVOrCROpHY5msvvIABmZfKeOEgJjC0 X-Received: by 2002:a1c:e342:: with SMTP id a63mr4163337wmh.64.1607537320104; Wed, 09 Dec 2020 10:08:40 -0800 (PST) X-Google-Smtp-Source: ABdhPJx/fXNpX6B+TKlOh4OBJe2YH6MysLql/V+v1dPGrxTBvyPGXYviB2tZyVZ5//jHh60IOVagVg== X-Received: by 2002:a1c:e342:: with SMTP id a63mr4163319wmh.64.1607537319880; Wed, 09 Dec 2020 10:08:39 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:37 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 26/65] failover: remove standby_id variable Message-ID: <20201209180546.721296-27-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela We can calculate it, and we only use it once anyways. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-12-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 11 +++-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index 7159e6c0a0..a055f39dd6 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -205,7 +205,6 @@ struct VirtIONet { QDict *primary_device_dict; DeviceState *primary_dev; char *primary_device_id; - char *standby_id; /* primary failover device is hidden*/ bool failover_primary_hidden; bool failover; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 2a99b0e0f6..953d5c2bc8 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3181,23 +3181,19 @@ static int virtio_net_primary_should_be_hidden(Devi= ceListener *listener, VirtIONet *n =3D container_of(listener, VirtIONet, primary_listener); bool match_found =3D false; bool hide =3D false; + const char *standby_id; =20 if (!device_opts) { return -1; } n->primary_device_dict =3D qemu_opts_to_qdict(device_opts, n->primary_device_dict); - if (n->primary_device_dict) { - g_free(n->standby_id); - n->standby_id =3D g_strdup(qdict_get_try_str(n->primary_device_dic= t, - "failover_pair_id")); - } - if (g_strcmp0(n->standby_id, n->netclient_name) =3D=3D 0) { + standby_id =3D qemu_opt_get(device_opts, "failover_pair_id"); + if (g_strcmp0(standby_id, n->netclient_name) =3D=3D 0) { match_found =3D true; } else { match_found =3D false; hide =3D false; - g_free(n->standby_id); n->primary_device_dict =3D NULL; goto out; } @@ -3400,7 +3396,6 @@ static void virtio_net_device_unrealize(DeviceState *= dev) if (n->failover) { device_listener_unregister(&n->primary_listener); g_free(n->primary_device_id); - g_free(n->standby_id); qobject_unref(n->primary_device_dict); n->primary_device_dict =3D NULL; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542059; cv=none; d=zohomail.com; s=zohoarc; b=JkOUo5TLT3IpMvOpscF9xsCXmxqZR+i2rIsYAs4y5QKCf3uAHcE9j0eQX2MH1D5IgPYuCsTTdxyxPqVYRA1PJX7CHCxb3LQj9bN9lTGsWSuOBAHw5dc3QA6a7xfzyBVQW/u400/iWyBATljrF3mCMp+WNRmfmS1esVDOtQH+1V8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542059; h=Content-Type: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=G9tzgdRg6V4aRBxWpzbtFZdDzKG4IFZ/VhXBU8iZDCI=; b=dm7oimL6B9cTafh5NAuB5mSXQE6wtV4AfKvzPf9NnBpY5JbmqdXuvL9DESLIkky7HVgYlUravLlsDNdnhTRrXLAG1oDxP7uQTDmdc4s+XONf83wfv3aSm+g5vl/nO6YhqZBdIQ2/ayUXQQsKWBBduLijo4sehrt/WjXGcPU8z+8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542059866753.248027006436; Wed, 9 Dec 2020 11:27:39 -0800 (PST) Received: from localhost ([::1]:35960 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4RJ-0007xn-Eg for importer@patchew.org; Wed, 09 Dec 2020 13:43:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52252) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tY-0002YJ-NF for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:56 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:51884) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tX-0008Cq-3O for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:08:56 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-147-O3IkJdt9MhC08qaUbpP-lw-1; Wed, 09 Dec 2020 13:08:50 -0500 Received: by mail-wr1-f69.google.com with SMTP id d26so746287wrb.1 for ; Wed, 09 Dec 2020 10:08:50 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id o74sm6107598wme.36.2020.12.09.10.08.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=G9tzgdRg6V4aRBxWpzbtFZdDzKG4IFZ/VhXBU8iZDCI=; b=In5gVuwqHH5o3uulZ1dCkmUionEyJwYwQUwPae5Kbq/ln7OqtIPz910njlOTvWYu+1Kqr8 4v1k7+n+wmcgguiFMKqFNXhwow5CmLEEy4wp75lIkI1MWGgv7M2pFj7DmZHc9A8URIbysz /n0QRvapj1wxDJq27zfqJrXDs298Xb4= X-MC-Unique: O3IkJdt9MhC08qaUbpP-lw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=G9tzgdRg6V4aRBxWpzbtFZdDzKG4IFZ/VhXBU8iZDCI=; b=NhpCg4ivTyDSX4rvjIL+YFtIhwqL6hgllcxi/Q5lQFqV6wZB7PCKdBjUqyv3BiYTWz gWg/OzWeJKqBHSE3RWJVfHseFUQY5AKfsBu1QJceEnJsqLWLn318s0unuN6C/hdv+rfq tIdoaztd/aU669ZZOihaZ2h80IagQ76h5OZH320gM47XcRpR3jf7wpnENszIfJKWFiKa wJEQLx7qqOUu/zCvc0Pwktq9Y7HV/S0nHB5ibOZFhJKkG8rtCoNhCW9W9RhOxsK8UWHn BQewAsTJ9Wbf4IrRpFcYxEBGuXaW7I62ETump05veNqaQyCgF6zsey27keQT01r/JMbe WS8Q== X-Gm-Message-State: AOAM533xiRawQtEMGspwmHb1Ld85JIkjJKqtMFKRJuskFq9wfm2FsiQT LFWrBlyB7Un3M/RgIUl8mhyEuH5PqMRGkmVJgWp1tB9mAV+JuMhnyeurPtUTDOUZRLNYZx02xpi L3IOVRlbESs4QfvfffiMFWJLuUqQvvx3Dr67/FWS6RfuJnSZRxKU7KPwwGj/l X-Received: by 2002:adf:ead1:: with SMTP id o17mr4177970wrn.396.1607537328900; Wed, 09 Dec 2020 10:08:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJzgiKFsWwz1ZQKog/J133OT4kz+pfPkug/5LtO6vuvbh+YdUdk/PXdwEysvc99u/5gPwcFf4Q== X-Received: by 2002:adf:ead1:: with SMTP id o17mr4177939wrn.396.1607537328677; Wed, 09 Dec 2020 10:08:48 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:40 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 27/65] failover: Remove primary_device_dict Message-ID: <20201209180546.721296-28-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela It was only used once. And we have there opts->id, so no need for it. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-13-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 17 ++++------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index a055f39dd6..fe353d8299 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -202,7 +202,6 @@ struct VirtIONet { AnnounceTimer announce_timer; bool needs_vnet_hdr_swap; bool mtu_bypass_backend; - QDict *primary_device_dict; DeviceState *primary_dev; char *primary_device_id; /* primary failover device is hidden*/ diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 953d5c2bc8..6e5a56a230 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3186,28 +3186,21 @@ static int virtio_net_primary_should_be_hidden(Devi= ceListener *listener, if (!device_opts) { return -1; } - n->primary_device_dict =3D qemu_opts_to_qdict(device_opts, - n->primary_device_dict); standby_id =3D qemu_opt_get(device_opts, "failover_pair_id"); if (g_strcmp0(standby_id, n->netclient_name) =3D=3D 0) { match_found =3D true; } else { match_found =3D false; hide =3D false; - n->primary_device_dict =3D NULL; goto out; } =20 /* failover_primary_hidden is set during feature negotiation */ hide =3D qatomic_read(&n->failover_primary_hidden); - - if (n->primary_device_dict) { - g_free(n->primary_device_id); - n->primary_device_id =3D g_strdup(qdict_get_try_str( - n->primary_device_dict, "id")); - if (!n->primary_device_id) { - warn_report("primary_device_id not set"); - } + g_free(n->primary_device_id); + n->primary_device_id =3D g_strdup(device_opts->id); + if (!n->primary_device_id) { + warn_report("primary_device_id not set"); } =20 out: @@ -3396,8 +3389,6 @@ static void virtio_net_device_unrealize(DeviceState *= dev) if (n->failover) { device_listener_unregister(&n->primary_listener); g_free(n->primary_device_id); - qobject_unref(n->primary_device_dict); - n->primary_device_dict =3D NULL; } =20 max_queues =3D n->multiqueue ? n->max_queues : 1; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543582; cv=none; d=zohomail.com; s=zohoarc; b=iFzf4IQ9tJ6O1lgTiAAEj/9xxKYj+Nodnh+DnQBEVLEPAOgTyoJ71cS0B2r71DZa3egaPk2fLdknMB+8q8wnWt4qI5iR8heQXVwlCFwYkrl+4CzB1+7jy3BswfJteuAfFOvFVfMiLEYDxEegJzr25SRF89m1G5JWP+hDGu8TJb8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543582; h=Content-Type: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=1HmGkQSaM8Ns8AyuR8g7tRnebE3hC78fFmzSbnpEopQ=; b=ggMMjlqbuLJs9hq4XlZaHkXt3MA9CpoXN/M4MXuq5g25hcHKtiZ+WTBhaFC5yMH0EbDTGGy5wL+JaspUvOq3UMXHiYgau2CDEb7kiF1WiDLacRgiThRBqwxUol2RIqPkluPUdi/88lrknlGF8mtmVe8JqKnbW1emX0KBz2eQ1qo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543582925323.4686244514327; Wed, 9 Dec 2020 11:53:02 -0800 (PST) Received: from localhost ([::1]:34160 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Pu-0007CI-LW for importer@patchew.org; Wed, 09 Dec 2020 13:42:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52292) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tf-0002ip-Fi for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:03 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:57518) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tc-0008Dw-8f for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:03 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-266-fveyL0Q3MIGBt_iXRLfhqw-1; Wed, 09 Dec 2020 13:08:53 -0500 Received: by mail-wr1-f69.google.com with SMTP id v1so948194wri.16 for ; Wed, 09 Dec 2020 10:08:53 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id c190sm5010008wme.19.2020.12.09.10.08.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:08:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=1HmGkQSaM8Ns8AyuR8g7tRnebE3hC78fFmzSbnpEopQ=; b=Ir3AiDokgeK75PmRxq0rllbP7HhHiD1BolYYIiwN1JsglF5t563gy41QXUrhrMoKMJtgqj DH2M22E4uTbwRKNfQjJeaG0Q+G695OX7cm1klvwsGCFuAh3fkq6rvglXnCLT6O2g6Gihty 3OColdETQ+JhCT7kcigUo8/8AMi2xrA= X-MC-Unique: fveyL0Q3MIGBt_iXRLfhqw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=1HmGkQSaM8Ns8AyuR8g7tRnebE3hC78fFmzSbnpEopQ=; b=ri7HAZKJx6edU0lza9i17CQuSoEzLnQdI2PA1UM2INchNStNTExXtuo9XzvLppcChI rKj4FcUs2uFocezF9oXOQzdZZoHnNFLQHNxGcxLaF63fXavnNKbyzOtW7I65ash/ZCZW Fzz4FdjgpuyUPg7ctRKZZ45M7BdT5VAevpqz/wWJGnO0dDiVkQ3qB1b5ogC/Mh5fnwAl HQ884WePiNhif7MvByLAYDxKmsqMw7bLNse/QAkNWE5DXaDOXAjvuV7ZMnsnUdkNTWYC MPXGSVujoJntnh5f0v8AkYdzkHzR4Ag2mUwBPKF9UV/d7fUYuJOj7Z3eGKPn8cTE+i8x p3cQ== X-Gm-Message-State: AOAM530QbY6aZVwbZadSEr6wtt+lJRTzovNJInoe4e07co8F0UkWC2l2 N8u7aNO3nf1QhQ6nTXUN/jQEGbnsRtlM8ne/Wzqxxj8jfWcJALT4DvGAP9AR3i62q9oEqvznZ34 x9aaUJES5PyadGrTPGYV4OZzBv+c8odiNWeDGTdrp5NoJnR8/r8v6nWG2NcMc X-Received: by 2002:adf:e552:: with SMTP id z18mr4230541wrm.29.1607537332296; Wed, 09 Dec 2020 10:08:52 -0800 (PST) X-Google-Smtp-Source: ABdhPJykm+WUqpTC8T9v0NnSfkVfdPzS0VtT+wBO9+K5YUYm3mCYijuKmtxs5m+nllmKgW8FKBAaig== X-Received: by 2002:adf:e552:: with SMTP id z18mr4230516wrm.29.1607537332074; Wed, 09 Dec 2020 10:08:52 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:48 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 28/65] failover: Remove memory leak Message-ID: <20201209180546.721296-29-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Two things, at this point: * n->primary_device_id has to be set, otherwise virtio_net_find_primary don't work. So we have a leak here. * it has to be exactly the same that prim_dev->id because what qdev_find_recursive() does is just compare this two values. So remove the unneeded assignment and leaky bits. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-14-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 6e5a56a230..70fa372c08 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -854,9 +854,7 @@ static DeviceState *virtio_connect_failover_devices(Vir= tIONet *n, Error **errp) Error *err =3D NULL; =20 prim_dev =3D virtio_net_find_primary(n, &err); - if (prim_dev) { - n->primary_device_id =3D g_strdup(prim_dev->id); - } else { + if (!prim_dev) { error_propagate(errp, err); } =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607540991; cv=none; d=zohomail.com; s=zohoarc; b=LlV5NsLFYmtNiM1Xtc5AgCSQqnSW9iiCxAEDTGffVOz4JOjpxhraRXKOz2SeQZBLEu8u0LZX9WxYdKXcp0TMWe7DYieH1nchn11qxBe0oJtfQZclKOnjdqN4W8nDC0g47f3d1gJ0q2EfZW/sAU5CUwsWejKgt+gxZtpfpsJ99mA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607540991; h=Content-Type: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=iPcVMbbC9/jyi7aveu8uhy5sTDIu0BY2gLP3FrJ8Aig=; b=cND8okERqiVuD6zlYontJcFemvklK2192FNQO3nIOkJ1ZoWKaRSIOdo9GyUn3712Q+6kG4OoQJdU65HSPOqGt4I75bDzleX3SPDmkSwfvlgoN3GsR5wxqakwDydc1OMzBaseXXY7RjNBV8uwQ9pC7vOCOnJGrYY+szo0Zm7nR7E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607540991657877.6549318008337; Wed, 9 Dec 2020 11:09:51 -0800 (PST) Received: from localhost ([::1]:60108 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4qQ-00053a-5I for importer@patchew.org; Wed, 09 Dec 2020 14:09:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52332) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tl-0002oF-QE for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:09 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:38268) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tk-0008GB-4Q for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:09 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-367-QkUKU9uoPVekLuHM38e4NQ-1; Wed, 09 Dec 2020 13:09:04 -0500 Received: by mail-wr1-f69.google.com with SMTP id o4so936719wrw.19 for ; Wed, 09 Dec 2020 10:09:04 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id u3sm2904957wre.54.2020.12.09.10.09.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537346; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=iPcVMbbC9/jyi7aveu8uhy5sTDIu0BY2gLP3FrJ8Aig=; b=FV+srYC/tbqz0fR3tUD00wsnwY691IyaS6KN5lS5ugQT4Np8rJU6lPM6OMBUaFIV0QkZ8O BAa4eCCSVLiH3yULaq5ofcbfLPHFLvLThCp56qcWVEHvrP/jdZempnAZKFqyTbakqIwPjq ZlBHcoF/CqvISnsPMozRWdEoedsxmMg= X-MC-Unique: QkUKU9uoPVekLuHM38e4NQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=iPcVMbbC9/jyi7aveu8uhy5sTDIu0BY2gLP3FrJ8Aig=; b=T18iZrAXpWcw8Ffj3W0e13jFN/f3cFV2DyLkAlQTymqx7assznNMXFpTlJkw0dQsBz MkBmBsUhq0OLltE57FyXfRAVS9QNYdlgPTnKjLBljv35iqG4GggRLTYjCJnEaZQbslpa 7iLpDdTZa3ZXeOeQ/LfC3NcnPo9y5dV9heKiP35NMgf89ZLAQFZcghXmhM49zU22oVq9 qSlrZeGXnU5+Cl9sdcfYwrd3jE8fMygu6NHvQBTyH7m+xPmmBBSIVE+8JwvBDwoIesru 6/nnNr0/KZFl/a87ltFK0yjTHJTWPyHZAgc1m+tVqg1kc9FRST4uP7zKMKD5Z9GIRZyG 8z/g== X-Gm-Message-State: AOAM533Tx+txdtii04jn+9u/5P4QyJGW82KVqS6ynQquSq5B7KtB3Pir 1TTUm0wDW+Z4i/Pw2blYK+LXbL+5srXRJbMfl5GOKIly8eNIgcuF5WBSBwNsEM6Z2e96MFIdRGl MEjU3YVdpl/0bRM/ugnolKbHn+OU02GPPF3A9O8f42cuZuyGq3bTpxxZuq5l4 X-Received: by 2002:adf:eb05:: with SMTP id s5mr4045633wrn.333.1607537343440; Wed, 09 Dec 2020 10:09:03 -0800 (PST) X-Google-Smtp-Source: ABdhPJzY1gMBCXr5AmYOUCX9lFqWTbHTOUCvxawm0fRC3QdVLkcQ6ZAUVAK/X7+QUq7ueCfXmGGfaA== X-Received: by 2002:adf:eb05:: with SMTP id s5mr4045617wrn.333.1607537343285; Wed, 09 Dec 2020 10:09:03 -0800 (PST) Date: Wed, 9 Dec 2020 13:08:52 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 29/65] failover: simplify virtio_net_find_primary() Message-ID: <20201209180546.721296-30-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela a - is_my_primary() never sets one error b - If we return 1, primary_device_id is always set Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-15-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 70fa372c08..881907d1bd 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -828,24 +828,12 @@ static int is_my_primary(void *opaque, QemuOpts *opts= , Error **errp) =20 static DeviceState *virtio_net_find_primary(VirtIONet *n, Error **errp) { - DeviceState *dev =3D NULL; Error *err =3D NULL; =20 - if (qemu_opts_foreach(qemu_find_opts("device"), - is_my_primary, n, &err)) { - if (err) { - error_propagate(errp, err); - return NULL; - } - if (n->primary_device_id) { - dev =3D qdev_find_recursive(sysbus_get_default(), - n->primary_device_id); - } else { - error_setg(errp, "Primary device id not found"); - return NULL; - } + if (!qemu_opts_foreach(qemu_find_opts("device"), is_my_primary, n, &er= r)) { + return NULL; } - return dev; + return qdev_find_recursive(sysbus_get_default(), n->primary_device_id); } =20 static DeviceState *virtio_connect_failover_devices(VirtIONet *n, Error **= errp) --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547543; cv=none; d=zohomail.com; s=zohoarc; b=VTi5JrGoAFbNiirW4pJr/2+kQQVTZlyaWUqGIX9CsFOU1PMYnqxO+kw+ol8BxNeMrfwFCllrxZvBX57NFMPWi3jDT25Gcj76pMHdxV7fFroPrf+eeesRdgW4cZF8yko+23BPf5HWFnkFaiLQUHCjTz3o31jmXwIwqvykjGcQYOw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547543; h=Content-Type: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=bYpqC60JxB3XDC5/IdZ1zt95y2s9bZdWYAE0X430Ko0=; b=BpsadvixvhPQ6qBNagmAuY6i9p2cwZu6emWx5iMaEPbba5hgY7VzyzKJKB8HiP99J7lgemMBJsNNtrzxIPXDIhaB0wFuw8xxP6iUmckGvrPnsftXuEZLaUCBYavRAWZhhJEvTxVbATmxlQbFFcz0h54qj8l6npiwGudgvnsVeRY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547543710186.05668607154928; Wed, 9 Dec 2020 12:59:03 -0800 (PST) Received: from localhost ([::1]:42540 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4US-0002P2-QT for importer@patchew.org; Wed, 09 Dec 2020 13:47:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52354) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3to-0002sU-0z for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:12 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:44152) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tl-0008GN-W7 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:11 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-126-E1WorT2xMgamtNxPbQV4dA-1; Wed, 09 Dec 2020 13:09:07 -0500 Received: by mail-wr1-f71.google.com with SMTP id o17so954316wra.8 for ; Wed, 09 Dec 2020 10:09:07 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id k18sm5680516wrd.45.2020.12.09.10.09.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=bYpqC60JxB3XDC5/IdZ1zt95y2s9bZdWYAE0X430Ko0=; b=HpuTicxqorhGvaqB6m3dfcoJVMQSoy5d8Vn17XBc3TeHsksRmzHAml21kL+xib8zacUDzd 7eE19WPaRyV4I/qkKux4tzfjduzOGp986HEp/IOF6cS3pA+FmpolR4kMAejWhjCxbBWbNs aK13LKdg+Me3SXznVemsbV5zaEbZHGk= X-MC-Unique: E1WorT2xMgamtNxPbQV4dA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=bYpqC60JxB3XDC5/IdZ1zt95y2s9bZdWYAE0X430Ko0=; b=q57kYvSNEAdxufSIGOpyY0Q1ftx8WWwVwNfC324bMAOW1jqWh//7TKTcPsER8ilZKP L2AXNrlbG3TwR0cydULkIaC21tWes52etoNajzsSFAd60yYs0hF5b5RlwlTYM3LT1Pgr j58T/a0A/bHTDWiMwFb13zVLwMvrokI6jU4tNRhvkJMeXm/W4tYrq0p0KlCKv2/k7fOk wK85n0Kw+FA6s162jd2adNEydBs1BidbKSk9jZ9GYDNp0DAVAlYGbPe1LPNYb1UGQdvK biZkOJpORXXrNYERiC0S5H873Gwf1hkMHB6VftCN3IrGTLbCa1K8mzfEbPVmGO5vTMh7 szCw== X-Gm-Message-State: AOAM5330Mv5twZi/Jq1LbELpwXGgKckCRzso7ovub+37/11gsdPWIjWg rW5BGiQAUMkmkr1IkyBbZEfY6ne/fqkFIu7tSlGx1spvPppYSvMHXL9nsgWNrHRNTF+7gmy8I/K fJAEWow+QKr+TF6cqSQeW6gqxZPqEg0j4Wuox9wJ0s21cx7x/YHTgon/sd5w4 X-Received: by 2002:adf:df08:: with SMTP id y8mr3983048wrl.278.1607537346397; Wed, 09 Dec 2020 10:09:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJxsMQMt4hM89rAkZMNC2ZQG3qPRKFI9++4CNyo75YG1WQcufaWCw4eY22+d7V9bteDK9+xjtg== X-Received: by 2002:adf:df08:: with SMTP id y8mr3983021wrl.278.1607537346166; Wed, 09 Dec 2020 10:09:06 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:03 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 30/65] failover: should_be_hidden() should take a bool Message-ID: <20201209180546.721296-31-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela , Jason Wang , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela We didn't use at all the -1 value, and we don't really care. It was only used for the cases when this is not the device that we are searching for. And in that case we should not hide the device. Once there, simplify virtio-Snet_primary_should_be_hidden. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-16-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/qdev-core.h | 2 +- hw/core/qdev.c | 19 +++++-------------- hw/net/virtio-net.c | 27 +++++++-------------------- 3 files changed, 13 insertions(+), 35 deletions(-) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 5e737195b5..250f4edef6 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -200,7 +200,7 @@ struct DeviceListener { * inform qdev that a device should be hidden, depending on the device * opts, for example, to hide a standby device. */ - int (*should_be_hidden)(DeviceListener *listener, QemuOpts *device_opt= s); + bool (*should_be_hidden)(DeviceListener *listener, QemuOpts *device_op= ts); QTAILQ_ENTRY(DeviceListener) link; }; =20 diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 262bca716f..8f4b8f3cc1 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -214,26 +214,17 @@ void device_listener_unregister(DeviceListener *liste= ner) =20 bool qdev_should_hide_device(QemuOpts *opts) { - int rc =3D -1; DeviceListener *listener; =20 QTAILQ_FOREACH(listener, &device_listeners, link) { - if (listener->should_be_hidden) { - /* - * should_be_hidden_will return - * 1 if device matches opts and it should be hidden - * 0 if device matches opts and should not be hidden - * -1 if device doesn't match ops - */ - rc =3D listener->should_be_hidden(listener, opts); - } - - if (rc > 0) { - break; + if (listener->should_be_hidden) { + if (listener->should_be_hidden(listener, opts)) { + return true; + } } } =20 - return rc > 0; + return false; } =20 void qdev_set_legacy_instance_id(DeviceState *dev, int alias_id, diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 881907d1bd..9f12d33da0 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3161,24 +3161,19 @@ static void virtio_net_migration_state_notifier(Not= ifier *notifier, void *data) virtio_net_handle_migration_primary(n, s); } =20 -static int virtio_net_primary_should_be_hidden(DeviceListener *listener, - QemuOpts *device_opts) +static bool virtio_net_primary_should_be_hidden(DeviceListener *listener, + QemuOpts *device_opts) { VirtIONet *n =3D container_of(listener, VirtIONet, primary_listener); - bool match_found =3D false; - bool hide =3D false; + bool hide; const char *standby_id; =20 if (!device_opts) { - return -1; + return false; } standby_id =3D qemu_opt_get(device_opts, "failover_pair_id"); - if (g_strcmp0(standby_id, n->netclient_name) =3D=3D 0) { - match_found =3D true; - } else { - match_found =3D false; - hide =3D false; - goto out; + if (g_strcmp0(standby_id, n->netclient_name) !=3D 0) { + return false; } =20 /* failover_primary_hidden is set during feature negotiation */ @@ -3188,15 +3183,7 @@ static int virtio_net_primary_should_be_hidden(Devic= eListener *listener, if (!n->primary_device_id) { warn_report("primary_device_id not set"); } - -out: - if (match_found && hide) { - return 1; - } else if (match_found && !hide) { - return 0; - } else { - return -1; - } + return hide; } =20 static void virtio_net_device_realize(DeviceState *dev, Error **errp) --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549122; cv=none; d=zohomail.com; s=zohoarc; b=DzEmGF83vm36jEA9/g+XDGykAcJU2b+zgG+x/OQQsW4ypH3ze+zKIbE4TxXPGDhldhKhjDTqeWjU7IOMfh108siuOgMYXuCZjehfNIm+rKIytfLgTKt94EImZyfeQIvB4s2xRmQaYkR1plr7OqIGc2lSuB8XDV84VBrn45AXR5k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549122; h=Content-Type: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=Sm4fkmkUZJjXxwX3FPm+Fo5gUyq1PEzc4bBPGNIoRY8=; b=NnSQqgxIO71vqcZ9AOnbU65j9NnJADPhTz5U14nFtlpM0zCdCv12MofAE6CR3bmgh1K4JxBo2q4KqI5x3B3QCxWr6GXcAXbI7mUnM5vkfSoEBmSejI/k1EhgyDJdr2vR8UYwJO2ckjTWFSsaBU8zolLN/IEwxciarA4KrBdIZKQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160754912203534.55408477232663; Wed, 9 Dec 2020 13:25:22 -0800 (PST) Received: from localhost ([::1]:50994 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Xx-0005ro-Ts for importer@patchew.org; Wed, 09 Dec 2020 13:50:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52386) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tt-00031u-Lc for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:17 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:44752) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3tr-0008JI-Kr for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:17 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-489-w0UZRN4vNVGNTcdquxbAbg-1; Wed, 09 Dec 2020 13:09:11 -0500 Received: by mail-wr1-f69.google.com with SMTP id b5so952547wrp.3 for ; Wed, 09 Dec 2020 10:09:11 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id c2sm4844068wrv.41.2020.12.09.10.09.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Sm4fkmkUZJjXxwX3FPm+Fo5gUyq1PEzc4bBPGNIoRY8=; b=GBjR8Z5QvvdvsYSzbWoiTi8YwxofslPJeToXXEEIklnbtYDErvmIQlAZL7kKBeOvW5bB0C MXUyyJpjO1FgcJX1K1LTuxR9Nz/PwDce31bJ/Nr8Azx7y+80ULK04Bu0CFrdyV7L31MU9x oNlZdLWspS4Ic1RetimOvqnwmKfX+6w= X-MC-Unique: w0UZRN4vNVGNTcdquxbAbg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Sm4fkmkUZJjXxwX3FPm+Fo5gUyq1PEzc4bBPGNIoRY8=; b=h/krl0RmL5mNQK8qDWkRPrBq6ZXpoas5w4wkyA4Jlx6Lck4h9AIdqfhfPaWhbadBUS 0A/AV3QMCxyl5CQUS/VSjw424vB30HQ5Qn4vUUzRS/wiV644XKYT1wnYRPygwvzquaJK z4DJ7wrG96smYAxJCuW5mKzhytoFyiUodTpqRg05ax6AvQ6OGS72Fl1PRYb5lGNM5q1Z Q76rWhaTvQav2Y66KHuMRlQUvdns20Va79BbB2ne6G0MjMwQbHBaocB1PZ2I7kWUvMwp /LOksllswGnKHLqZpN8Sbwvk4rHzyU0kAaZRH63HpFXOMBagvoTfXEv2LgpR9pbZmh1Q obxg== X-Gm-Message-State: AOAM530K2+aHW8p9OiI5aBlPUYnF1soQkxVDbuYysb/IQr/UQXUkNmHO EXI6d6f5W8uHXhXaMooyT30dDs9SENpilRpQU5AyHZRjkTdbTMxVA4pSiMg/L0huWIbpKMcJzWs PQicBW07rgrBibN6NLWVmnS9rC110amtyxeqTO6gLR2rKDPzh/TiZ+9hLi4to X-Received: by 2002:a1c:220b:: with SMTP id i11mr4126031wmi.8.1607537349743; Wed, 09 Dec 2020 10:09:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJw8oz0DYYwR6QHadlUevqTpDsRZ+J3gyS+XwoZN3yOhqwKOIymzyCAJ5E0sI6hbqqufvM7blw== X-Received: by 2002:a1c:220b:: with SMTP id i11mr4126012wmi.8.1607537349550; Wed, 09 Dec 2020 10:09:09 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:06 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 31/65] failover: Rename function to hide_device() Message-ID: <20201209180546.721296-32-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela , Jason Wang , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela You should not use pasive. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-17-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/qdev-core.h | 28 +++++++++++++++------------- hw/core/qdev.c | 4 ++-- hw/net/virtio-net.c | 7 +++---- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 250f4edef6..6ac86db44e 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -81,16 +81,17 @@ typedef void (*BusUnrealize)(BusState *bus); * * * # Hiding a device # - * To hide a device, a DeviceListener function should_be_hidden() needs to + * To hide a device, a DeviceListener function hide_device() needs to * be registered. - * It can be used to defer adding a device and therefore hide it from the - * guest. The handler registering to this DeviceListener can save the QOpts - * passed to it for re-using it later and must return that it wants the de= vice - * to be/remain hidden or not. When the handler function decides the device - * shall not be hidden it will be added in qdev_device_add() and - * realized as any other device. Otherwise qdev_device_add() will return e= arly - * without adding the device. The guest will not see a "hidden" device - * until it was marked don't hide and qdev_device_add called again. + * It can be used to defer adding a device and therefore hide it from + * the guest. The handler registering to this DeviceListener can save + * the QOpts passed to it for re-using it later. It must return if it + * wants the device to be hidden or visible. When the handler function + * decides the device shall be visible it will be added with + * qdev_device_add() and realized as any other device. Otherwise + * qdev_device_add() will return early without adding the device. The + * guest will not see a "hidden" device until it was marked visible + * and qdev_device_add called again. * */ struct DeviceClass { @@ -196,11 +197,12 @@ struct DeviceListener { void (*realize)(DeviceListener *listener, DeviceState *dev); void (*unrealize)(DeviceListener *listener, DeviceState *dev); /* - * This callback is called upon init of the DeviceState and allows to - * inform qdev that a device should be hidden, depending on the device - * opts, for example, to hide a standby device. + * This callback is called upon init of the DeviceState and + * informs qdev if a device should be visible or hidden. We can + * hide a failover device depending for example on the device + * opts. */ - bool (*should_be_hidden)(DeviceListener *listener, QemuOpts *device_op= ts); + bool (*hide_device)(DeviceListener *listener, QemuOpts *device_opts); QTAILQ_ENTRY(DeviceListener) link; }; =20 diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 8f4b8f3cc1..cbdff0b6c6 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -217,8 +217,8 @@ bool qdev_should_hide_device(QemuOpts *opts) DeviceListener *listener; =20 QTAILQ_FOREACH(listener, &device_listeners, link) { - if (listener->should_be_hidden) { - if (listener->should_be_hidden(listener, opts)) { + if (listener->hide_device) { + if (listener->hide_device(listener, opts)) { return true; } } diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 9f12d33da0..747614ff2a 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3161,8 +3161,8 @@ static void virtio_net_migration_state_notifier(Notif= ier *notifier, void *data) virtio_net_handle_migration_primary(n, s); } =20 -static bool virtio_net_primary_should_be_hidden(DeviceListener *listener, - QemuOpts *device_opts) +static bool failover_hide_primary_device(DeviceListener *listener, + QemuOpts *device_opts) { VirtIONet *n =3D container_of(listener, VirtIONet, primary_listener); bool hide; @@ -3220,8 +3220,7 @@ static void virtio_net_device_realize(DeviceState *de= v, Error **errp) } =20 if (n->failover) { - n->primary_listener.should_be_hidden =3D - virtio_net_primary_should_be_hidden; + n->primary_listener.hide_device =3D failover_hide_primary_device; qatomic_set(&n->failover_primary_hidden, true); device_listener_register(&n->primary_listener); n->migration_state.notify =3D virtio_net_migration_state_notifier; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542088; cv=none; d=zohomail.com; s=zohoarc; b=ntUK1JJt7/ouPjxV8FlLD++8RkJ0XuoluR08aUVyHSezQW8Y95N0yjUoxA605lHvJ28vNOc4CuIZ70silmlK2j+S0OXEYX5j3/oF26cJP3ClsHuxYlR2rhQGmsnwWFUZGWoWMq/Oi+J4oLPCdSyIVmcAUT42oIJJ7kHHKbxW8BQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542088; h=Content-Type: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=Vx7oUqEVbRuE7vFFRNc/37oqJ1xHKKB+0YZAvOhK9cM=; b=bRDw3cRJT4wspyW1+9UlvfWywX06nL0v9wGhIXgdYhj2iRpH/TDwPrQYv1funzCScKvKLJTdsj8moxfd+wCqEjQcSeEA7aYwGBpK5ZvE6+6Ds+4VeTHnJIFToc8rQzdihpQa1GSvT/at12LyV060xuxFWnudrel9sSF282sQE30= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542088767857.5471462744598; Wed, 9 Dec 2020 11:28:08 -0800 (PST) Received: from localhost ([::1]:43472 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4yN-0001yY-Dn for importer@patchew.org; Wed, 09 Dec 2020 14:17:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52420) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3tv-00034k-79 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:19 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:54958) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3ts-0008KB-K1 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:19 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-412-aVvYWMkKM9i2k9Go79ULGw-1; Wed, 09 Dec 2020 13:09:14 -0500 Received: by mail-wr1-f69.google.com with SMTP id o4so936864wrw.19 for ; Wed, 09 Dec 2020 10:09:13 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id s63sm5615194wms.18.2020.12.09.10.09.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537355; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Vx7oUqEVbRuE7vFFRNc/37oqJ1xHKKB+0YZAvOhK9cM=; b=FVhiTRORm2z+oStUMABswQTZiV9NB7eyV1j0quVWf4TDnysWMQNkafafUJIXTJRY3Ekdjc FgdAAM1rH4rr1NaOTzxagg0ZRwbOXoGnDxyy9ph8cr/5gr/tLK3fbrnQoYWs9+Rc9IbD76 q9olHFNoHroNA4wu+tYPowCmLmL8yzg= X-MC-Unique: aVvYWMkKM9i2k9Go79ULGw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Vx7oUqEVbRuE7vFFRNc/37oqJ1xHKKB+0YZAvOhK9cM=; b=iClo/yfmIGFuPtMoORintARHf/hqY5MzeygrDKCNhBKiSRa18IwBvipmcOJ3o6xcPQ R0U+spPUmqnBsBqSbteKIxMqlk+j/3YmQlUFFr4oywB2iNAJNtkpZDXdygOIDVZ15Haq +aTn+PMJrzPmMmpRN9A7tmjKEXydoW1p8ov9n3Ruvwj7BywkjcIG6B7Ed54TyE0f/Ol6 DH0XFBrJuOUZpydmQNwsGLoAd15iFbTD8LoU6sAM000lh6l/mocMlmi8EnteTZ/Dri/C 09LWMqKbW8hG1FTafugMhBfuHm3HVO8Ma0RY3eF4hOZcoBGxaZMUeuuaA/juG0+41Vv5 lPTw== X-Gm-Message-State: AOAM532z/iUa7angWv/XhKY240qU12Nyl9p4cywjnRiYbX81wnB3nrly FSqcZC16ZtVFvq1XZZ4QMUcX3np5g0lPpfO72L5ZHKE6n4wAq9L3bQU4Lg0gQ2KcH2tfI+AFxhB PCtKqP6w3wDw++vPB8Ao3TEPVRekDItBw2NB7pynwbnl8NV9kb48tat3hHqWZ X-Received: by 2002:a7b:cc12:: with SMTP id f18mr4103770wmh.110.1607537352606; Wed, 09 Dec 2020 10:09:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJwrCw5twg84xYnYK9kjBgGjoQspcvQrV8KG1n1Cga8ifGrSqrtQA5rWiZlcmhr1JaAn/vKTww== X-Received: by 2002:a7b:cc12:: with SMTP id f18mr4103746wmh.110.1607537352401; Wed, 09 Dec 2020 10:09:12 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:09 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 32/65] failover: virtio_net_connect_failover_devices() does nothing Message-ID: <20201209180546.721296-33-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela It just calls virtio_net_find_primary(), so just update the callers. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-18-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 747614ff2a..c6200b924e 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -836,19 +836,6 @@ static DeviceState *virtio_net_find_primary(VirtIONet = *n, Error **errp) return qdev_find_recursive(sysbus_get_default(), n->primary_device_id); } =20 -static DeviceState *virtio_connect_failover_devices(VirtIONet *n, Error **= errp) -{ - DeviceState *prim_dev =3D NULL; - Error *err =3D NULL; - - prim_dev =3D virtio_net_find_primary(n, &err); - if (!prim_dev) { - error_propagate(errp, err); - } - - return prim_dev; -} - static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) { VirtIONet *n =3D VIRTIO_NET(vdev); @@ -904,7 +891,7 @@ static void virtio_net_set_features(VirtIODevice *vdev,= uint64_t features) qatomic_set(&n->failover_primary_hidden, false); failover_add_primary(n, &err); if (err) { - n->primary_dev =3D virtio_connect_failover_devices(n, &err); + n->primary_dev =3D virtio_net_find_primary(n, &err); if (err) { goto out_err; } @@ -3128,7 +3115,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, should_be_hidden =3D qatomic_read(&n->failover_primary_hidden); =20 if (!n->primary_dev) { - n->primary_dev =3D virtio_connect_failover_devices(n, &err); + n->primary_dev =3D virtio_net_find_primary(n, &err); if (!n->primary_dev) { return; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542061; cv=none; d=zohomail.com; s=zohoarc; b=HQaKf8/ptU24z9xQ49+Hgp/zDDKrMDFO90vlZoIP20WIy65HyzRe+N+06PFoBWR+ulro1dSOeX1yOfzvD7bAf5lokEO/6wfdQLFqSTxquSTdGwmXzi84wY8BsYHecGcHElVbcJDYCVNKK1u5BNzJ3jfNZ5q7ofrqLVazoydKink= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542061; h=Content-Type: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=/3+qUeIA+zTj+aCO/5vf0lMi8Wl7ZhxONweA15S3yAs=; b=DTR5d89FBrhsu4UHSZHdeArL+rZYuZu+YLHCiRoMoWjPIDeFXfLMB7t2CrELU4AxwhOvVWiwQY70TpDZQZUEh29E9rpDxTtlKVcUm24jDpnMmQvWunE/3lp4vzMIJVSBcxJxCYvMsYNqqbj3NslFmyZeELW9A1Ch//RMAHvMpZs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542061028212.31490255327594; Wed, 9 Dec 2020 11:27:41 -0800 (PST) Received: from localhost ([::1]:52402 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4KJ-0002wZ-4J for importer@patchew.org; Wed, 09 Dec 2020 13:36:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52464) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3u2-0003B7-JO for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:26 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:22602) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3u0-0008LY-Rh for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:26 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-447-HRXFcSTkO_6F-GtP8_N17g-1; Wed, 09 Dec 2020 13:09:19 -0500 Received: by mail-wm1-f70.google.com with SMTP id k128so867791wme.7 for ; Wed, 09 Dec 2020 10:09:19 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id r13sm4750047wrm.25.2020.12.09.10.09.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=/3+qUeIA+zTj+aCO/5vf0lMi8Wl7ZhxONweA15S3yAs=; b=D8zXfB0If9Kv9S4075Gy2YKg2lictKBV0xVYap5N23elmt1GSzeKO+3/JoGy9ygE6qjGL6 /jUkbKt574FuGarDprp+Qr7+XotkuX6mzs2m1IYd6LQ+2cvZOKVA8fK3YIF8GUlcgqadgB LetB5n8XOxaCsfQRKdsYSFANMCbKFM8= X-MC-Unique: HRXFcSTkO_6F-GtP8_N17g-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=/3+qUeIA+zTj+aCO/5vf0lMi8Wl7ZhxONweA15S3yAs=; b=mc5Yy5nPahvjWPIfVBFBYUJX8WaUoFB8eHXodZVOcONXlpJfjx540ylWCL7L74SDaD LAv9LNMhabPPGDFJPQK/tb7Svs6WflHhf5EXlEdigNHPFD5aCrSMWdITE/KSmzcT+P2b xUKrbw15cydR5F91ku8z/3AfyNIU4LjikIF7m1WucPZ4L7hsBLujxU4p0opJqitEk6x2 VAwl+TPXu5SVLoiPfSA+90d1eKu8G4i6uYDTCa5VXUzkXkfmoMF982NmYCaMRvRjx0CZ jynqyd/ZIGhSdZE4ZsBb+Vb7/pC+C6XuO60r3y65bsIL25wK5a/PzKh3rj541NeBOqn7 L4ww== X-Gm-Message-State: AOAM531X8vroyZvVBbjCod7/Y8Xyko2ySwcyaHLPzeRDrT48HVv4K//C A8YIZB0tq3+IQeKroYrKZXrhHZHlJNEGHplOkAJIXAcab4vXZnvgfVWE91GOsj/kArAcKociG4P isRH1nKMRjKfwWUNdq9tqOLshru8NHkproYpYWgbn4AEgtUj9g781y1seY5fx X-Received: by 2002:a1c:4e17:: with SMTP id g23mr2634910wmh.101.1607537358155; Wed, 09 Dec 2020 10:09:18 -0800 (PST) X-Google-Smtp-Source: ABdhPJzArSjxY1iqyKgvrZSt+pkmbjPQFq5fZqLfztM+AXZ6gPriDOLDirqqmU94UBqxEkC5qfacAw== X-Received: by 2002:a1c:4e17:: with SMTP id g23mr2634885wmh.101.1607537357952; Wed, 09 Dec 2020 10:09:17 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:12 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 33/65] failover: Rename to failover_find_primary_device() Message-ID: <20201209180546.721296-34-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela This commit: * Rename them to failover_find_primary_devices() so - it starts with failover_ - it don't connect anything, just find the primary device * Create documentation for the function Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-19-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index c6200b924e..ff82f1017d 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -826,7 +826,13 @@ static int is_my_primary(void *opaque, QemuOpts *opts,= Error **errp) return ret; } =20 -static DeviceState *virtio_net_find_primary(VirtIONet *n, Error **errp) +/** + * Find the primary device for this failover virtio-net + * + * @n: VirtIONet device + * @errp: returns an error if this function fails + */ +static DeviceState *failover_find_primary_device(VirtIONet *n, Error **err= p) { Error *err =3D NULL; =20 @@ -891,7 +897,7 @@ static void virtio_net_set_features(VirtIODevice *vdev,= uint64_t features) qatomic_set(&n->failover_primary_hidden, false); failover_add_primary(n, &err); if (err) { - n->primary_dev =3D virtio_net_find_primary(n, &err); + n->primary_dev =3D failover_find_primary_device(n, &err); if (err) { goto out_err; } @@ -3115,7 +3121,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, should_be_hidden =3D qatomic_read(&n->failover_primary_hidden); =20 if (!n->primary_dev) { - n->primary_dev =3D virtio_net_find_primary(n, &err); + n->primary_dev =3D failover_find_primary_device(n, &err); if (!n->primary_dev) { return; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545338; cv=none; d=zohomail.com; s=zohoarc; b=G9dwver3Mt0UrQlJuvo7DIAblkgh26ttrnqjfSS2apx7s+JzfgVozYlCqKR5kD9qdmw3SprfyYWhXL9SpsGmCfKPiuDFVLBuKKGXFKuDCwQ3WDTQ/C/7MTZLO2u3c4JQyh8bpk7GEabrk7nx9P39FsXmAzYo5Ly+A568CHSxA10= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545338; h=Content-Type: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=1wb8cjVjEm8LjY+gw2guY2LG1SKAkAGDpQL6LyRDU/U=; b=f5jeSNsS5BlaP5kcXuG+66NciF2ur7E1jF6bmbvHl4/Gl7kmSWzfdjHcU6/Hgx8EVNuysXBw9whfkTPeBMcF3z4cAkHNb3icjI+1DD+Gag6n6tEoRoAV22XtOe/27NugnXAOgHCsqiz2doLTqHax1O6p/8X13drShKpydNDHO8o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545338308273.3790328013215; Wed, 9 Dec 2020 12:22:18 -0800 (PST) Received: from localhost ([::1]:44596 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Vh-0003Dz-1U for importer@patchew.org; Wed, 09 Dec 2020 13:48:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52480) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3u3-0003DE-Lm for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:27 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:42636) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3u1-0008Lr-ER for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:27 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-481-Pon7HJW3MQaK-InMdR507Q-1; Wed, 09 Dec 2020 13:09:23 -0500 Received: by mail-wm1-f72.google.com with SMTP id h68so872922wme.5 for ; Wed, 09 Dec 2020 10:09:22 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id f199sm4666574wme.15.2020.12.09.10.09.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537364; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=1wb8cjVjEm8LjY+gw2guY2LG1SKAkAGDpQL6LyRDU/U=; b=ckec8dQ76pFtpugdYt4/j2Vsn6iMDYBCSzf2X9NjNBCD9a9emIP7jEEUOcnIycS29MqIlA x297vCk+NW8rYu5e+sFaX/rzHhCmVjYV7VNKqJKa6qw7i2khWoBzqipMrsrsz3VQcy+cw9 4K++SdQwZrHl/GGVp7n6D7n4WejbmGY= X-MC-Unique: Pon7HJW3MQaK-InMdR507Q-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=1wb8cjVjEm8LjY+gw2guY2LG1SKAkAGDpQL6LyRDU/U=; b=ZoK+rlyVtuZH7Qhbv7gAckY4MWcTbEnd5JcvleYo1TxZNBRr+1AE8veG3ybMjXfZFE jek0FXG3uH5qIIQFCeSYVTfOY9g9+gRZsKeh89TZUgDcycemX01AUzr2oxdDi9DPfnY/ JH+X2CnX8kArO3RZ9Em3xrfByZfidJbOpT16rS0kFRYCr2MkFzOSyNRLSjlDb0D5hnD2 OcTD7gPbVL60dYAjrLrmZJEYGNn4EDcqUaZ8ZyM8Z5NozxsGXkp6IxDkvbs27g9e/tJU NY+vojKqHVQl76zfk6IrT/Wsvqpkj+lTaK5QIPtrQY0pslrjs2vcKv+yugwKDNxHV89j oI/A== X-Gm-Message-State: AOAM530MXrUOyFckD/V8DrASvoQARlHl3QBjucQYCCVhxo9n+vxNZKd2 wuaAhniOVMO1XHPvSpquqeVP6AyIQDo2KIHD7rigdAiPddEjLJUU178SYT3RmS7vXqTbSTptFoC oRrbeh1kwLKosLGnXQmKd9J1N+r/4HLj/tmlJv1h8PhymxWigPxVTD0Vek88v X-Received: by 2002:a5d:4ccd:: with SMTP id c13mr4104498wrt.254.1607537361015; Wed, 09 Dec 2020 10:09:21 -0800 (PST) X-Google-Smtp-Source: ABdhPJx/JvJV2T6gVrHqWZTZ4hzSWLLh83JAvUWgojIfV7zVYEB0SeBIjxvo9h2QID8e1lbl5yZjBw== X-Received: by 2002:a5d:4ccd:: with SMTP id c13mr4104475wrt.254.1607537360819; Wed, 09 Dec 2020 10:09:20 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:18 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 34/65] failover: simplify qdev_device_add() failover case Message-ID: <20201209180546.721296-35-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Paolo Bonzini , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Just put allthe logic inside the same if. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-20-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- softmmu/qdev-monitor.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index a25f5d612c..12b7540f17 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -600,7 +600,6 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **er= rp) const char *driver, *path; DeviceState *dev =3D NULL; BusState *bus =3D NULL; - bool hide; =20 driver =3D qemu_opt_get(opts, "driver"); if (!driver) { @@ -634,14 +633,16 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **= errp) return NULL; } } - hide =3D should_hide_device(opts); =20 - if ((hide || qdev_hotplug) && bus && !qbus_is_hotpluggable(bus)) { - error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); + if (should_hide_device(opts)) { + if (bus && !qbus_is_hotpluggable(bus)) { + error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); + } return NULL; } =20 - if (hide) { + if (qdev_hotplug && bus && !qbus_is_hotpluggable(bus)) { + error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); return NULL; } =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543630; cv=none; d=zohomail.com; s=zohoarc; b=GEImbwKVSZx6DrCRutFuNIwWBZ21WFSemy1EVKUCV2kD1s2+1gAzzJmSUfLND45nP0sqT8KQxLcjxrxP/WKr5GnRL5oCtIcYvtU9ksbO5srvpvx/Ooh851Rpdr249rXznp3Oak4XBnbeadJBMPKBX1cUqU0P8iSoU7RNZ6oDIos= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543630; h=Content-Type: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=3qrODYIJDbQpe00bcVbjfhxWWnd2OTx6N13MJEKnaIo=; b=i5vLuLf1fScgBa4Af4jU+HuGZtxnnSr743X+MDKJcldkyqDsIBBV6BQi1So+SPjGndoPIlQk3mEqH4o5LTqWwIBMGx7iRtkFZzroRUDj9cFJltc+IzgH9puajs0voSPJ9mHjk/hIyTpDBe0VOr/M6fQSHJV8g2P88cSCbgrfE/U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543630806475.9294755678188; Wed, 9 Dec 2020 11:53:50 -0800 (PST) Received: from localhost ([::1]:52062 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn52L-0005pi-1Q for importer@patchew.org; Wed, 09 Dec 2020 14:22:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3u9-0003Ny-6T for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:33 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:37843) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3u6-0008O9-5l for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:32 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-462-AHIM68YpOficA3XysELy2g-1; Wed, 09 Dec 2020 13:09:27 -0500 Received: by mail-wr1-f71.google.com with SMTP id d2so961011wrr.5 for ; Wed, 09 Dec 2020 10:09:26 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id a13sm4996418wrt.96.2020.12.09.10.09.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537369; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=3qrODYIJDbQpe00bcVbjfhxWWnd2OTx6N13MJEKnaIo=; b=AVXUsLSm9WAhehz6DYIJBrg2pagot/MeUQq9nxPekx4ML3RbNpJz/FfiIUqaQZNLMT0M5b 2uyXKrsqnFQIvpoCfhYEXLgK0/kdfncLCb1BnDFORsVfhSJsY6vUW6dSMpnbEVs5H1aEv+ bxspyVhtcGhkGmmjwQhmkCi/BWpI7iQ= X-MC-Unique: AHIM68YpOficA3XysELy2g-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=3qrODYIJDbQpe00bcVbjfhxWWnd2OTx6N13MJEKnaIo=; b=jVa7SZw1tt8ZFHn7zJX8ZRcY97jOSqzaJCMwFISlklPU/ylrT3wSq2BxgFQA0t+lLV 5ycYm8umubXYEx7lpALdjjxAZ9X5E/xx0YafZHvpqx60UNl7cK/pyqxiDOvwfI3UAzn3 KvG/M7eStF38twhqfdtlGOvstTkt+0+shXXS2fSWKsMC2TC+pWpmJD+JMcGlSPPJ3/LR SjBCGrLd5yEoPWAU6eQnw5ZvUwzRrOKMrKYcGJb3sbrjo8ntFQtGJrr3qX3t6Rq5MeO3 9c8NbgBQTUKF5TYwloYHERKilyfA+STx/+fkPjxPwc9iktwmg8D3nILEC9ojLv0gheJW ZWvQ== X-Gm-Message-State: AOAM533IcJUlUYdfh4lRJvdkXk3c37AVbvuw2qxiO/ZwBx/GMwbomo4O OJMwVWMPKzRK1ctZD3qrXtLEECyXvP44d7zcTN/kBeTA+FatcTAleZi2zfDuo1UljufN056mfAr Ppm47r1r0KkwTzLkfSFPsqDmL2ZSoxh+JMjrNkJQMZKRHd9+id3V8nQF9y+j0 X-Received: by 2002:a1c:61c3:: with SMTP id v186mr4083687wmb.146.1607537364642; Wed, 09 Dec 2020 10:09:24 -0800 (PST) X-Google-Smtp-Source: ABdhPJzCUqKQurbgMvLtCBaiY3hAVHgK2igK8S0Si9aLa/1cOC2INboZMczacPUvMFAyAgC4+uFSgw== X-Received: by 2002:a1c:61c3:: with SMTP id v186mr4083658wmb.146.1607537364374; Wed, 09 Dec 2020 10:09:24 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:20 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 35/65] failover: simplify qdev_device_add() Message-ID: <20201209180546.721296-36-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Paolo Bonzini , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela We don't need to walk the opts by hand. qmp_opt_get() already does that. And then we can remove the functions that did that walk. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-21-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- softmmu/qdev-monitor.c | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index 12b7540f17..0e10f0466f 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -572,28 +572,6 @@ void qdev_set_id(DeviceState *dev, const char *id) } } =20 -static int is_failover_device(void *opaque, const char *name, const char *= value, - Error **errp) -{ - if (strcmp(name, "failover_pair_id") =3D=3D 0) { - QemuOpts *opts =3D opaque; - - if (qdev_should_hide_device(opts)) { - return 1; - } - } - - return 0; -} - -static bool should_hide_device(QemuOpts *opts) -{ - if (qemu_opt_foreach(opts, is_failover_device, opts, NULL) =3D=3D 0) { - return false; - } - return true; -} - DeviceState *qdev_device_add(QemuOpts *opts, Error **errp) { DeviceClass *dc; @@ -634,11 +612,13 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **= errp) } } =20 - if (should_hide_device(opts)) { - if (bus && !qbus_is_hotpluggable(bus)) { - error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); + if (qemu_opt_get(opts, "failover_pair_id")) { + if (qdev_should_hide_device(opts)) { + if (bus && !qbus_is_hotpluggable(bus)) { + error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); + } + return NULL; } - return NULL; } =20 if (qdev_hotplug && bus && !qbus_is_hotpluggable(bus)) { --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545588; cv=none; d=zohomail.com; s=zohoarc; b=cDdY6Ld6xFbagFEUD6gI/wj0gmPWxnmJ1+Y5ib5zmWufkVWs2R24mlFlU+fQaeQcfRZpXwH9VRFHb6Jt1dsMORw6HT682XuKBuL3dASQ5habuIeyNbf+K1BLrfggclMuX7fLeG2PP8CQ7z7eZ49lYmGCQ3NFjTxyjATig+yjMsU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545588; h=Content-Type: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=5ZgbqeJXgCxK3O2GUnfhbym96kBp64mbV0i3XbWKY/U=; b=L4/Qk1DaCZ7YiXpGozx6zJBerf4+Kst6se24yyF4YdSXGpS8uX4Eekptu4LJ+NDDqLQ4S4+dfkS6G6FNvd9k+7t5Af/3f2CX+5XJqabd9KonsNdco5dE9AAzDul8mj2UQ0nZDtZ2S3UXIt8wRFd1mhDItVXAtflokYXSn+PEIe4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545588547245.9445496215102; Wed, 9 Dec 2020 12:26:28 -0800 (PST) Received: from localhost ([::1]:59788 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4bg-00016t-OZ for importer@patchew.org; Wed, 09 Dec 2020 13:54:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52566) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3u9-0003Ow-Of for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:34 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:49310) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3u7-0008Od-VX for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:33 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-127-22oxYIeOP9q6ChBM9xdUig-1; Wed, 09 Dec 2020 13:09:29 -0500 Received: by mail-wm1-f69.google.com with SMTP id b124so175383wmh.0 for ; Wed, 09 Dec 2020 10:09:29 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id l8sm5025057wmf.35.2020.12.09.10.09.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537371; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=5ZgbqeJXgCxK3O2GUnfhbym96kBp64mbV0i3XbWKY/U=; b=bQlDlLG4D3dMQTvUOpUm/qf7cTEdM9+Oc+K3uqqHHXR+Pi8M11CERBiCdf/46EiAplG9j/ Pw1Z/tu+3K8Q+EWsRzhrhRLoJgFFIiLW6cKD8anSYfGrrIwzG0sZCqdof4SfK8nTC8R2tQ PK7+HzMlyw+sBTjlSMIHjNtVvTasFB8= X-MC-Unique: 22oxYIeOP9q6ChBM9xdUig-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=5ZgbqeJXgCxK3O2GUnfhbym96kBp64mbV0i3XbWKY/U=; b=ov4Mer4+qNWyqUrE9M7wWIolL27cSYKaf9qsYxTVv2PBJWemungw09rcZxLyJBXCLn b8GrKiA1TRTL/Ca774poszeZ+T4cPHqWTU4LjtIZndCfI66Qi5xmiiX+XD4Ecq3kjc45 UG7ge7MWFn6MmoQmFMlFWoNfR0JVppPZ0+Xfif3peJkAKfFzO5Zl9M9SdixyjjVdkmWj rqc0OQxLhMXGyjqBicShO2sKrPBoGMZe3l4oeGMnkGJI0LtwzK75yT/nJtkq6ma/yq7U 0LlpzHQyBZrmJBF91R+1FzOIPNrEjqaATiM24zc7v/1okHjVwlL/L0cIWolpfU1fMEq0 OmvQ== X-Gm-Message-State: AOAM530krlWhBnXt4VV+/Qsrh80n/C2vBAGov7qjivGHV6ONyORj6RuH /mYvws8gNvQoHoftIdSew2O4hkaCrP5clHkZh2U59MqVK66q3VkhekQA7B5DrCNlX67AMrEeNEU sBf9Z8sPrQrO3a5CT3KxXhhc6BkkfKAQscmhQyI5H3UHzhCHwwsbjZTzTa4xL X-Received: by 2002:a1c:2b46:: with SMTP id r67mr4060911wmr.162.1607537368072; Wed, 09 Dec 2020 10:09:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJw6BS2K8cNfaA5jveBNxKvqfrZuejeuM+DC8cUdfWiEuHj16PKfkOwSrWT9Tkart2oBrhiOsg== X-Received: by 2002:a1c:2b46:: with SMTP id r67mr4060899wmr.162.1607537367915; Wed, 09 Dec 2020 10:09:27 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:24 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 36/65] failover: make sure that id always exist Message-ID: <20201209180546.721296-37-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= , Eduardo Habkost , Juan Quintela , Jason Wang , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela We check that it exist at device creation time, so we don't have to check anywhere else. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-22-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 3 --- softmmu/qdev-monitor.c | 4 ++++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index ff82f1017d..c708c03cf6 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3173,9 +3173,6 @@ static bool failover_hide_primary_device(DeviceListen= er *listener, hide =3D qatomic_read(&n->failover_primary_hidden); g_free(n->primary_device_id); n->primary_device_id =3D g_strdup(device_opts->id); - if (!n->primary_device_id) { - warn_report("primary_device_id not set"); - } return hide; } =20 diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index 0e10f0466f..301089eaea 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -613,6 +613,10 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **e= rrp) } =20 if (qemu_opt_get(opts, "failover_pair_id")) { + if (!opts->id) { + error_setg(errp, "Device with failover_pair_id don't have id"); + return NULL; + } if (qdev_should_hide_device(opts)) { if (bus && !qbus_is_hotpluggable(bus)) { error_setg(errp, QERR_BUS_NO_HOTPLUG, bus->name); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542215; cv=none; d=zohomail.com; s=zohoarc; b=MtYzby3Y2V+PeZazhoqCccLh0FV74GeDq+iECt5Jts43X8CSRFPTPS2cCQi7dyDoKbFg/W6ZZWfbEQ9umZVIJsxuO4/h9CfYhKZ51RX1kKil2kjrKgRhOlyw1mG8hxylz+u+GFRUpY87XQAcZt9suhXH/0E1UwqrlM3i27QjW3Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542215; h=Content-Type: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=fuBQFRVVX5MCCmBwSGkeXs98mE92CY1nTcQhJRlOYBs=; b=YeGQYCAvhrXVY3whBhICzwvKTPDKlYt3IplmKqc3I7kmOLQuMaOSFdezsJh4YLzQ0DaNZ/EilIXRIPrNd8VLCkMIoUum5KlVVgEftlxWUvFwzmeu5mkB3qwGlmXsbr062nGxvi8udOEKjE2kyvDQOSo9/2zF1QHpGd7DgkYA9r8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542215464435.50585312325563; Wed, 9 Dec 2020 11:30:15 -0800 (PST) Received: from localhost ([::1]:44700 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn5AB-0006Ln-DY for importer@patchew.org; Wed, 09 Dec 2020 14:30:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53820) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3xZ-0006IC-PR for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:13:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:45302) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3xX-0001BT-Cp for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:13:05 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-359-VQhC8_oDNy-RsobirYuxxg-1; Wed, 09 Dec 2020 13:09:32 -0500 Received: by mail-wr1-f72.google.com with SMTP id d26so747017wrb.1 for ; Wed, 09 Dec 2020 10:09:31 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id r128sm5156547wma.5.2020.12.09.10.09.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537582; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=fuBQFRVVX5MCCmBwSGkeXs98mE92CY1nTcQhJRlOYBs=; b=CoMLWyP5P/HtwbL0LGaSGzTvyTBMnYxeNIs0Zhw/kBo09IFrz9YB4zFgM9FCQa5ngbCTk1 131zX0/Zc4zZAMDVFprYZogWvYeci8Ka9bOOevuIzv7upnJiXVPwZG6LiuDCz6jnGs6JGL vXuOdxJFnGHXcrd6BxXySdni+1qNv3s= X-MC-Unique: VQhC8_oDNy-RsobirYuxxg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=fuBQFRVVX5MCCmBwSGkeXs98mE92CY1nTcQhJRlOYBs=; b=GvHS5FhhhlDdNnCn+MFRGsMcyFTlc488Ygrew6zkHeMM8a6SijB87EEdHU45VxSM1U 5BtvyJitG4u5BV8eYTRogxtcT1ifBHUV6b4lYwAsgHAPNlI0Lb3udNNVV0AjQ/ksMzK1 zZZdo89QGGpOZjM+Yq7eZAvxRJQ396TQSBrWi79Xbd07MuIFf2ZzeoEgSc0cDNfXDi3h QoPMK5SPggXDruo6IZJNZaGr62U3Wlt580ojHcr9bHRc9RA3BcbDzMmo1O8rYaWm9QbO gZgTllXOdj0zZeIJQUF29ClWo1uxLJyAGLKXXp0qhKgeyQTPpKQzSKpArZgIuquYb0dO ETbQ== X-Gm-Message-State: AOAM530b2rajyHuFDQwSSVrfa8iA7360thlr2eOIsDQeWtttUds2uyLA SS9dHY5Y7loezDACg7aUYOdYgEoMkexP4Yn5O3wFrHXfRXXjgHO05FHJoUcVBF74YoE3tnk7sl+ KEjsKQlgn4RjvZPGZctDitO/S+dhcr1YiWs9iQ9uTiB9W++MlhgwMHQKDdfqc X-Received: by 2002:a05:6000:12c3:: with SMTP id l3mr4090594wrx.112.1607537370685; Wed, 09 Dec 2020 10:09:30 -0800 (PST) X-Google-Smtp-Source: ABdhPJxQicQgm1lClpphHV6GFbrPzTBtkL9be29xcEAizrnNbzPsfKOMFt7hhMKCp00Y8PTHipA6uw== X-Received: by 2002:a05:6000:12c3:: with SMTP id l3mr4090570wrx.112.1607537370478; Wed, 09 Dec 2020 10:09:30 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 37/65] failover: remove failover_find_primary_device() error parameter Message-ID: <20201209180546.721296-38-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela It can never give one error. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-23-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index c708c03cf6..b994796734 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -832,7 +832,7 @@ static int is_my_primary(void *opaque, QemuOpts *opts, = Error **errp) * @n: VirtIONet device * @errp: returns an error if this function fails */ -static DeviceState *failover_find_primary_device(VirtIONet *n, Error **err= p) +static DeviceState *failover_find_primary_device(VirtIONet *n) { Error *err =3D NULL; =20 @@ -897,10 +897,7 @@ static void virtio_net_set_features(VirtIODevice *vdev= , uint64_t features) qatomic_set(&n->failover_primary_hidden, false); failover_add_primary(n, &err); if (err) { - n->primary_dev =3D failover_find_primary_device(n, &err); - if (err) { - goto out_err; - } + n->primary_dev =3D failover_find_primary_device(n); failover_add_primary(n, &err); if (err) { goto out_err; @@ -3121,7 +3118,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, should_be_hidden =3D qatomic_read(&n->failover_primary_hidden); =20 if (!n->primary_dev) { - n->primary_dev =3D failover_find_primary_device(n, &err); + n->primary_dev =3D failover_find_primary_device(n); if (!n->primary_dev) { return; } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547481; cv=none; d=zohomail.com; s=zohoarc; b=UszIzk37shGY8KFCMDSO8zv75+1CxfK6QUqt1fM+ENO+12p9UDLmeCtRwgH3ePYyX/J7DBmh+S21WJ5cWBAMz7zyiWAjKRYUKRbjB2VrbYGScb/Ix3ZSt4eEX5LqhS4qfXn1VaotYe7rz1jqek5EqtbZC/12aLcVMxtV79nH89I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547481; h=Content-Type: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=4y8ENnJ8kq53lYL0I8MfUcoNrhixD3RXbbagN88+yWw=; b=V6VWsog9MGM0WhFXozFzucfHPchBP0XLvAWlm7oY8QTnIEha+tqSe3xxIkQlkp2ceP89osQLJjpOIRYIPRzotkolkcbrhY/7Gun4Fhm/KQgepu4O1QtU7k1sYXeALnu+VLFgOPMtbqZatI+0Xr/dnc8t0Yhgfw5n/NTsYD6SgjA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547481071779.7847337614102; Wed, 9 Dec 2020 12:58:01 -0800 (PST) Received: from localhost ([::1]:32782 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4P0-0006eM-7u for importer@patchew.org; Wed, 09 Dec 2020 13:41:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52610) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uI-0003UY-IS for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:42 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:37064) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uF-0008QO-4j for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:42 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-162-6ye5-IX2OUyr0X_5ABgKCA-1; Wed, 09 Dec 2020 13:09:36 -0500 Received: by mail-wr1-f72.google.com with SMTP id o4so937262wrw.19 for ; Wed, 09 Dec 2020 10:09:36 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id h13sm5115547wrm.28.2020.12.09.10.09.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=4y8ENnJ8kq53lYL0I8MfUcoNrhixD3RXbbagN88+yWw=; b=cHKYLfA7i4LnB9pZTujElvygjDVyx/8ltMEaxDxKyKZRvKoLkgHk5JmIOZEFZbbPMp61XZ rWt6/NbZtWxdl5OtCzw4zB6hARBjzxEKyEZi/5djUg7LkJZo7d6BpimJlDWls8p0g0c7+U u4c3iCxiu5RiiVFpasBFMpQlpksiVBM= X-MC-Unique: 6ye5-IX2OUyr0X_5ABgKCA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=4y8ENnJ8kq53lYL0I8MfUcoNrhixD3RXbbagN88+yWw=; b=Q++T6ejH4el9V56R8GHj45+biKchMgBJTcIN6adWDdLKvYwVl4DGmq52kg49d/QpcY +6M9Bq9ffXjNZOAR45WIr/H+jLjxaVvu24OXJiw35rcD1LvKSxOnJldsAYK0nh1yid+y DCIT9OZnIDWlUmLtYxut5cJ4cG/JsZzlY78/4n5zMtNEmX0I76o2DUoTXxrZ8FnzLxx/ 7H0gDGPOk5zHWuqcWbeV/GW6xQOy4eB80Plh4WZDUCkXoAVZrMYKmCQCiMuPgOPVf2Ly zG2kmg231EVLzFuY35AN9iCnY5dcRGECtqMCU9PsAFPMoecyfW4Pu7kvbsS24mS3FXW0 /tEA== X-Gm-Message-State: AOAM530GqMSKQAhtV6Ox70EfFfmi9HnoiwjFgCeDJmHfBq6TSMAqGOD+ kJiSbn9HN36F9DG/RGlC5pIeCqu+Flsz9aSaQI/ygAgJSUpn6t9jdZTR5v/eZWKpQRAEqDviH30 xWPYNFdwE9lFd7aj4OAk6rbHqaNiLv/7dOeyoSthHfwPO/ZFXWS+19fnkgGBP X-Received: by 2002:a1c:186:: with SMTP id 128mr4081733wmb.176.1607537375220; Wed, 09 Dec 2020 10:09:35 -0800 (PST) X-Google-Smtp-Source: ABdhPJwmzqaKiK/XlTePwENG5zSyJ6w1b3B/JoB7s8pf/dIsiH1xXd+e7Z6xtXkTuFEtwkvlLuHPJQ== X-Received: by 2002:a1c:186:: with SMTP id 128mr4081705wmb.176.1607537375001; Wed, 09 Dec 2020 10:09:35 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:30 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 38/65] failover: split failover_find_primary_device_id() Message-ID: <20201209180546.721296-39-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela So we can calculate the device id when we need it. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-24-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 63 +++++++++++++++++++++++++++++++++------------ 1 file changed, 47 insertions(+), 16 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index b994796734..2c502c13fd 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -788,6 +788,49 @@ static inline uint64_t virtio_net_supported_guest_offl= oads(VirtIONet *n) return virtio_net_guest_offloads_by_features(vdev->guest_features); } =20 +typedef struct { + VirtIONet *n; + char *id; +} FailoverId; + +/** + * Set the id of the failover primary device + * + * @opaque: FailoverId to setup + * @opts: opts for device we are handling + * @errp: returns an error if this function fails + */ +static int failover_set_primary(void *opaque, QemuOpts *opts, Error **errp) +{ + FailoverId *fid =3D opaque; + const char *standby_id =3D qemu_opt_get(opts, "failover_pair_id"); + + if (g_strcmp0(standby_id, fid->n->netclient_name) =3D=3D 0) { + fid->id =3D g_strdup(opts->id); + return 1; + } + + return 0; +} + +/** + * Find the primary device id for this failover virtio-net + * + * @n: VirtIONet device + * @errp: returns an error if this function fails + */ +static char *failover_find_primary_device_id(VirtIONet *n) +{ + Error *err =3D NULL; + FailoverId fid; + + if (!qemu_opts_foreach(qemu_find_opts("device"), + failover_set_primary, &fid, &err)) { + return NULL; + } + return fid.id; +} + static void failover_add_primary(VirtIONet *n, Error **errp) { Error *err =3D NULL; @@ -812,20 +855,6 @@ static void failover_add_primary(VirtIONet *n, Error *= *errp) error_propagate(errp, err); } =20 -static int is_my_primary(void *opaque, QemuOpts *opts, Error **errp) -{ - VirtIONet *n =3D opaque; - int ret =3D 0; - const char *standby_id =3D qemu_opt_get(opts, "failover_pair_id"); - - if (g_strcmp0(standby_id, n->netclient_name) =3D=3D 0) { - n->primary_device_id =3D g_strdup(opts->id); - ret =3D 1; - } - - return ret; -} - /** * Find the primary device for this failover virtio-net * @@ -834,11 +863,13 @@ static int is_my_primary(void *opaque, QemuOpts *opts= , Error **errp) */ static DeviceState *failover_find_primary_device(VirtIONet *n) { - Error *err =3D NULL; + char *id =3D failover_find_primary_device_id(n); =20 - if (!qemu_opts_foreach(qemu_find_opts("device"), is_my_primary, n, &er= r)) { + if (!id) { return NULL; } + n->primary_device_id =3D g_strdup(id); + return qdev_find_recursive(sysbus_get_default(), n->primary_device_id); } =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549264; cv=none; d=zohomail.com; s=zohoarc; b=S2htYwwLF5Wovf7OwI2Nn7VnVIDi/hDbm25mWIk+ytI4pU6zbosvISTmu49rRX9KiVHW6y3msplfk0rE/poHFbo58Yj0YSdVdmbSUB5Fw9qFszrdUoyF7cGDXa2nKVn0InAm2x6KOjEHVKwuvV9nAdsKpUE54T6v6LN2FIJVBU8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549264; h=Content-Type: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=2BMOZfDtjZu0tqqgMznt2cenCUknJhSFUF1EIHeSHPI=; b=nW3GegBwxfuRLMRaiQhJmLeiUpaIYGwy5K/K0RVJ6iDKTI292MMMvLvXpQTOtqx0fzpB59d6sUll0xdUbHgDfWZy47k4SaoVWGe2sfkkqKdc5/sLpJMLw1YQaADz913p2hQ4trIrhA0JF3xc9QGTu8FaLUcYs/JF7F+fhogqQL4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549264604715.036818531614; Wed, 9 Dec 2020 13:27:44 -0800 (PST) Received: from localhost ([::1]:60688 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn555-00014q-QQ for importer@patchew.org; Wed, 09 Dec 2020 14:24:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52690) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uR-0003ZX-MA for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:51 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:59318) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uK-0008SV-26 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:51 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-496-QsnCBxWlMJursKtsr7EN-A-1; Wed, 09 Dec 2020 13:09:41 -0500 Received: by mail-wr1-f72.google.com with SMTP id o12so943849wrq.13 for ; Wed, 09 Dec 2020 10:09:40 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id j15sm4808264wrr.85.2020.12.09.10.09.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537383; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=2BMOZfDtjZu0tqqgMznt2cenCUknJhSFUF1EIHeSHPI=; b=Esy1os/a7fb675YLAt42ewBgArOhh6IIsPst8OQ+s3ylW9OASCzf9EEJTCQqYErSZ2QzzL zw0OKMRVDShj+1H8ELPBAI38YGvnFkpacrhKyakrCcImnoUILNRRAyXGQpOEsMKNHgGKU+ RbMQRMbwxgkyL8OMphIaYy8SnLobbec= X-MC-Unique: QsnCBxWlMJursKtsr7EN-A-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=2BMOZfDtjZu0tqqgMznt2cenCUknJhSFUF1EIHeSHPI=; b=VWf6vhd+dKFSzqYHqjRDOkGbiI38bKnEbkMiLOszJmmi8Y1/1NVsV7R5t8lPt21QUY BBbEW/QFcny5kfR/oOXYBfFmACuQ3VkMpdpSRbqyuMwaZnA4yKhWmJfeLaKubdBGg48n GmQtngm1wjd39b3gArhzsHguHqPsq90x0MiyCBl74X3jqRtYGc6a0S4fmN6WsoDmLBxn n4nOvTGMwkRjrifARDkMzoB3s2OdMTmy7wDJBh7rcZeb29wQ4kQ64NAMOB1vGqnidfhF YmwsGHkQ67q2AmncwOkESoH8Rcj9/VqSy/WFlcfZGFz+JtVoIeBvDnzV+3lyHmXZbp0N I4Vg== X-Gm-Message-State: AOAM531B28wxm9dcpkEj1d+hkJK1UxhhfB7vgpgRcw2Fz/QJI9yfJVsP jPnQnBL30XZ0dHi8CMp0nywIJSs1RBh6AL4QeChz2izWxWOfdz7AXNvmDcsaPQWw3uEkAV8fIVV ktUKrVVBXAqKiUgQdNnw4UbMV7EtF8yoNQJ5uOjzyEUMig3CGZpiTKywIjPF9 X-Received: by 2002:a5d:4cd1:: with SMTP id c17mr4038660wrt.49.1607537379606; Wed, 09 Dec 2020 10:09:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJxmJ80VwhO5Ked1HdI4bbASOtA+7wlMtEsB6GAyJaVKwwQ3Ln00fHk8ERx8vzNKYVUWJjFlFw== X-Received: by 2002:a5d:4cd1:: with SMTP id c17mr4038635wrt.49.1607537379393; Wed, 09 Dec 2020 10:09:39 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:35 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 39/65] failover: We don't need to cache primary_device_id anymore Message-ID: <20201209180546.721296-40-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-25-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 20 ++++++++++---------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index fe353d8299..efef64e02f 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -203,7 +203,6 @@ struct VirtIONet { bool needs_vnet_hdr_swap; bool mtu_bypass_backend; DeviceState *primary_dev; - char *primary_device_id; /* primary failover device is hidden*/ bool failover_primary_hidden; bool failover; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 2c502c13fd..746ed3fb71 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -824,6 +824,7 @@ static char *failover_find_primary_device_id(VirtIONet = *n) Error *err =3D NULL; FailoverId fid; =20 + fid.n =3D n; if (!qemu_opts_foreach(qemu_find_opts("device"), failover_set_primary, &fid, &err)) { return NULL; @@ -835,12 +836,17 @@ static void failover_add_primary(VirtIONet *n, Error = **errp) { Error *err =3D NULL; QemuOpts *opts; + char *id; =20 if (n->primary_dev) { return; } =20 - opts =3D qemu_opts_find(qemu_find_opts("device"), n->primary_device_id= ); + id =3D failover_find_primary_device_id(n); + if (!id) { + return; + } + opts =3D qemu_opts_find(qemu_find_opts("device"), id); if (opts) { n->primary_dev =3D qdev_device_add(opts, &err); if (err) { @@ -868,9 +874,8 @@ static DeviceState *failover_find_primary_device(VirtIO= Net *n) if (!id) { return NULL; } - n->primary_device_id =3D g_strdup(id); =20 - return qdev_find_recursive(sysbus_get_default(), n->primary_device_id); + return qdev_find_recursive(sysbus_get_default(), id); } =20 static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) @@ -3160,7 +3165,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, vmstate_unregister(VMSTATE_IF(n->primary_dev), qdev_get_vmsd(n->primary_dev), n->primary_dev); - qapi_event_send_unplug_primary(n->primary_device_id); + qapi_event_send_unplug_primary(n->primary_dev->id); qatomic_set(&n->failover_primary_hidden, true); } else { warn_report("couldn't unplug primary device"); @@ -3186,7 +3191,6 @@ static bool failover_hide_primary_device(DeviceListen= er *listener, QemuOpts *device_opts) { VirtIONet *n =3D container_of(listener, VirtIONet, primary_listener); - bool hide; const char *standby_id; =20 if (!device_opts) { @@ -3198,10 +3202,7 @@ static bool failover_hide_primary_device(DeviceListe= ner *listener, } =20 /* failover_primary_hidden is set during feature negotiation */ - hide =3D qatomic_read(&n->failover_primary_hidden); - g_free(n->primary_device_id); - n->primary_device_id =3D g_strdup(device_opts->id); - return hide; + return qatomic_read(&n->failover_primary_hidden); } =20 static void virtio_net_device_realize(DeviceState *dev, Error **errp) @@ -3378,7 +3379,6 @@ static void virtio_net_device_unrealize(DeviceState *= dev) =20 if (n->failover) { device_listener_unregister(&n->primary_listener); - g_free(n->primary_device_id); } =20 max_queues =3D n->multiqueue ? n->max_queues : 1; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549112; cv=none; d=zohomail.com; s=zohoarc; b=FdRTPH5+ilIaQbyj0okfu5IsjVjJtXl2WMdXMUWKmebZpvKIisAmqZ0YUx6oZfd17uQJU9qhTODgdTs5UhkeRFnmm2cqRPYT9koW1oCLcwcuZeOqBmMhIXSYnenHmRYJXzVxABcG8kUC4idRFDs71PSJd8FmCSTVUQ17/lLfn3s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549112; h=Content-Type: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=5Ad7MPrUrEPsjPnzQmDTkeEewqARoHTT0yNjTvWPD84=; b=mP+gQobrya0kuQ675ovwowJc7fUauSGN2GwQ7NVHU2Q4J0rr1uMNcyKY42/2QGup8xwtBphBsNgVtMP9HRWDIgqxQUOE8LwssyaUnwfITmUjsd7+mAniqg9YCi0TdNrq32JvYd5VwO5JWZ83uEDe/vU1cqpt5i9hHjIfTR5uiT0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549112260416.60566891797805; Wed, 9 Dec 2020 13:25:12 -0800 (PST) Received: from localhost ([::1]:41192 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4Tx-0001lj-Vf for importer@patchew.org; Wed, 09 Dec 2020 13:46:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52714) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uT-0003bb-Hq for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:53 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:26542) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uR-0008Tp-8y for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:53 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-231-YPHSh4kKM227rEEw2Mb3_A-1; Wed, 09 Dec 2020 13:09:46 -0500 Received: by mail-wm1-f72.google.com with SMTP id u123so639847wmu.5 for ; Wed, 09 Dec 2020 10:09:46 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id w17sm4716327wmk.12.2020.12.09.10.09.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537388; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=5Ad7MPrUrEPsjPnzQmDTkeEewqARoHTT0yNjTvWPD84=; b=jR2loYjRBfDuKs2Efs00A4iG8zdjzUAr1V9P9Lj3UQRqsGZhEfJn9FBPKbOQMGJ60bA/ZO /5JM8r3aMkOqQe/plaTwV87zqJfy8vCyAsqZr8x9U8AhH6NwiYoNFF1bFLy4Ujp6p7gCS2 1B/qjfPQlpaRcoS0Ao/f+VAqv44/Nw0= X-MC-Unique: YPHSh4kKM227rEEw2Mb3_A-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=5Ad7MPrUrEPsjPnzQmDTkeEewqARoHTT0yNjTvWPD84=; b=D7p82/e6by+uBgq7T8pfevX18wdQYdI5jd1K7CF4JOVLjACU/lmqVg3i7/sQ0hFKMK JpsWuwGx4Ys5NIdSLkCwKUWNKvn3vANHCAptV3/PcLDNvZRgLU+ahmhBHsIHvERqR3KR uC/7zr0tUM/kNpn+02au06+HhbP1kd2w1D1JIXPYy0fv9nQGqHvUKDibvP0z2KS5akZD 5wgnl93QnoQUaeK0QmjN5HCMblxO4Fu3ycdLDilVddaGoMLUmRCKArbyk7N9kOmeA3EA SH5rITd8Tz5ZKl1OU3zeV66d0qbZ+3El4pEElTUGNavhXf8rkd7NX6KuxBgQjElTBHKp Buig== X-Gm-Message-State: AOAM530qBhRymUxXbS8bBBHIgGnKARIIKNTCrDZeZA9gZX2SpStHAa8x XXtPZyI/KBC08zaSSgPijG5puPdccS6PuF139EzRS59AwtJRF2EPPslok/Sh0HpdntrUog9DQLm PJOS+FX+g1nw5+t7HvfH1i2N6YNkKGNcU0qZiU5x4dadxPStgLBSeky1bOayL X-Received: by 2002:a7b:cf30:: with SMTP id m16mr4008142wmg.145.1607537384836; Wed, 09 Dec 2020 10:09:44 -0800 (PST) X-Google-Smtp-Source: ABdhPJxHf+zyxOOfahZVlQKVuuGewMMZIp/NpA5/JgO36yT7oQQx7dvNkdhvlAbzjtXinMOV+qoSdQ== X-Received: by 2002:a7b:cf30:: with SMTP id m16mr4008122wmg.145.1607537384677; Wed, 09 Dec 2020 10:09:44 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:39 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 40/65] failover: Caller of this two functions already have primary_dev Message-ID: <20201209180546.721296-41-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Pass it as an argument. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-26-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 746ed3fb71..b37e9cd1d9 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3093,17 +3093,17 @@ void virtio_net_set_netclient_name(VirtIONet *n, co= nst char *name, n->netclient_type =3D g_strdup(type); } =20 -static bool failover_unplug_primary(VirtIONet *n) +static bool failover_unplug_primary(VirtIONet *n, DeviceState *dev) { HotplugHandler *hotplug_ctrl; PCIDevice *pci_dev; Error *err =3D NULL; =20 - hotplug_ctrl =3D qdev_get_hotplug_handler(n->primary_dev); + hotplug_ctrl =3D qdev_get_hotplug_handler(dev); if (hotplug_ctrl) { - pci_dev =3D PCI_DEVICE(n->primary_dev); + pci_dev =3D PCI_DEVICE(dev); pci_dev->partially_hotplugged =3D true; - hotplug_handler_unplug_request(hotplug_ctrl, n->primary_dev, &err); + hotplug_handler_unplug_request(hotplug_ctrl, dev, &err); if (err) { error_report_err(err); return false; @@ -3114,30 +3114,31 @@ static bool failover_unplug_primary(VirtIONet *n) return true; } =20 -static bool failover_replug_primary(VirtIONet *n, Error **errp) +static bool failover_replug_primary(VirtIONet *n, DeviceState *dev, + Error **errp) { Error *err =3D NULL; HotplugHandler *hotplug_ctrl; - PCIDevice *pdev =3D PCI_DEVICE(n->primary_dev); + PCIDevice *pdev =3D PCI_DEVICE(dev); BusState *primary_bus; =20 if (!pdev->partially_hotplugged) { return true; } - primary_bus =3D n->primary_dev->parent_bus; + primary_bus =3D dev->parent_bus; if (!primary_bus) { error_setg(errp, "virtio_net: couldn't find primary bus"); return false; } - qdev_set_parent_bus(n->primary_dev, primary_bus, &error_abort); + qdev_set_parent_bus(dev, primary_bus, &error_abort); qatomic_set(&n->failover_primary_hidden, false); - hotplug_ctrl =3D qdev_get_hotplug_handler(n->primary_dev); + hotplug_ctrl =3D qdev_get_hotplug_handler(dev); if (hotplug_ctrl) { - hotplug_handler_pre_plug(hotplug_ctrl, n->primary_dev, &err); + hotplug_handler_pre_plug(hotplug_ctrl, dev, &err); if (err) { goto out; } - hotplug_handler_plug(hotplug_ctrl, n->primary_dev, &err); + hotplug_handler_plug(hotplug_ctrl, dev, &err); } =20 out: @@ -3161,7 +3162,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, } =20 if (migration_in_setup(s) && !should_be_hidden) { - if (failover_unplug_primary(n)) { + if (failover_unplug_primary(n, n->primary_dev)) { vmstate_unregister(VMSTATE_IF(n->primary_dev), qdev_get_vmsd(n->primary_dev), n->primary_dev); @@ -3172,7 +3173,7 @@ static void virtio_net_handle_migration_primary(VirtI= ONet *n, } } else if (migration_has_failed(s)) { /* We already unplugged the device let's plug it back */ - if (!failover_replug_primary(n, &err)) { + if (!failover_replug_primary(n, n->primary_dev, &err)) { if (err) { error_report_err(err); } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607539973; cv=none; d=zohomail.com; s=zohoarc; b=iP6PiCr8uvALHnL4ZOUj25ZYDjkVrATUcITWBKs55s4fYa5VbXLCaWE+jIZSIwklV1O4CCaFR8CkCWvOKQJle5XcBEEBUlcQxDGRP1ahvR+VSiak9gsHdeCSM2JzKsUJfxzMoRXXXnzmCiUj8JPWRYyYNZ56cJBtOtCx6/u4x1c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607539973; h=Content-Type: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=QowV/giP343KnzfILfGamLCO9JCQa97xX2d65deKp4E=; b=hmAkUbR1TURxJCX88G87wkS61V2EpVKbIOCvixSV1hM6Rx9+hSUuR1ncIshsFGJhlPkkjC/bDul6yNL6b38YS0gC0JRFHKMZ6Ooj0TqMFOaKnCpkdwTs9UAq+cv/cy72Zw5i3h11zeO2RTDju/DDefNFkNOrhJFA1dgB0AcIjGg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607539973433759.4316401437637; Wed, 9 Dec 2020 10:52:53 -0800 (PST) Received: from localhost ([::1]:56612 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4a4-0008FM-6u for importer@patchew.org; Wed, 09 Dec 2020 13:52:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52764) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uW-0003iA-UT for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:56 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:52834) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uS-0008Up-0O for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:56 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-17-UjOa8a6oMLaxDA2h_l9xDQ-1; Wed, 09 Dec 2020 13:09:48 -0500 Received: by mail-wm1-f70.google.com with SMTP id k128so868236wme.7 for ; Wed, 09 Dec 2020 10:09:48 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id w12sm5681957wre.57.2020.12.09.10.09.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=QowV/giP343KnzfILfGamLCO9JCQa97xX2d65deKp4E=; b=F9Rp19SAMoXTNUm50xkFFFd2hRACdkLJP/rOZn+u/Aa8qyuatL8OEBa1jNaYLKaujERHv8 FX34Ur4HS2YISuuF7jft9K49q3fKH4KLyzTI8uMLNdzDTZk8prGFfE2jP+SO/bu5+e8Xl0 PWJpJHBVVKEtUrpyAUuWGmSuNcxtNZM= X-MC-Unique: UjOa8a6oMLaxDA2h_l9xDQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=QowV/giP343KnzfILfGamLCO9JCQa97xX2d65deKp4E=; b=Uo0JwRncE3lB/40gvQiLS7ID9bje9iG1PvVqC9x7EakZ2IZrk/ccjrd2hQNL2blodq w6OW58Ab8uosvlvzJOtlaQ0wU8Hr5SGDK5bdab63Cy8/rKKkJhxKPBYPpCjEivqVTW90 b67UWooRCSxrTvYrI1O5k1Rg6+0lhP0omeKal1yFPY+7MgdTyAxPAuykJZwAj0J/03x3 Fi0zj5sdd3zTvi8zIdfuE6vunbS+O9+xnQS/OlsoHLxzHi4W18Wage/AZqNgaVTfANdi HJezKXYmTwr3XvW2R3IQqUV4lbQ8WGYlmWB9x+KPRIDbcarpHmfHpCG7K4pDp0G5f1o8 NGNA== X-Gm-Message-State: AOAM533oWIvoCrKbt4JNRMDfCUo+0Cf4K8y26gx6gcGJi363tRmBUGm1 I7SrcS/k3gbfbu6oFEo2bagSBskkpYL+t522LTRCHX1q7IfuRQ4pwI2X+XPe3pqCQw9T0rOz1f5 MuYkO/hJtioy+2sN0H+zpU9YBSks1nRDC3Q8CMvDQPXtycMBJK61DMCqfskty X-Received: by 2002:adf:e5c7:: with SMTP id a7mr4088660wrn.300.1607537387105; Wed, 09 Dec 2020 10:09:47 -0800 (PST) X-Google-Smtp-Source: ABdhPJxqaYTgjwcEMZwVWzGT7ufVqJH5LjcJ8oxX/NZABA6E+PWZPHhO4KJZ1hi5FTmDwcum7c9CHg== X-Received: by 2002:adf:e5c7:: with SMTP id a7mr4088638wrn.300.1607537386888; Wed, 09 Dec 2020 10:09:46 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:44 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 41/65] failover: simplify failover_unplug_primary Message-ID: <20201209180546.721296-42-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela We can calculate device just once. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-27-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/net/virtio-net.c | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index b37e9cd1d9..9203d81780 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3146,34 +3146,29 @@ out: return !err; } =20 -static void virtio_net_handle_migration_primary(VirtIONet *n, - MigrationState *s) +static void virtio_net_handle_migration_primary(VirtIONet *n, MigrationSta= te *s) { bool should_be_hidden; Error *err =3D NULL; + DeviceState *dev =3D failover_find_primary_device(n); + + if (!dev) { + return; + } =20 should_be_hidden =3D qatomic_read(&n->failover_primary_hidden); =20 - if (!n->primary_dev) { - n->primary_dev =3D failover_find_primary_device(n); - if (!n->primary_dev) { - return; - } - } - if (migration_in_setup(s) && !should_be_hidden) { - if (failover_unplug_primary(n, n->primary_dev)) { - vmstate_unregister(VMSTATE_IF(n->primary_dev), - qdev_get_vmsd(n->primary_dev), - n->primary_dev); - qapi_event_send_unplug_primary(n->primary_dev->id); + if (failover_unplug_primary(n, dev)) { + vmstate_unregister(VMSTATE_IF(dev), qdev_get_vmsd(dev), dev); + qapi_event_send_unplug_primary(dev->id); qatomic_set(&n->failover_primary_hidden, true); } else { warn_report("couldn't unplug primary device"); } } else if (migration_has_failed(s)) { /* We already unplugged the device let's plug it back */ - if (!failover_replug_primary(n, n->primary_dev, &err)) { + if (!failover_replug_primary(n, dev, &err)) { if (err) { error_report_err(err); } --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549472; cv=none; d=zohomail.com; s=zohoarc; b=Xp8zl1R97LPfuIHTHuaAWUjWcgW3iP9TL3EzifgwVtcILViMBtx1cvrgGISJIpe61HlDrHdRo+YEif8CC0DJY0L1aTghPeTtNwLbMQcMgmjGMxSqjRctDgPnXB+kfeVURCNGlTQ6x0y81zBmioz9RfkkNfcOQKAiRNplrsXW9zs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549472; h=Content-Type: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=/6JOcPhUQFqc1kwmdgubQXhnbQ6P3mfE5pWlvANh7JM=; b=C+frUpp3tOVt0B1pSLofdx2DYSchi78XNh2Q+3bUp/ISxFKueJ8ubNsTFtwOybh25ibbCNZBMDrBrBVzHsdDzRjYzCxfHhk4MEZqPwwEoyPD5PQrFfneGpMrbi0bnx9hTt+jcRDgZKapoWWxYk9CGYCW8P0pH+1tIAcHi2aiMx0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549472397390.79916516898845; Wed, 9 Dec 2020 13:31:12 -0800 (PST) Received: from localhost ([::1]:49812 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4X6-0005Oo-U9 for importer@patchew.org; Wed, 09 Dec 2020 13:49:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52780) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uY-0003lC-4P for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:58 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:48027) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uV-0008VQ-3E for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:57 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-163-in2xHAOjNsO4bZ8BIS_i6g-1; Wed, 09 Dec 2020 13:09:51 -0500 Received: by mail-wm1-f71.google.com with SMTP id z12so865700wmf.9 for ; Wed, 09 Dec 2020 10:09:50 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id i18sm1110327wrp.74.2020.12.09.10.09.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537394; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=/6JOcPhUQFqc1kwmdgubQXhnbQ6P3mfE5pWlvANh7JM=; b=Or6EFxGj+HJMivz+njq7OhGGH90tz4A6vE9wvYIDWc99kx+jQbZaY89ibt3hq2lk3WEt6X nmQC/VfcclEL+y7NY+AUfIpm78nIpYO+3K8K9Rohk2VwzKLOfv/WEfF0iJF0cMX+1hhvzN QcqAUVcWiuPB883jyB92uaqzdEMdrtc= X-MC-Unique: in2xHAOjNsO4bZ8BIS_i6g-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=/6JOcPhUQFqc1kwmdgubQXhnbQ6P3mfE5pWlvANh7JM=; b=olxwPyyF5qIzfvaB0H5r2s2OiVBTPOM9sLoPN8y7+Chsd1eij6gQ2b+A/LOVIzCdWf s6UgZpwMzeMhA4gXd/y7EcemiI1Iy+hVhEinbVd7NfrnfKvINoaJWnNh/bYAW7OI1a2L lrEeBMAslTN//4ED2xkJUVoQRd7T15Hc9kD3KeyYbckoMdr2+YPaHs03Gl3JDYfo2lRz yMI9EHnH2ASIejo6PmWLRMvBh3PS7BU55gcFOV8cw8y5cqAvNY8E8UqBwY5DBABU0/3M AYZ4Z/8X1URZmhXORXzrQV5sLTTpHEGLGNB87QUrMiM7Vk8uj+YAwyvPaWFmPztSCKAw Wc7g== X-Gm-Message-State: AOAM533b8bYi5z3T8TjiAp7Iqvbxfs/iKpuV1yHkypZXplUpxLUS/Qjl xmAR1/tzDuOhGzfb0apKPEkAQbembrZLGnWbJs5i6pZcbDXcgvXXmCxdF3DKMHSmd0t2BwUglbx ZiLLSj9fcTvHlKK9LCCZwrLRjbWQWF3GxsJtmwJDbgKyxjZJXKdmMKjtqnAtT X-Received: by 2002:a7b:cbd0:: with SMTP id n16mr4106932wmi.162.1607537389665; Wed, 09 Dec 2020 10:09:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJxxScf2zYuQkKLrtV5IUJ4SRkqZX6zcGR2BPok/n4WpmnJOUG1WUYKpcjezw7y8i3D+4id2tA== X-Received: by 2002:a7b:cbd0:: with SMTP id n16mr4106910wmi.162.1607537389472; Wed, 09 Dec 2020 10:09:49 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:47 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 42/65] failover: Remove primary_dev member Message-ID: <20201209180546.721296-43-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Jason Wang , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Juan Quintela Only three uses remained, and we can remove them on that case. Signed-off-by: Juan Quintela Message-Id: <20201118083748.1328-28-quintela@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/virtio/virtio-net.h | 1 - hw/net/virtio-net.c | 75 +++++++++++++++------------------- 2 files changed, 34 insertions(+), 42 deletions(-) diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index efef64e02f..7e96d193aa 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -202,7 +202,6 @@ struct VirtIONet { AnnounceTimer announce_timer; bool needs_vnet_hdr_swap; bool mtu_bypass_backend; - DeviceState *primary_dev; /* primary failover device is hidden*/ bool failover_primary_hidden; bool failover; diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 9203d81780..044ac95f6f 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -832,35 +832,6 @@ static char *failover_find_primary_device_id(VirtIONet= *n) return fid.id; } =20 -static void failover_add_primary(VirtIONet *n, Error **errp) -{ - Error *err =3D NULL; - QemuOpts *opts; - char *id; - - if (n->primary_dev) { - return; - } - - id =3D failover_find_primary_device_id(n); - if (!id) { - return; - } - opts =3D qemu_opts_find(qemu_find_opts("device"), id); - if (opts) { - n->primary_dev =3D qdev_device_add(opts, &err); - if (err) { - qemu_opts_del(opts); - } - } else { - error_setg(errp, "Primary device not found"); - error_append_hint(errp, "Virtio-net failover will not work. Make " - "sure primary device has parameter" - " failover_pair_id=3D\n"); - } - error_propagate(errp, err); -} - /** * Find the primary device for this failover virtio-net * @@ -878,6 +849,36 @@ static DeviceState *failover_find_primary_device(VirtI= ONet *n) return qdev_find_recursive(sysbus_get_default(), id); } =20 +static void failover_add_primary(VirtIONet *n, Error **errp) +{ + Error *err =3D NULL; + QemuOpts *opts; + char *id; + DeviceState *dev =3D failover_find_primary_device(n); + + if (dev) { + return; + } + + id =3D failover_find_primary_device_id(n); + if (!id) { + return; + } + opts =3D qemu_opts_find(qemu_find_opts("device"), id); + if (opts) { + dev =3D qdev_device_add(opts, &err); + if (err) { + qemu_opts_del(opts); + } + } else { + error_setg(errp, "Primary device not found"); + error_append_hint(errp, "Virtio-net failover will not work. Make " + "sure primary device has parameter" + " failover_pair_id=3D\n"); + } + error_propagate(errp, err); +} + static void virtio_net_set_features(VirtIODevice *vdev, uint64_t features) { VirtIONet *n =3D VIRTIO_NET(vdev); @@ -933,19 +934,9 @@ static void virtio_net_set_features(VirtIODevice *vdev= , uint64_t features) qatomic_set(&n->failover_primary_hidden, false); failover_add_primary(n, &err); if (err) { - n->primary_dev =3D failover_find_primary_device(n); - failover_add_primary(n, &err); - if (err) { - goto out_err; - } + warn_report_err(err); } } - return; - -out_err: - if (err) { - warn_report_err(err); - } } =20 static int virtio_net_handle_rx_mode(VirtIONet *n, uint8_t cmd, @@ -3420,13 +3411,15 @@ static int virtio_net_pre_save(void *opaque) static bool primary_unplug_pending(void *opaque) { DeviceState *dev =3D opaque; + DeviceState *primary; VirtIODevice *vdev =3D VIRTIO_DEVICE(dev); VirtIONet *n =3D VIRTIO_NET(vdev); =20 if (!virtio_vdev_has_feature(vdev, VIRTIO_NET_F_STANDBY)) { return false; } - return n->primary_dev ? n->primary_dev->pending_deleted_event : false; + primary =3D failover_find_primary_device(n); + return primary ? primary->pending_deleted_event : false; } =20 static bool dev_unplug_pending(void *opaque) --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547575; cv=none; d=zohomail.com; s=zohoarc; b=Gfrux/GtmDCbQu/ZEUFV2no1onomIUEchaIUAlXsxFBxWU+kS0yHFcKcADneY/5NRsEb4Yc+410xkg4PQby00pkkT3V03ym6MaZBC5dzlC9TfiP8C9VGUmNep+nkMohH3drPc36t2EjasuBTsCTTqYrndDOFXiF9dE1q+DaL5gU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547575; h=Content-Type: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=Zmq5kZJrirBBBXS35ysh+mUgTzxp2lOUsH4CrA7XSDk=; b=e5eKC3hRUquX82pX34oafnQxeNYDFQPPeAww1J7r4lZ6r+WOqs2G4lRE+EFTJD/b4fQJsdiufFV/ki7TsleSV+YFQh2UVhAiyPjwPckXsCvDLKH9YisReIcY/K8/OphtUVng5Taf22ABkTEsr2di56X1pOQTy6WYGi9o1vbuF6E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547575936680.3712334501586; Wed, 9 Dec 2020 12:59:35 -0800 (PST) Received: from localhost ([::1]:58340 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4ac-0000VD-BZ for importer@patchew.org; Wed, 09 Dec 2020 13:53:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52814) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uZ-0003nk-V4 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:03 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:21761) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uX-00004u-VT for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:09:59 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-451-flr6k5ZDNQO5HWEZyKJv1w-1; Wed, 09 Dec 2020 13:09:55 -0500 Received: by mail-wm1-f71.google.com with SMTP id z12so865758wmf.9 for ; Wed, 09 Dec 2020 10:09:54 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id c9sm4927313wrp.73.2020.12.09.10.09.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537397; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Zmq5kZJrirBBBXS35ysh+mUgTzxp2lOUsH4CrA7XSDk=; b=S00GvkuyoQNKl/yYE/jJiUJM0a/6WSpvNDQzVdIoTp7XNgzp/VYT4lOIwqG/QjvdUnIh47 zTqyx//VLnEHQk8CkMP18rxiQMRIEWUjMKn9pV7KvDhPlQ25Et5zNXZ2+yzW1ap1Qh3jvn O4SNo9ublZ9el8lPbjDZWht0AZXwrEc= X-MC-Unique: flr6k5ZDNQO5HWEZyKJv1w-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Zmq5kZJrirBBBXS35ysh+mUgTzxp2lOUsH4CrA7XSDk=; b=cT0Rl5c8CHLlTFy6lsdR9CBsM0WVuRVi1mTu2Um5yyFEGhIHwHqJ2ew8w4mNYm+reb gsfnqvwpU3A1Y57GNakim9cmrgYgCTbdF9Sondy9OQ42yj4/rflzZAW+7RS3JDISdkhF ZtO7bi9InQtH/rpz3nex/MNysqPCA9+Ke5EmRlbCGXeUrMdw9eNsdsUZ6T5NICL4FQZk 15oO0ArEfI9HLXWPbN82FdYLX5WzVd48mYZCUu0oq51lV2fJxr09Rq274cAfUFaaUt21 TRnzn02Du6PcRdnzVujRSQoye+21fEwyDRUiJ5tpjtNqewFq4JbwaQJeE3jqJ747mAtW AmAA== X-Gm-Message-State: AOAM533wLwKuKA75uk8uV7mYuyXZCLf/cuWU6vmEAU4G7opxjLxWGePj Hw7sVTFmuS/QW45oqvjslY0v6nTGXz+bNWqCffaE6N/Y5w8GGrBnZLKenKYIxFOlpM6E86tW+y2 Ia4IkWYgKtQRXmbDkdf7lKHhnyq3dXMyL9Za6LRnM4bq2MYhiSsxiNWtDQQK3 X-Received: by 2002:a1c:234d:: with SMTP id j74mr4061835wmj.18.1607537392941; Wed, 09 Dec 2020 10:09:52 -0800 (PST) X-Google-Smtp-Source: ABdhPJwEtrtsttZlUEVHY/t76bo549KYxETkFcbzFhzyAQA/fZuvv5jSbPXFWFDCRHtD+7OjUM/ydA== X-Received: by 2002:a1c:234d:: with SMTP id j74mr4061803wmj.18.1607537392729; Wed, 09 Dec 2020 10:09:52 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:49 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 43/65] hw: add compat machines for 6.0 Message-ID: <20201209180546.721296-44-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Thomas Huth , Eduardo Habkost , David Hildenbrand , Cornelia Huck , Richard Henderson , Halil Pasic , Christian Borntraeger , qemu-s390x@nongnu.org, qemu-arm@nongnu.org, qemu-ppc@nongnu.org, Paolo Bonzini , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Cornelia Huck Add 6.0 machine types for arm/i440fx/q35/s390x/spapr. Signed-off-by: Cornelia Huck Message-Id: <20201109173928.1001764-1-cohuck@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/boards.h | 3 +++ include/hw/i386/pc.h | 3 +++ hw/arm/virt.c | 11 +++++++++-- hw/core/machine.c | 3 +++ hw/i386/pc.c | 3 +++ hw/i386/pc_piix.c | 14 +++++++++++++- hw/i386/pc_q35.c | 13 ++++++++++++- hw/ppc/spapr.c | 17 ++++++++++++++--- hw/s390x/s390-virtio-ccw.c | 14 +++++++++++++- 9 files changed, 73 insertions(+), 8 deletions(-) diff --git a/include/hw/boards.h b/include/hw/boards.h index a49e3a6b44..f94f4ad5d8 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -310,6 +310,9 @@ struct MachineState { } \ type_init(machine_initfn##_register_types) =20 +extern GlobalProperty hw_compat_5_2[]; +extern const size_t hw_compat_5_2_len; + extern GlobalProperty hw_compat_5_1[]; extern const size_t hw_compat_5_1_len; =20 diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 911e460097..49dfa667de 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -191,6 +191,9 @@ void pc_system_firmware_init(PCMachineState *pcms, Memo= ryRegion *rom_memory); void pc_madt_cpu_entry(AcpiDeviceIf *adev, int uid, const CPUArchIdList *apic_ids, GArray *entry); =20 +extern GlobalProperty pc_compat_5_2[]; +extern const size_t pc_compat_5_2_len; + extern GlobalProperty pc_compat_5_1[]; extern const size_t pc_compat_5_1_len; =20 diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 847257aa5c..22572c32b7 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -2590,10 +2590,17 @@ static void machvirt_machine_init(void) } type_init(machvirt_machine_init); =20 -static void virt_machine_5_2_options(MachineClass *mc) +static void virt_machine_6_0_options(MachineClass *mc) { } -DEFINE_VIRT_MACHINE_AS_LATEST(5, 2) +DEFINE_VIRT_MACHINE_AS_LATEST(6, 0) + +static void virt_machine_5_2_options(MachineClass *mc) +{ + virt_machine_6_0_options(mc); + compat_props_add(mc->compat_props, hw_compat_5_2, hw_compat_5_2_len); +} +DEFINE_VIRT_MACHINE(5, 2) =20 static void virt_machine_5_1_options(MachineClass *mc) { diff --git a/hw/core/machine.c b/hw/core/machine.c index d0408049b5..9c41b94e0d 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -28,6 +28,9 @@ #include "hw/mem/nvdimm.h" #include "migration/vmstate.h" =20 +GlobalProperty hw_compat_5_2[] =3D {}; +const size_t hw_compat_5_2_len =3D G_N_ELEMENTS(hw_compat_5_2); + GlobalProperty hw_compat_5_1[] =3D { { "vhost-scsi", "num_queues", "1"}, { "vhost-user-blk", "num-queues", "1"}, diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 76a846ff9a..7113fb0770 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -97,6 +97,9 @@ #include "trace.h" #include CONFIG_DEVICES =20 +GlobalProperty pc_compat_5_2[] =3D {}; +const size_t pc_compat_5_2_len =3D G_N_ELEMENTS(pc_compat_5_2); + GlobalProperty pc_compat_5_1[] =3D { { "ICH9-LPC", "x-smi-cpu-hotplug", "off" }, }; diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index 13d1628f13..6188c3e97e 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -426,7 +426,7 @@ static void pc_i440fx_machine_options(MachineClass *m) machine_class_allow_dynamic_sysbus_dev(m, TYPE_VMBUS_BRIDGE); } =20 -static void pc_i440fx_5_2_machine_options(MachineClass *m) +static void pc_i440fx_6_0_machine_options(MachineClass *m) { PCMachineClass *pcmc =3D PC_MACHINE_CLASS(m); pc_i440fx_machine_options(m); @@ -435,6 +435,18 @@ static void pc_i440fx_5_2_machine_options(MachineClass= *m) pcmc->default_cpu_version =3D 1; } =20 +DEFINE_I440FX_MACHINE(v6_0, "pc-i440fx-6.0", NULL, + pc_i440fx_6_0_machine_options); + +static void pc_i440fx_5_2_machine_options(MachineClass *m) +{ + pc_i440fx_6_0_machine_options(m); + m->alias =3D NULL; + m->is_default =3D false; + compat_props_add(m->compat_props, hw_compat_5_2, hw_compat_5_2_len); + compat_props_add(m->compat_props, pc_compat_5_2, pc_compat_5_2_len); +} + DEFINE_I440FX_MACHINE(v5_2, "pc-i440fx-5.2", NULL, pc_i440fx_5_2_machine_options); =20 diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index a3f4959c43..0a212443aa 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -344,7 +344,7 @@ static void pc_q35_machine_options(MachineClass *m) m->max_cpus =3D 288; } =20 -static void pc_q35_5_2_machine_options(MachineClass *m) +static void pc_q35_6_0_machine_options(MachineClass *m) { PCMachineClass *pcmc =3D PC_MACHINE_CLASS(m); pc_q35_machine_options(m); @@ -352,6 +352,17 @@ static void pc_q35_5_2_machine_options(MachineClass *m) pcmc->default_cpu_version =3D 1; } =20 +DEFINE_Q35_MACHINE(v6_0, "pc-q35-6.0", NULL, + pc_q35_6_0_machine_options); + +static void pc_q35_5_2_machine_options(MachineClass *m) +{ + pc_q35_6_0_machine_options(m); + m->alias =3D NULL; + compat_props_add(m->compat_props, hw_compat_5_2, hw_compat_5_2_len); + compat_props_add(m->compat_props, pc_compat_5_2, pc_compat_5_2_len); +} + DEFINE_Q35_MACHINE(v5_2, "pc-q35-5.2", NULL, pc_q35_5_2_machine_options); =20 diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index 12a012d9dd..c060702013 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -4510,14 +4510,25 @@ static void spapr_machine_latest_class_options(Mach= ineClass *mc) type_init(spapr_machine_register_##suffix) =20 /* - * pseries-5.2 + * pseries-6.0 */ -static void spapr_machine_5_2_class_options(MachineClass *mc) +static void spapr_machine_6_0_class_options(MachineClass *mc) { /* Defaults for the latest behaviour inherited from the base class */ } =20 -DEFINE_SPAPR_MACHINE(5_2, "5.2", true); +DEFINE_SPAPR_MACHINE(6_0, "6.0", true); + +/* + * pseries-5.2 + */ +static void spapr_machine_5_2_class_options(MachineClass *mc) +{ + spapr_machine_6_0_class_options(mc); + compat_props_add(mc->compat_props, hw_compat_5_2, hw_compat_5_2_len); +} + +DEFINE_SPAPR_MACHINE(5_2, "5.2", false); =20 /* * pseries-5.1 diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 4e140bbead..f0ee8dae68 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -789,14 +789,26 @@ bool css_migration_enabled(void) } = \ type_init(ccw_machine_register_##suffix) =20 +static void ccw_machine_6_0_instance_options(MachineState *machine) +{ +} + +static void ccw_machine_6_0_class_options(MachineClass *mc) +{ +} +DEFINE_CCW_MACHINE(6_0, "6.0", true); + static void ccw_machine_5_2_instance_options(MachineState *machine) { + ccw_machine_6_0_instance_options(machine); } =20 static void ccw_machine_5_2_class_options(MachineClass *mc) { + ccw_machine_6_0_class_options(mc); + compat_props_add(mc->compat_props, hw_compat_5_2, hw_compat_5_2_len); } -DEFINE_CCW_MACHINE(5_2, "5.2", true); +DEFINE_CCW_MACHINE(5_2, "5.2", false); =20 static void ccw_machine_5_1_instance_options(MachineState *machine) { --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549261; cv=none; d=zohomail.com; s=zohoarc; b=GZ+/wks/WC2DkT8dtI7PaIVikA8jEqoe9lwGzwtY0hHOpMP1bv7cnVDAyVAfPKb1aYiAXkkCIbmDDd5Ell/WRlpTex5giQdZB2XNuPXVbX2AGbdUVkbEZwb6NgHPOm5SFsAKbEbaTSEUxhCz78G+oJIs/KR5xmTy0ow6Hp50lWo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549261; 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=bkqcL6Zyg/x8ymWrEnxQRMEnalGx2orBZXKaXR9zuFE=; b=V/EU4XsEoKwEQcZ7YMqIIYkg2mk6Q/ArXqYi+FFJsVtDOuzHNGt4sAkcFAumjchJRwpJiV2Df6q5FhDOXNBp4dapysFvqALBQkfA+nLFM4pgU4HSqoCgwfc3tXD8O1vrfkNpmaFyJI40bUyDTnD6o2GeszSOMPa0hDzCWmYjWb4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549261559507.26655283402283; Wed, 9 Dec 2020 13:27:41 -0800 (PST) Received: from localhost ([::1]:50034 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4h5-0000Jm-Bx for importer@patchew.org; Wed, 09 Dec 2020 14:00:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52858) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uj-0003yY-9L for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:09 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:47443) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uh-00007h-0n for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:08 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-489-p8s2AUZ9N4mj4wWFCWHLyg-1; Wed, 09 Dec 2020 13:10:02 -0500 Received: by mail-wr1-f71.google.com with SMTP id j5so951955wro.12 for ; Wed, 09 Dec 2020 10:10:02 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id v7sm4519177wma.26.2020.12.09.10.09.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:09:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537406; h=from:from: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; bh=bkqcL6Zyg/x8ymWrEnxQRMEnalGx2orBZXKaXR9zuFE=; b=BmhH80jgEVxCTlx4OdufHUWCJThHryTqrAOpZ1TzA8qhBY65SiVMxS+4B1gIR6HbSJ6/rk QQkX9oudPPw6/tLqjrKYAkRUVnjKrXmT0u2QINAN9RhoaeR4VqEKMxXEkgnz9WuvY75nGj Na9h2JqdaezVddOW/vVry4AxgxiKJqM= X-MC-Unique: p8s2AUZ9N4mj4wWFCWHLyg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=bkqcL6Zyg/x8ymWrEnxQRMEnalGx2orBZXKaXR9zuFE=; b=Pa63+1UPtLwYiTvcMWnzd5EDwgSOoDm9xIXWGPGqzFlDVPPeMz1O90YD5vcc0z578j Cg1dBPF6w4iEmXcAM47eyxVzK5X1RXTRuE9APPULcIalvshC/NwxA+E7SqWcvIBy9jGD DWZe0Mcup14oaunnvQVKTyfAbiTzaDhuDXqMjtMoOlfXr2NmKh4cK3kn1QeNBLJU4UPG KZCX0J4NCqSqex3PTv0KFEaJaSvdkVl2Vz7/JL9dGtDunWo01YbCvH8OTwyjh/1VnjM3 m+IaZlAPImHp0oRQX5pWv0mG+exYL7Dn5/QIBzCdIwE60iDvqhCKmzzf+wVzzdG4wGNz ffNQ== X-Gm-Message-State: AOAM530KO0B7MG9TB65qVrjG6QqmJA6f7RBqA7mo8BM6oEaAWBDgN9x2 zhLVOygs6sYBulqCn/KqfBSdoAKVhbzKdIVIwlNRBT2T255sIYww+dy6ecu0xcTX32P36YVclN6 3XavBmE+o7OPtu18SDbw4uGhDBFc2Nm1JlcWjiU/E8DKvDZe9BGhJ9YnKfPro X-Received: by 2002:a05:600c:2188:: with SMTP id e8mr4126477wme.182.1607537400825; Wed, 09 Dec 2020 10:10:00 -0800 (PST) X-Google-Smtp-Source: ABdhPJwEKKUs15aylNKo2oZLOsetMpx7qaeH41+MugKm88dPrGreWbqdmR+baH1kk4x+1vaXynatqA== X-Received: by 2002:a05:600c:2188:: with SMTP id e8mr4126449wme.182.1607537400620; Wed, 09 Dec 2020 10:10:00 -0800 (PST) Date: Wed, 9 Dec 2020 13:09:52 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 44/65] libvhost-user: replace qemu/bswap.h with glibc endian.h Message-ID: <20201209180546.721296-45-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , "Dr . David Alan Gilbert" , Raphael Norwitz , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau Signed-off-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Dr. David Alan Gilbert Reviewed-by: Stefan Hajnoczi Message-Id: <20201125100640.366523-2-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/libvhost-user/libvhost-user.c | 77 ++++++++++++++------------- 1 file changed, 40 insertions(+), 37 deletions(-) diff --git a/contrib/libvhost-user/libvhost-user.c b/contrib/libvhost-user/= libvhost-user.c index 5c73ffdd6b..1c1cfbf1e7 100644 --- a/contrib/libvhost-user/libvhost-user.c +++ b/contrib/libvhost-user/libvhost-user.c @@ -26,6 +26,7 @@ #include #include #include +#include #include "qemu/compiler.h" =20 #if defined(__linux__) @@ -42,7 +43,6 @@ =20 #include "qemu/atomic.h" #include "qemu/osdep.h" -#include "qemu/bswap.h" #include "qemu/memfd.h" =20 #include "libvhost-user.h" @@ -1081,7 +1081,7 @@ vu_set_vring_addr_exec(VuDev *dev, VhostUserMsg *vmsg) return false; } =20 - vq->used_idx =3D lduw_le_p(&vq->vring.used->idx); + vq->used_idx =3D le16toh(vq->vring.used->idx); =20 if (vq->last_avail_idx !=3D vq->used_idx) { bool resume =3D dev->iface->queue_is_processed_in_order && @@ -1198,7 +1198,7 @@ vu_check_queue_inflights(VuDev *dev, VuVirtq *vq) return 0; } =20 - vq->used_idx =3D lduw_le_p(&vq->vring.used->idx); + vq->used_idx =3D le16toh(vq->vring.used->idx); vq->resubmit_num =3D 0; vq->resubmit_list =3D NULL; vq->counter =3D 0; @@ -2031,13 +2031,13 @@ vu_queue_started(const VuDev *dev, const VuVirtq *v= q) static inline uint16_t vring_avail_flags(VuVirtq *vq) { - return lduw_le_p(&vq->vring.avail->flags); + return le16toh(vq->vring.avail->flags); } =20 static inline uint16_t vring_avail_idx(VuVirtq *vq) { - vq->shadow_avail_idx =3D lduw_le_p(&vq->vring.avail->idx); + vq->shadow_avail_idx =3D le16toh(vq->vring.avail->idx); =20 return vq->shadow_avail_idx; } @@ -2045,7 +2045,7 @@ vring_avail_idx(VuVirtq *vq) static inline uint16_t vring_avail_ring(VuVirtq *vq, int i) { - return lduw_le_p(&vq->vring.avail->ring[i]); + return le16toh(vq->vring.avail->ring[i]); } =20 static inline uint16_t @@ -2133,12 +2133,12 @@ virtqueue_read_next_desc(VuDev *dev, struct vring_d= esc *desc, int i, unsigned int max, unsigned int *next) { /* If this descriptor says it doesn't chain, we're done. */ - if (!(lduw_le_p(&desc[i].flags) & VRING_DESC_F_NEXT)) { + if (!(le16toh(desc[i].flags) & VRING_DESC_F_NEXT)) { return VIRTQUEUE_READ_DESC_DONE; } =20 /* Check they're not leading us off end of descriptors. */ - *next =3D lduw_le_p(&desc[i].next); + *next =3D le16toh(desc[i].next); /* Make sure compiler knows to grab that: we don't want it changing! */ smp_wmb(); =20 @@ -2181,8 +2181,8 @@ vu_queue_get_avail_bytes(VuDev *dev, VuVirtq *vq, uns= igned int *in_bytes, } desc =3D vq->vring.desc; =20 - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_INDIRECT) { - if (ldl_le_p(&desc[i].len) % sizeof(struct vring_desc)) { + if (le16toh(desc[i].flags) & VRING_DESC_F_INDIRECT) { + if (le32toh(desc[i].len) % sizeof(struct vring_desc)) { vu_panic(dev, "Invalid size for indirect buffer table"); goto err; } @@ -2195,8 +2195,8 @@ vu_queue_get_avail_bytes(VuDev *dev, VuVirtq *vq, uns= igned int *in_bytes, =20 /* loop over the indirect descriptor table */ indirect =3D 1; - desc_addr =3D ldq_le_p(&desc[i].addr); - desc_len =3D ldl_le_p(&desc[i].len); + desc_addr =3D le64toh(desc[i].addr); + desc_len =3D le32toh(desc[i].len); max =3D desc_len / sizeof(struct vring_desc); read_len =3D desc_len; desc =3D vu_gpa_to_va(dev, &read_len, desc_addr); @@ -2223,10 +2223,10 @@ vu_queue_get_avail_bytes(VuDev *dev, VuVirtq *vq, u= nsigned int *in_bytes, goto err; } =20 - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_WRITE) { - in_total +=3D ldl_le_p(&desc[i].len); + if (le16toh(desc[i].flags) & VRING_DESC_F_WRITE) { + in_total +=3D le32toh(desc[i].len); } else { - out_total +=3D ldl_le_p(&desc[i].len); + out_total +=3D le32toh(desc[i].len); } if (in_total >=3D max_in_bytes && out_total >=3D max_out_bytes= ) { goto done; @@ -2377,7 +2377,7 @@ vring_used_flags_set_bit(VuVirtq *vq, int mask) =20 flags =3D (uint16_t *)((char*)vq->vring.used + offsetof(struct vring_used, flags)); - stw_le_p(flags, lduw_le_p(flags) | mask); + *flags =3D htole16(le16toh(*flags) | mask); } =20 static inline void @@ -2387,17 +2387,20 @@ vring_used_flags_unset_bit(VuVirtq *vq, int mask) =20 flags =3D (uint16_t *)((char*)vq->vring.used + offsetof(struct vring_used, flags)); - stw_le_p(flags, lduw_le_p(flags) & ~mask); + *flags =3D htole16(le16toh(*flags) & ~mask); } =20 static inline void vring_set_avail_event(VuVirtq *vq, uint16_t val) { + uint16_t *avail; + if (!vq->notification) { return; } =20 - stw_le_p(&vq->vring.used->ring[vq->vring.num], val); + avail =3D (uint16_t *)&vq->vring.used->ring[vq->vring.num]; + *avail =3D htole16(val); } =20 void @@ -2487,15 +2490,15 @@ vu_queue_map_desc(VuDev *dev, VuVirtq *vq, unsigned= int idx, size_t sz) struct vring_desc desc_buf[VIRTQUEUE_MAX_SIZE]; int rc; =20 - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_INDIRECT) { - if (ldl_le_p(&desc[i].len) % sizeof(struct vring_desc)) { + if (le16toh(desc[i].flags) & VRING_DESC_F_INDIRECT) { + if (le32toh(desc[i].len) % sizeof(struct vring_desc)) { vu_panic(dev, "Invalid size for indirect buffer table"); return NULL; } =20 /* loop over the indirect descriptor table */ - desc_addr =3D ldq_le_p(&desc[i].addr); - desc_len =3D ldl_le_p(&desc[i].len); + desc_addr =3D le64toh(desc[i].addr); + desc_len =3D le32toh(desc[i].len); max =3D desc_len / sizeof(struct vring_desc); read_len =3D desc_len; desc =3D vu_gpa_to_va(dev, &read_len, desc_addr); @@ -2517,11 +2520,11 @@ vu_queue_map_desc(VuDev *dev, VuVirtq *vq, unsigned= int idx, size_t sz) =20 /* Collect all the descriptors */ do { - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_WRITE) { + if (le16toh(desc[i].flags) & VRING_DESC_F_WRITE) { if (!virtqueue_map_desc(dev, &in_num, iov + out_num, VIRTQUEUE_MAX_SIZE - out_num, true, - ldq_le_p(&desc[i].addr), - ldl_le_p(&desc[i].len))) { + le64toh(desc[i].addr), + le32toh(desc[i].len))) { return NULL; } } else { @@ -2531,8 +2534,8 @@ vu_queue_map_desc(VuDev *dev, VuVirtq *vq, unsigned i= nt idx, size_t sz) } if (!virtqueue_map_desc(dev, &out_num, iov, VIRTQUEUE_MAX_SIZE, false, - ldq_le_p(&desc[i].addr), - ldl_le_p(&desc[i].len))) { + le64toh(desc[i].addr), + le32toh(desc[i].len))) { return NULL; } } @@ -2731,15 +2734,15 @@ vu_log_queue_fill(VuDev *dev, VuVirtq *vq, max =3D vq->vring.num; i =3D elem->index; =20 - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_INDIRECT) { - if (ldl_le_p(&desc[i].len) % sizeof(struct vring_desc)) { + if (le16toh(desc[i].flags) & VRING_DESC_F_INDIRECT) { + if (le32toh(desc[i].len) % sizeof(struct vring_desc)) { vu_panic(dev, "Invalid size for indirect buffer table"); return; } =20 /* loop over the indirect descriptor table */ - desc_addr =3D ldq_le_p(&desc[i].addr); - desc_len =3D ldl_le_p(&desc[i].len); + desc_addr =3D le64toh(desc[i].addr); + desc_len =3D le32toh(desc[i].len); max =3D desc_len / sizeof(struct vring_desc); read_len =3D desc_len; desc =3D vu_gpa_to_va(dev, &read_len, desc_addr); @@ -2765,9 +2768,9 @@ vu_log_queue_fill(VuDev *dev, VuVirtq *vq, return; } =20 - if (lduw_le_p(&desc[i].flags) & VRING_DESC_F_WRITE) { - min =3D MIN(ldl_le_p(&desc[i].len), len); - vu_log_write(dev, ldq_le_p(&desc[i].addr), min); + if (le16toh(desc[i].flags) & VRING_DESC_F_WRITE) { + min =3D MIN(le32toh(desc[i].len), len); + vu_log_write(dev, le64toh(desc[i].addr), min); len -=3D min; } =20 @@ -2792,15 +2795,15 @@ vu_queue_fill(VuDev *dev, VuVirtq *vq, =20 idx =3D (idx + vq->used_idx) % vq->vring.num; =20 - stl_le_p(&uelem.id, elem->index); - stl_le_p(&uelem.len, len); + uelem.id =3D htole32(elem->index); + uelem.len =3D htole32(len); vring_used_write(dev, vq, &uelem, idx); } =20 static inline void vring_used_idx_set(VuDev *dev, VuVirtq *vq, uint16_t val) { - stw_le_p(&vq->vring.used->idx, val); + vq->vring.used->idx =3D htole16(val); vu_log_write(dev, vq->vring.log_guest_addr + offsetof(struct vring_used, id= x), sizeof(vq->vring.used->idx)); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545463; cv=none; d=zohomail.com; s=zohoarc; b=P18tYTvaTnl3PUOSHMg8l3CXaD0dvjESB5DpRvG89pXCPtMPlXe5Hgav3v4LNGelf/Up9/NejN6KCaj1FEjdhk8rRnmoEc8nqagNtbilbOjx2yrRrfE2Q9fkQsE64sJFY6VfY1qIfHEdsOMpnG7D4ooB1lKConm2lvBJysLhs2s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545463; 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=bSoNUC7DG0wIijNBJsdQD+7RaOmhy7cd4bQD51mQOZk=; b=gAQCc51q5JayRgpWxEtR9nJB2AdKdFDPIhPU1N1yQ+WeRCZPgyLqdnSDBk9XOItpNFRzammemZsYRSu9Kpk/j1THeA8J7NOHCE4Y9xqh5Mz1SU9XoSoCCgnxkZtzSP2Tx0rJ2r1wOUJFh3Q99r/CVI4GIPK/b1OMQu08iqjbdDA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545463287572.0371873379166; Wed, 9 Dec 2020 12:24:23 -0800 (PST) Received: from localhost ([::1]:38740 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4dm-00048Y-Ki for importer@patchew.org; Wed, 09 Dec 2020 13:56:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52940) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3ut-0004B2-Ds for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:19 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:46461) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uq-0000CC-24 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:19 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-492-qu5ZMKd_OAaJA5z7GVTJXg-1; Wed, 09 Dec 2020 13:10:12 -0500 Received: by mail-wm1-f71.google.com with SMTP id b184so640347wmh.6 for ; Wed, 09 Dec 2020 10:10:12 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id n14sm4902731wmi.1.2020.12.09.10.10.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537415; h=from:from: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; bh=bSoNUC7DG0wIijNBJsdQD+7RaOmhy7cd4bQD51mQOZk=; b=OSkMzAzMSkm7f9LD8U6W+oLYM7xuLVn19K7XT6NS1zz/IIEKYFkZyP2tCcSM4somBdjZXu RIs57DvMfoO4dEjiom8qgoNposbqJXEsjVN+vWn8HQXT47c0jyx/DgU/IvOdssxVtjXRFL GUhq/8gEazjbZE1J/dDmRBUbTtke/P0= X-MC-Unique: qu5ZMKd_OAaJA5z7GVTJXg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=bSoNUC7DG0wIijNBJsdQD+7RaOmhy7cd4bQD51mQOZk=; b=IppmYb7+0FieDlWQCbvGoSWsb3a6Iww8AW1lu2B9TCcEX7xbfnHxYmfSTsy26l0w+f IpXPt8+lZp7kTcDsl/a6DnPKVTo8PgO4SacNLw/hrFYdJrC/tbYwSzF4cLSVqabxAYXK dLvngcbOGyzpZ2Tr22rIx2bopnB/4g6IMA40LdSJH4SzMiYg0WqeQpFVRTflG/BoPIOh FB+LOmmUaSS1eGW89XehDitAY1LABCAQwWCY7XMNQv+NQtKi+XaS3L4q9hpTot689zFi 9/zdhkIC43HZJOvPIAQub6RLiUQjKVnU8obXhsPlP4lRMgetDVbrhhWY5DKvbgZpuxi3 3+Uw== X-Gm-Message-State: AOAM530wc0FPidex4YmiIkyx0phDJAc26TeTzt2o+DqDdNbuOZXkp9jV 2T0LvwdDeCqLwE2+HcdOh+HOACNwarecZ670OtZTBezzUE7DA8poOq5AArwH1yKNqxDMB6wVcC5 GQgPSVzenQq+DHI+hEGaEEvWCdTVVM+EsNw/e6g1DkviUVsC1o5eJ/s8Za/6x X-Received: by 2002:a5d:54cc:: with SMTP id x12mr3279828wrv.132.1607537411147; Wed, 09 Dec 2020 10:10:11 -0800 (PST) X-Google-Smtp-Source: ABdhPJxiPjlDxvUjA9vB163d2Sr4ll07I4SNlAjuzO8RgJNctWEWAOJqi0gQJmBkg6f8I3SBdtcGyg== X-Received: by 2002:a5d:54cc:: with SMTP id x12mr3279801wrv.132.1607537410956; Wed, 09 Dec 2020 10:10:10 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:00 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 45/65] libvhost-user: replace qemu/memfd.h usage Message-ID: <20201209180546.721296-46-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Raphael Norwitz , "Dr. David Alan Gilbert" , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau Undo the damage from commit 5f9ff1eff3 ("libvhost-user: Support tracking inflight I/O in shared memory") which introduced glib dependency through osdep.h inclusion. libvhost-user.c tries to stay free from glib usage. Use glibc memfd_create directly when available (assumed so when MFD_ALLOW_SEALING is defined). A following commit will make the project standalone and check for memfd API at configure time, instead of a panic at runtime. Signed-off-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Stefan Hajnoczi Message-Id: <20201125100640.366523-3-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/libvhost-user/libvhost-user.c | 50 +++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 7 deletions(-) diff --git a/contrib/libvhost-user/libvhost-user.c b/contrib/libvhost-user/= libvhost-user.c index 1c1cfbf1e7..54aabd1878 100644 --- a/contrib/libvhost-user/libvhost-user.c +++ b/contrib/libvhost-user/libvhost-user.c @@ -42,8 +42,6 @@ #endif =20 #include "qemu/atomic.h" -#include "qemu/osdep.h" -#include "qemu/memfd.h" =20 #include "libvhost-user.h" =20 @@ -1615,11 +1613,45 @@ vu_inflight_queue_size(uint16_t queue_size) sizeof(uint16_t), INFLIGHT_ALIGNMENT); } =20 +#ifdef MFD_ALLOW_SEALING +static void * +memfd_alloc(const char *name, size_t size, unsigned int flags, int *fd) +{ + void *ptr; + int ret; + + *fd =3D memfd_create(name, MFD_ALLOW_SEALING); + if (*fd < 0) { + return NULL; + } + + ret =3D ftruncate(*fd, size); + if (ret < 0) { + close(*fd); + return NULL; + } + + ret =3D fcntl(*fd, F_ADD_SEALS, flags); + if (ret < 0) { + close(*fd); + return NULL; + } + + ptr =3D mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, *fd, 0); + if (ptr =3D=3D MAP_FAILED) { + close(*fd); + return NULL; + } + + return ptr; +} +#endif + static bool vu_get_inflight_fd(VuDev *dev, VhostUserMsg *vmsg) { - int fd; - void *addr; + int fd =3D -1; + void *addr =3D NULL; uint64_t mmap_size; uint16_t num_queues, queue_size; =20 @@ -1637,9 +1669,13 @@ vu_get_inflight_fd(VuDev *dev, VhostUserMsg *vmsg) =20 mmap_size =3D vu_inflight_queue_size(queue_size) * num_queues; =20 - addr =3D qemu_memfd_alloc("vhost-inflight", mmap_size, - F_SEAL_GROW | F_SEAL_SHRINK | F_SEAL_SEAL, - &fd, NULL); +#ifdef MFD_ALLOW_SEALING + addr =3D memfd_alloc("vhost-inflight", mmap_size, + F_SEAL_GROW | F_SEAL_SHRINK | F_SEAL_SEAL, + &fd); +#else + vu_panic(dev, "Not implemented: memfd support is missing"); +#endif =20 if (!addr) { vu_panic(dev, "Failed to alloc vhost inflight area"); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547495; cv=none; d=zohomail.com; s=zohoarc; b=hhbALL4St4lta5fw2q1UDOfulaPdLOkD4HIs/QHxHN0YQUobw2EOGy/6AyX8yliPnrtyecIQgm1/jFPgmhSJbRTuWNgshHm5e0yRO99t+i6T8rGH/yBO7NM8ZCc6XXq0D/LxKRcUqKc8ob63cKUulpjvzrkkbsYx9/k0UPKGdEU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547495; 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=Urg1ebOe/xpAwplm9XU6ObuQmhPirq/STMsGbdggf6A=; b=e+jOZI3czn0egP0f8DuyFm68gczPMvV2232saoXvP/nNFmmSY3W5DiadG9npdha4L61Nb6IgU40p12KN1ctmQu/GpK8U4K8zm0pK5dealJZ9mwVxT+2UgkA+dxo21yspiqhCXxwIwWf+gGKvBsvyY8bHZt/Ib831VQ34rfpMN+Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547495439165.52136369965; Wed, 9 Dec 2020 12:58:15 -0800 (PST) Received: from localhost ([::1]:38540 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4dj-00043d-QM for importer@patchew.org; Wed, 09 Dec 2020 13:56:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52952) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3uv-0004Ec-9c for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:21 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:36441) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3us-0000CR-F7 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:21 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-342-BePgo-SeMVWMMkTxh92NXA-1; Wed, 09 Dec 2020 13:10:15 -0500 Received: by mail-wr1-f71.google.com with SMTP id d2so961820wrr.5 for ; Wed, 09 Dec 2020 10:10:15 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id m81sm5109763wmf.29.2020.12.09.10.10.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537417; h=from:from: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; bh=Urg1ebOe/xpAwplm9XU6ObuQmhPirq/STMsGbdggf6A=; b=TC//JT631MSOGJ7nIcMUBon0w50yuF8UdIV5kQsUyZYAZlJDcb1SgUy5JxwehnNKKX9KK+ bLLsFrzNyiWoKvZNEsbbfW5d5I6boyc1KfNSOfmQ6bIUlRlxXwh7VhWE91u+X8BB68u39G aFn+m/j+wUWkCvhkQzh97kZ4ezhzn78= X-MC-Unique: BePgo-SeMVWMMkTxh92NXA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=Urg1ebOe/xpAwplm9XU6ObuQmhPirq/STMsGbdggf6A=; b=jeNBYbNYs5iaONfI1QlxD0xiBvIaN9iuxndbFNp0xrKuMHEW8kn/t7Ly2JoVAvEHEe VDXwLRbLMdjM0+N1osrGVhu0zDs2xkKh1AMW65TrkcaZuCWR81Ec773akyVN4oyMGULP LE01fp0v6yAOGEprxL00ESWhaVGNh3ZmnlRgrkjoLKwOcoe8YPjO71M7OTKQ8ayjBcvK 7uxOgjC7W/AIpMc08TpFIXTX1aSVnidID8GJZq6ZVN/FkRs1Uo3su+s61B98KLFCvOlL RGHQ3ShFyl1ONeT/We/X5d2uLxgTF/vM6ciqrko6TM3JU9sMw5TEagH4SZi8UIijCOQO WVaA== X-Gm-Message-State: AOAM530Ad6Cgw6ijf4I6sLI/mqVjG9ym6nGZBLNZmA2jAwWWMbFx9X3Y Xr0B+xta/zbNOY1tWl17o3EXh/feU/+9NhJzhgqq9vxrLakA7n5wV6IBNczTtldIh8OuCYahTM5 eZ3JgZ4FWP7YiKDa3Jv6moYDmGfDXk0LtunnlDtOKoCa7wFVT3mxc/U0D9P83 X-Received: by 2002:adf:e4ca:: with SMTP id v10mr4155372wrm.260.1607537414121; Wed, 09 Dec 2020 10:10:14 -0800 (PST) X-Google-Smtp-Source: ABdhPJyXxrVXuR+evYQHYP3HgLS852mkJeE4Wvsiy3T/wuv2Q0/X+v57zUR+h4K2yhDHDNjFDL3yXA== X-Received: by 2002:adf:e4ca:: with SMTP id v10mr4155355wrm.260.1607537413959; Wed, 09 Dec 2020 10:10:13 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:11 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 46/65] libvhost-user: remove qemu/compiler.h usage Message-ID: <20201209180546.721296-47-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Raphael Norwitz , Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau Signed-off-by: Marc-Andr=C3=A9 Lureau Message-Id: <20201125100640.366523-4-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/libvhost-user/libvhost-user.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/contrib/libvhost-user/libvhost-user.c b/contrib/libvhost-user/= libvhost-user.c index 54aabd1878..fab7ca17ee 100644 --- a/contrib/libvhost-user/libvhost-user.c +++ b/contrib/libvhost-user/libvhost-user.c @@ -27,7 +27,6 @@ #include #include #include -#include "qemu/compiler.h" =20 #if defined(__linux__) #include @@ -60,6 +59,10 @@ /* Round number up to multiple */ #define ALIGN_UP(n, m) ALIGN_DOWN((n) + (m) - 1, (m)) =20 +#ifndef unlikely +#define unlikely(x) __builtin_expect(!!(x), 0) +#endif + /* Align each region to cache line size in inflight buffer */ #define INFLIGHT_ALIGNMENT 64 =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607540952; cv=none; d=zohomail.com; s=zohoarc; b=BOQRkXzXFqu01Go22QVwn8uLxPVNBNaNg9pidp2kWAjIGAxaemqAzCf7Z9gbz0SISfyIZXFuHShUnVt6GDJWJkZOk+EjG/wt4sohioUUtXBJlWtmg7P7Fj09gVwjiXHwY19Ri2XLBKUmxaWXLrhVlWh2uX2cSyBJmkKfSaQVvCs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607540952; 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=sHE/uRm8PGtDDHGDXS1NURqOE/Q/b84pUZq/OaljFlE=; b=S4bmzrLbc7pw6hnLKmMdmRbiFp7Zg7sS0KdRXmbtgBEYcaidn8q90VkXFPbrQRtzBJ7miaxBx75sOt0SApiFv64WZ5XicLe2R/XNF509+3MHL7hvzFajWCcIZKcgJ6fkF7Aq8GZZc1Nv5ZFKEycwpdO8NA2Mihm3or3rRjv9cpM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160754095285831.751081717521288; Wed, 9 Dec 2020 11:09:12 -0800 (PST) Received: from localhost ([::1]:58630 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4pr-0004P6-H7 for importer@patchew.org; Wed, 09 Dec 2020 14:09:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52968) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3ux-0004Hj-Ka for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:43070) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3uu-0000Da-Uq for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:22 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-156-wFQuvWj4MfmONicQHjgWPA-1; Wed, 09 Dec 2020 13:10:18 -0500 Received: by mail-wm1-f69.google.com with SMTP id f187so874696wme.3 for ; Wed, 09 Dec 2020 10:10:17 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id y7sm4773705wmb.37.2020.12.09.10.10.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537420; h=from:from: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; bh=sHE/uRm8PGtDDHGDXS1NURqOE/Q/b84pUZq/OaljFlE=; b=YNDhXy8GwOzfOkA9/GifAub4qNug6PG9QqV4XH9aOlSaULCwX8Q6vPSLYvTSTR/8fc1VPa wqcTyNu98c6fn1WJUcM/cj/zkhkI1emndLMtSVlif74srx8wguIkcBsV4Cg3udSak4TKhm tmqq0MkMoOEzTqM5IinmB2rTOfHgY3U= X-MC-Unique: wFQuvWj4MfmONicQHjgWPA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=sHE/uRm8PGtDDHGDXS1NURqOE/Q/b84pUZq/OaljFlE=; b=b5OPoi+MYAqRHXFn6D7efWbyV6QYYd0HQI1cqS9SdH4lCmorj4GBgIwUgEUrcLzkxC ZR+qKrv+4mUCkY54kEtllK/FY9tP6mtF3qJF1cbViSf1gRCljFIILm9f0jzZ8dibpYTn tBYGIEH3NywZob7lLeP7Uktj1Gi6PK+ue8qFAdhrl0kcdeoW2bbVX6ZqPdW4qsEMAiWb 82HGbBEY036u4zbEpuax/SpjbU1CY0mUSkwd9XLdv1v6Lb4Xdz7VOOuss3SM6OJpNeog dYScPnVxCGX83wUtEYB4WfCIGbj+fxdnmXf8c5KM7LnHkEcauEdWY/CR5XVP9UWuq+/V 4Tow== X-Gm-Message-State: AOAM532IrLshe77RjULU1FC0WVnDW8ebH/C9+qGx9Ipr3yKyTRg6etrM f/K4pHJNsbdR3GqdhRmZA5tnYQS9iUYZt8pmOUXoF+uLdmB4VXa++TaQ+BSfE6F4AMPLJo6n9mD +YrjLt5TCMVNRDP563nLpv3LoD8MtPhhQBNcwHutiVJSwh40ScNppeB2Zb6Qx X-Received: by 2002:adf:f143:: with SMTP id y3mr4075870wro.138.1607537416528; Wed, 09 Dec 2020 10:10:16 -0800 (PST) X-Google-Smtp-Source: ABdhPJzkF+Ks/q0BeYsmKhg6tRWXbUbZBcwW4AgZAZRPrMuv83Ej0LIPX2kz+oGrPt0klt6NLOWQng== X-Received: by 2002:adf:f143:: with SMTP id y3mr4075845wro.138.1607537416372; Wed, 09 Dec 2020 10:10:16 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:14 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 47/65] libvhost-user: drop qemu/osdep.h dependency Message-ID: <20201209180546.721296-48-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Coiby Xu , Johannes Berg , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau Signed-off-by: Marc-Andr=C3=A9 Lureau Message-Id: <20201125100640.366523-5-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/libvhost-user/libvhost-user-glib.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/contrib/libvhost-user/libvhost-user-glib.c b/contrib/libvhost-= user/libvhost-user-glib.c index 0df2ec9271..efc9d814e3 100644 --- a/contrib/libvhost-user/libvhost-user-glib.c +++ b/contrib/libvhost-user/libvhost-user-glib.c @@ -12,10 +12,16 @@ * later. See the COPYING file in the top-level directory. */ =20 -#include "qemu/osdep.h" - #include "libvhost-user-glib.h" =20 +#ifndef container_of +#define container_of(ptr, type, member) \ + __extension__({ \ + void *__mptr =3D (void *)(ptr); \ + ((type *)(__mptr - offsetof(type, member))); \ + }) +#endif + /* glib event loop integration for libvhost-user and misc callbacks */ =20 G_STATIC_ASSERT((int)G_IO_IN =3D=3D (int)VU_WATCH_IN); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607541043; cv=none; d=zohomail.com; s=zohoarc; b=gg9Xzg7JrNMVV4QM0y6oEhf0offvORhuwyhZDP5e4mK7Wvdnu3LAbnrN8vsPKf4cPnLZKQ14/REOnxGO4bI5ont/pq0GzMiD8qYHpRVnTXEWFzg7l7RbdlLplNLwnLbk22UoMDJEC92VEZMBmyIF0+9rdCxTuZvvfHvq8dawGBE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607541043; 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=dV+7BzXez4+ny3udEAvAWmvm0532zQlUP4+qQ+UHZ0k=; b=UKh0qybBjoq1AhJX5B/5AYrb4ZadU1MlsMwKt/AYqChlU2cZemqlY8mzQlfJ2qskJePha06HwC6EsCxyk1oYGtEt2ZIa1CPZONTvTcJuxEq3Y+S9I5xmv+EwCNneYsp5EhYfDovEVEFrLj8OvW2JbFpB08rEcwgPQPQxSavdGK0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607541042939274.3968395097477; Wed, 9 Dec 2020 11:10:42 -0800 (PST) Received: from localhost ([::1]:47158 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4gN-0007ZV-LF for importer@patchew.org; Wed, 09 Dec 2020 13:59:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53032) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3v4-0004Sb-Lu for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:34 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:52719) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3v0-0000Fn-VL for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:30 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-400-DWWoNb0-OYy-LiK6CuM7aw-1; Wed, 09 Dec 2020 13:10:23 -0500 Received: by mail-wr1-f70.google.com with SMTP id v1so949717wri.16 for ; Wed, 09 Dec 2020 10:10:23 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id i11sm4845223wmd.47.2020.12.09.10.10.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537426; h=from:from: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; bh=dV+7BzXez4+ny3udEAvAWmvm0532zQlUP4+qQ+UHZ0k=; b=TpmSz6Yl/VreYCmYzuU+ErC9CrcaM+oQLBofHraKIjBnCSg7f18g4KYD28138/F1dxzAt3 owHz+u+RdHV9PK7Sv4iqtDBvHIRo8uFzSRHaslNQ18QSUtCZDhFrdtH/fOcTxmQYv+45gb ZRqzSkb/uRME2puaP2jzfpllFkFJJI4= X-MC-Unique: DWWoNb0-OYy-LiK6CuM7aw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=dV+7BzXez4+ny3udEAvAWmvm0532zQlUP4+qQ+UHZ0k=; b=O79nep061hSRrMcra6kDa76pwKOmyOLw+e2rxhXa2v8/qINgbGNuQ8uqQPrcOHmJVz oseUce4tPRNfM5Y3Lg2/x+j4/E3jn4yslJ7Oyl5exCF8hB+DXz1E5YUR6Tz74hw6pP7T DLgJ6ABuy9Mikj1sjT6Z3Wfr5COBCtCNBzaXV0hDJrSPK1V1YbWKDqiKKjlB/icjm2cl MdND7rs/PZDNeM0YXqjIq024pg5wZ6AEOYAfCx73IFgIJWNb4PSOrSyQqzZ6Uo/DJPC/ Nv4Jy5Ti3V+FkVjrGE2P1jcucaRJGM/IYvd1curjiYVcR90xdpk41oWMLo5HEGfueQZf dMiA== X-Gm-Message-State: AOAM533qOT3A+dFr8ToUmjKA3SPb4HuRbmUag9K5b86MGFs5/3PLbegn 9lQuqzgMYTI5hCUXnVZRYUF0+w6KnPSRlAhAX2ECdNFAvazqY1I4f1ZT4pBbmuN4syN0UXkpORx qxxSA4iywYyaxzINcFepojdXdqKia1RAyfa8VSvQH0HTJF9mVNStqzvlXQJjw X-Received: by 2002:a1c:bd43:: with SMTP id n64mr4074962wmf.169.1607537421970; Wed, 09 Dec 2020 10:10:21 -0800 (PST) X-Google-Smtp-Source: ABdhPJxvX7fhdA2rbKE4mrE/Ss+F5WvwV50RafAyw56X3JTQVpLb3LHLWOAt5n1r76O9565PS5dhew== X-Received: by 2002:a1c:bd43:: with SMTP id n64mr4074931wmf.169.1607537421681; Wed, 09 Dec 2020 10:10:21 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:16 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 48/65] libvhost-user: make it a meson subproject Message-ID: <20201209180546.721296-49-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Peter Maydell , qemu-block@nongnu.org, "Dr. David Alan Gilbert" , Coiby Xu , Raphael Norwitz , Gerd Hoffmann , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , Max Reitz Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau By making libvhost-user a subproject, check it builds standalone (without the global QEMU cflags etc). Note that the library still relies on QEMU include/qemu/atomic.h and linux_headers/. Signed-off-by: Marc-Andr=C3=A9 Lureau Message-Id: <20201125100640.366523-6-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/vhost-user-gpu/vugpu.h | 2 +- include/qemu/vhost-user-server.h | 2 +- .../libvhost-user/libvhost-user-glib.h | 0 .../libvhost-user/libvhost-user.h | 0 block/export/vhost-user-blk-server.c | 2 +- contrib/vhost-user-blk/vhost-user-blk.c | 3 +-- contrib/vhost-user-input/main.c | 3 +-- contrib/vhost-user-scsi/vhost-user-scsi.c | 2 +- .../libvhost-user/libvhost-user-glib.c | 0 .../libvhost-user/libvhost-user.c | 0 tests/vhost-user-bridge.c | 2 +- tools/virtiofsd/fuse_virtio.c | 2 +- contrib/libvhost-user/meson.build | 4 ---- contrib/vhost-user-blk/meson.build | 3 +-- contrib/vhost-user-gpu/meson.build | 3 +-- contrib/vhost-user-input/meson.build | 3 +-- contrib/vhost-user-scsi/meson.build | 3 +-- meson.build | 7 ++++++- subprojects/libvhost-user/meson.build | 20 +++++++++++++++++++ tests/meson.build | 3 +-- tools/virtiofsd/meson.build | 3 +-- 21 files changed, 40 insertions(+), 27 deletions(-) rename {contrib =3D> subprojects}/libvhost-user/libvhost-user-glib.h (100%) rename {contrib =3D> subprojects}/libvhost-user/libvhost-user.h (100%) rename {contrib =3D> subprojects}/libvhost-user/libvhost-user-glib.c (100%) rename {contrib =3D> subprojects}/libvhost-user/libvhost-user.c (100%) delete mode 100644 contrib/libvhost-user/meson.build create mode 100644 subprojects/libvhost-user/meson.build diff --git a/contrib/vhost-user-gpu/vugpu.h b/contrib/vhost-user-gpu/vugpu.h index 3153c9a6de..bdf9a74b46 100644 --- a/contrib/vhost-user-gpu/vugpu.h +++ b/contrib/vhost-user-gpu/vugpu.h @@ -17,7 +17,7 @@ =20 #include "qemu/osdep.h" =20 -#include "contrib/libvhost-user/libvhost-user-glib.h" +#include "libvhost-user-glib.h" #include "standard-headers/linux/virtio_gpu.h" =20 #include "qemu/queue.h" diff --git a/include/qemu/vhost-user-server.h b/include/qemu/vhost-user-ser= ver.h index 0da4c2cc4c..121ea1dedf 100644 --- a/include/qemu/vhost-user-server.h +++ b/include/qemu/vhost-user-server.h @@ -11,7 +11,7 @@ #ifndef VHOST_USER_SERVER_H #define VHOST_USER_SERVER_H =20 -#include "contrib/libvhost-user/libvhost-user.h" +#include "subprojects/libvhost-user/libvhost-user.h" /* only for the type = definitions */ #include "io/channel-socket.h" #include "io/channel-file.h" #include "io/net-listener.h" diff --git a/contrib/libvhost-user/libvhost-user-glib.h b/subprojects/libvh= ost-user/libvhost-user-glib.h similarity index 100% rename from contrib/libvhost-user/libvhost-user-glib.h rename to subprojects/libvhost-user/libvhost-user-glib.h diff --git a/contrib/libvhost-user/libvhost-user.h b/subprojects/libvhost-u= ser/libvhost-user.h similarity index 100% rename from contrib/libvhost-user/libvhost-user.h rename to subprojects/libvhost-user/libvhost-user.h diff --git a/block/export/vhost-user-blk-server.c b/block/export/vhost-user= -blk-server.c index 62672d1cb9..a3d95ca012 100644 --- a/block/export/vhost-user-blk-server.c +++ b/block/export/vhost-user-blk-server.c @@ -11,7 +11,7 @@ */ #include "qemu/osdep.h" #include "block/block.h" -#include "contrib/libvhost-user/libvhost-user.h" +#include "subprojects/libvhost-user/libvhost-user.h" /* only for the type = definitions */ #include "standard-headers/linux/virtio_blk.h" #include "qemu/vhost-user-server.h" #include "vhost-user-blk-server.h" diff --git a/contrib/vhost-user-blk/vhost-user-blk.c b/contrib/vhost-user-b= lk/vhost-user-blk.c index dc981bf945..6abd7835a8 100644 --- a/contrib/vhost-user-blk/vhost-user-blk.c +++ b/contrib/vhost-user-blk/vhost-user-blk.c @@ -17,8 +17,7 @@ =20 #include "qemu/osdep.h" #include "standard-headers/linux/virtio_blk.h" -#include "contrib/libvhost-user/libvhost-user-glib.h" -#include "contrib/libvhost-user/libvhost-user.h" +#include "libvhost-user-glib.h" =20 #if defined(__linux__) #include diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/mai= n.c index 6020c6f33a..3ea840cf44 100644 --- a/contrib/vhost-user-input/main.c +++ b/contrib/vhost-user-input/main.c @@ -12,8 +12,7 @@ #include "qemu/iov.h" #include "qemu/bswap.h" #include "qemu/sockets.h" -#include "contrib/libvhost-user/libvhost-user.h" -#include "contrib/libvhost-user/libvhost-user-glib.h" +#include "libvhost-user-glib.h" #include "standard-headers/linux/virtio_input.h" #include "qapi/error.h" =20 diff --git a/contrib/vhost-user-scsi/vhost-user-scsi.c b/contrib/vhost-user= -scsi/vhost-user-scsi.c index 4639440a70..4f6e3e2a24 100644 --- a/contrib/vhost-user-scsi/vhost-user-scsi.c +++ b/contrib/vhost-user-scsi/vhost-user-scsi.c @@ -15,7 +15,7 @@ #define inline __attribute__((gnu_inline)) /* required for libiscsi v1.9.= 0 */ #include #undef inline -#include "contrib/libvhost-user/libvhost-user-glib.h" +#include "libvhost-user-glib.h" #include "standard-headers/linux/virtio_scsi.h" =20 =20 diff --git a/contrib/libvhost-user/libvhost-user-glib.c b/subprojects/libvh= ost-user/libvhost-user-glib.c similarity index 100% rename from contrib/libvhost-user/libvhost-user-glib.c rename to subprojects/libvhost-user/libvhost-user-glib.c diff --git a/contrib/libvhost-user/libvhost-user.c b/subprojects/libvhost-u= ser/libvhost-user.c similarity index 100% rename from contrib/libvhost-user/libvhost-user.c rename to subprojects/libvhost-user/libvhost-user.c diff --git a/tests/vhost-user-bridge.c b/tests/vhost-user-bridge.c index bd43607a4d..24815920b2 100644 --- a/tests/vhost-user-bridge.c +++ b/tests/vhost-user-bridge.c @@ -34,7 +34,7 @@ #include "qemu/ctype.h" #include "qemu/iov.h" #include "standard-headers/linux/virtio_net.h" -#include "contrib/libvhost-user/libvhost-user.h" +#include "libvhost-user.h" =20 #define VHOST_USER_BRIDGE_DEBUG 1 =20 diff --git a/tools/virtiofsd/fuse_virtio.c b/tools/virtiofsd/fuse_virtio.c index 83ba07c6cd..623812c432 100644 --- a/tools/virtiofsd/fuse_virtio.c +++ b/tools/virtiofsd/fuse_virtio.c @@ -35,7 +35,7 @@ #include #include =20 -#include "contrib/libvhost-user/libvhost-user.h" +#include "libvhost-user.h" =20 struct fv_VuDev; struct fv_QueueInfo { diff --git a/contrib/libvhost-user/meson.build b/contrib/libvhost-user/meso= n.build deleted file mode 100644 index a261e7665f..0000000000 --- a/contrib/libvhost-user/meson.build +++ /dev/null @@ -1,4 +0,0 @@ -libvhost_user =3D static_library('vhost-user', - files('libvhost-user.c', 'libvhost-user-gli= b.c'), - build_by_default: false) -vhost_user =3D declare_dependency(link_with: libvhost_user) diff --git a/contrib/vhost-user-blk/meson.build b/contrib/vhost-user-blk/me= son.build index 5db8cc3fe2..601ea15ef5 100644 --- a/contrib/vhost-user-blk/meson.build +++ b/contrib/vhost-user-blk/meson.build @@ -1,6 +1,5 @@ # FIXME: broken on 32-bit architectures executable('vhost-user-blk', files('vhost-user-blk.c'), - link_with: libvhost_user, - dependencies: qemuutil, + dependencies: [qemuutil, vhost_user], build_by_default: false, install: false) diff --git a/contrib/vhost-user-gpu/meson.build b/contrib/vhost-user-gpu/me= son.build index c487ca72c1..2fc2320b52 100644 --- a/contrib/vhost-user-gpu/meson.build +++ b/contrib/vhost-user-gpu/meson.build @@ -2,8 +2,7 @@ if 'CONFIG_TOOLS' in config_host and 'CONFIG_VIRGL' in conf= ig_host \ and 'CONFIG_GBM' in config_host and 'CONFIG_LINUX' in config_host \ and pixman.found() executable('vhost-user-gpu', files('vhost-user-gpu.c', 'virgl.c', 'vugbm= .c'), - link_with: libvhost_user, - dependencies: [qemuutil, pixman, gbm, virgl], + dependencies: [qemuutil, pixman, gbm, virgl, vhost_user], install: true, install_dir: get_option('libexecdir')) =20 diff --git a/contrib/vhost-user-input/meson.build b/contrib/vhost-user-inpu= t/meson.build index 1eeb1329d9..21a9ed4f15 100644 --- a/contrib/vhost-user-input/meson.build +++ b/contrib/vhost-user-input/meson.build @@ -1,5 +1,4 @@ executable('vhost-user-input', files('main.c'), - link_with: libvhost_user, - dependencies: qemuutil, + dependencies: [qemuutil, vhost_user], build_by_default: targetos =3D=3D 'linux', install: false) diff --git a/contrib/vhost-user-scsi/meson.build b/contrib/vhost-user-scsi/= meson.build index 257cbffc8e..044c50bf43 100644 --- a/contrib/vhost-user-scsi/meson.build +++ b/contrib/vhost-user-scsi/meson.build @@ -1,7 +1,6 @@ if 'CONFIG_LIBISCSI' in config_host executable('vhost-user-scsi', files('vhost-user-scsi.c'), - link_with: libvhost_user, - dependencies: [qemuutil, libiscsi], + dependencies: [qemuutil, libiscsi, vhost_user], build_by_default: targetos =3D=3D 'linux', install: false) endif diff --git a/meson.build b/meson.build index e3386196ba..732b29a1f3 100644 --- a/meson.build +++ b/meson.build @@ -1475,7 +1475,12 @@ trace_events_subdirs +=3D [ 'util', ] =20 -subdir('contrib/libvhost-user') +vhost_user =3D not_found +if 'CONFIG_VHOST_USER' in config_host + libvhost_user =3D subproject('libvhost-user') + vhost_user =3D libvhost_user.get_variable('vhost_user_dep') +endif + subdir('qapi') subdir('qobject') subdir('stubs') diff --git a/subprojects/libvhost-user/meson.build b/subprojects/libvhost-u= ser/meson.build new file mode 100644 index 0000000000..f9ecc534cf --- /dev/null +++ b/subprojects/libvhost-user/meson.build @@ -0,0 +1,20 @@ +project('libvhost-user', 'c', + license: 'GPL-2.0-or-later', + default_options: ['c_std=3Dgnu99']) + +glib =3D dependency('glib-2.0') +inc =3D include_directories('../../include', '../../linux-headers') + +vhost_user =3D static_library('vhost-user', + files('libvhost-user.c'), + include_directories: inc, + c_args: '-D_GNU_SOURCE') + +vhost_user_glib =3D static_library('vhost-user-glib', + files('libvhost-user-glib.c'), + include_directories: inc, + link_with: vhost_user, + dependencies: glib) + +vhost_user_dep =3D declare_dependency(link_with: vhost_user_glib, + include_directories: include_directori= es('.')) diff --git a/tests/meson.build b/tests/meson.build index afeb6be689..1fa068f27b 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -264,8 +264,7 @@ endforeach if have_tools and 'CONFIG_VHOST_USER' in config_host and 'CONFIG_LINUX' in= config_host executable('vhost-user-bridge', sources: files('vhost-user-bridge.c'), - link_with: [libvhost_user], - dependencies: [qemuutil]) + dependencies: [qemuutil, vhost_user]) endif =20 if have_system and 'CONFIG_POSIX' in config_host diff --git a/tools/virtiofsd/meson.build b/tools/virtiofsd/meson.build index 17edecf55c..c134ba633f 100644 --- a/tools/virtiofsd/meson.build +++ b/tools/virtiofsd/meson.build @@ -8,8 +8,7 @@ executable('virtiofsd', files( 'helper.c', 'passthrough_ll.c', 'passthrough_seccomp.c'), - link_with: libvhost_user, - dependencies: [seccomp, qemuutil, libcap_ng], + dependencies: [seccomp, qemuutil, libcap_ng, vhost_user], install: true, install_dir: get_option('libexecdir')) =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545952; cv=none; d=zohomail.com; s=zohoarc; b=OeFai1XBVxdew+BlL1U7AS/NZxutq/yKey3ZslRjtJT0qmiotFzguwSWa/ILPQ0F3R/aoBFRIzhSr0FPvFQ1eGjiIPVfojDDsiXG55PMYbM6DHgGjzZ4lFFV2/l8gfUBuIQS3Y2C869ONnfLxMZXUL9r8PIc4lwl0DCf1hkCXPI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545952; 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=CzVoIxs6E5ptAqHbJl78aZsMpj56N2mlPns6mKQv8Vo=; b=NslvyufpGKp/uEUiKKlISTA5JYdMgLmAKol5jCUvEmh+z9Xc+869aNfWNb9u5wR1SadWlSBirjskneG3P8eHURBwCCBLNJMQ6iIkosgRMrk4QvSwNZ6SoB70/u8kkQAO+NtFNBL+5snUClzdJuOfA1C0WwqJ87+m+AkiP4n1iw4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16075459524641017.4628273189611; Wed, 9 Dec 2020 12:32:32 -0800 (PST) Received: from localhost ([::1]:55666 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4nU-00030E-OS for importer@patchew.org; Wed, 09 Dec 2020 14:06:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53078) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vA-0004UL-CV for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:39 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:23893) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3v4-0000Gb-A1 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:33 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-431-wlevd-3XOFmDcCGh2RmJgw-1; Wed, 09 Dec 2020 13:10:26 -0500 Received: by mail-wr1-f70.google.com with SMTP id d2so962024wrr.5 for ; Wed, 09 Dec 2020 10:10:26 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id z8sm4853188wmg.17.2020.12.09.10.10.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537428; h=from:from: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; bh=CzVoIxs6E5ptAqHbJl78aZsMpj56N2mlPns6mKQv8Vo=; b=b9kgOifEvpNTpLyEDARek91LxllfqT4U4Ae7NR9JyIN+rpeJLF7FxM4yvZZp84TDMjt4xU /uMbLtt77iS8VPGuo554YSWorca3mrDq23XSkbBRQwxbSbcCVJv5IFDu7l6ikq5x1ehCud cP67mjtVEBtKBRaBVKwJP77GsFN655o= X-MC-Unique: wlevd-3XOFmDcCGh2RmJgw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=CzVoIxs6E5ptAqHbJl78aZsMpj56N2mlPns6mKQv8Vo=; b=A759yHTNrAV6vMNaspttvlvN5CrrImUp+A4k3yTMj0rAwQYjgb0UQ9Sk/GyvyYT6Ds E1XzLwqB2VT9kCWVbeEdD6PaOBQ3DUQITgZKF7qnA0RiR8VWhr/EJp9pxDFiB8GmjyKs ZzLQJMEkUYUpiy2HlQVeWH7hBkExLCOWzPs6+gissULdC1ti7niDz91LSMgvMm9vH4m+ CCYobGUXA7264WxVLQn++OieYdVFlIZN2ittDzY2fKEbD6HhokCd0rrFPNeRunc10MNU Apj+5uHHytOiNRPUJZ4Jpu2GRdMHlawCTPGQFpAzkvRJkOb4TdN12Lrs0VHzRSxU72BJ tjNg== X-Gm-Message-State: AOAM533vX2H4vrREvQq5VsvXB4Of4yxczJ8aHXx4C5xFOUvK9L/xN/ie xczTmWCYC9+tRbeEXbWfMYgB93rl0+ubfYGzARKgyYRr/G2tk9uk3L23lPc9+kVIcFNbXje1DOe y+0HaDbe36ou9otvwSxiLIst1bDzr6Z0cvHF/vCY372IMMBmZFNX46e51ScMj X-Received: by 2002:adf:ba91:: with SMTP id p17mr4050567wrg.328.1607537425147; Wed, 09 Dec 2020 10:10:25 -0800 (PST) X-Google-Smtp-Source: ABdhPJzjAV5+F4dn91fGd3gM/kKUvMIwO+1OgjMfh5gnyiJgoCaehjYvJLcJ5LLyO33xUJ8YZ+bK0g== X-Received: by 2002:adf:ba91:: with SMTP id p17mr4050550wrg.328.1607537424983; Wed, 09 Dec 2020 10:10:24 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:22 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 49/65] libvhost-user: add a simple link test without glib Message-ID: <20201209180546.721296-50-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) From: Marc-Andr=C3=A9 Lureau Signed-off-by: Marc-Andr=C3=A9 Lureau Message-Id: <20201125100640.366523-8-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- subprojects/libvhost-user/link-test.c | 45 +++++++++++++++++++++++++++ subprojects/libvhost-user/meson.build | 4 +++ 2 files changed, 49 insertions(+) create mode 100644 subprojects/libvhost-user/link-test.c diff --git a/subprojects/libvhost-user/link-test.c b/subprojects/libvhost-u= ser/link-test.c new file mode 100644 index 0000000000..e01d6eb1fa --- /dev/null +++ b/subprojects/libvhost-user/link-test.c @@ -0,0 +1,45 @@ +/* + * A trivial unit test to check linking without glib. A real test suite sh= ould + * probably based off libvhost-user-glib instead. + */ +#include +#include +#include "libvhost-user.h" + +static void +panic(VuDev *dev, const char *err) +{ + abort(); +} + +static void +set_watch(VuDev *dev, int fd, int condition, + vu_watch_cb cb, void *data) +{ + abort(); +} + +static void +remove_watch(VuDev *dev, int fd) +{ + abort(); +} + +static const VuDevIface iface =3D { + 0, +}; + +int +main(int argc, const char *argv[]) +{ + bool rc; + uint16_t max_queues =3D 2; + int socket =3D 0; + VuDev dev =3D { 0, }; + + rc =3D vu_init(&dev, max_queues, socket, panic, NULL, set_watch, remov= e_watch, &iface); + assert(rc =3D=3D true); + vu_deinit(&dev); + + return 0; +} diff --git a/subprojects/libvhost-user/meson.build b/subprojects/libvhost-u= ser/meson.build index f9ecc534cf..c5d85c11d7 100644 --- a/subprojects/libvhost-user/meson.build +++ b/subprojects/libvhost-user/meson.build @@ -10,6 +10,10 @@ vhost_user =3D static_library('vhost-user', include_directories: inc, c_args: '-D_GNU_SOURCE') =20 +executable('link-test', files('link-test.c'), + link_whole: vhost_user, + include_directories: inc) + vhost_user_glib =3D static_library('vhost-user-glib', files('libvhost-user-glib.c'), include_directories: inc, --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547073; cv=none; d=zohomail.com; s=zohoarc; b=oEOG867+vHxIw8qyhJt9W78yO9EEBQj9xjWPfWlxByc+Ifx90zp5UwyQbCGwiT1bp3xLBYeqYuGKGGLMf7fyc07IO6XepxRfwnVvwr9heOUv3i+SOnboX9i6jnxW31PILot1OYMZcyrAzxvYrEQhfPfSj2/oRDHSKQL497d8KK4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547073; 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=Cmy8dzKxb5dkMOpVo6KH3hOeRH+OpUhJIkOvuYngI4A=; b=PyWNpQL52iBhHmG9DddAGKRsFO5lu9a2joHD8GeMMFk76oSZ+4PrV8BPHdoKqxgHRjzwjevV3ym0HBuzg/4WPt3hnl9PNqrVcAUkwN11RD+X2olXw74FrSB61JGT2owfg+wzmbyrYLpHwFfJIrxfItuQsieMJ7gtijphtKdBRpw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547073904432.544603663408; Wed, 9 Dec 2020 12:51:13 -0800 (PST) Received: from localhost ([::1]:47308 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4gP-0007dB-Aj for importer@patchew.org; Wed, 09 Dec 2020 13:59:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53146) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vI-0004WW-9X for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:45 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:50286) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vD-0000IS-9N for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:44 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-100-DPhgHuVLOVGzo6t4Kxs8zw-1; Wed, 09 Dec 2020 13:10:31 -0500 Received: by mail-wr1-f72.google.com with SMTP id u29so961086wru.6 for ; Wed, 09 Dec 2020 10:10:31 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id b73sm4953411wmb.0.2020.12.09.10.10.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537434; h=from:from: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; bh=Cmy8dzKxb5dkMOpVo6KH3hOeRH+OpUhJIkOvuYngI4A=; b=FeLs1hMDHLZqYe8zlcqFRYloL25LXMXloeNik62aM5KL/Jhr781MQUg/zwrXcyVFcQYdA6 RLrbytSMQYJ0la4x7RvPMNkqBx+RQRtahR281iIo8NziB9mm+7sC0bpXoDU7grqzhCM30t k4nPw2egAEhAezt8doWiM807HAPak28= X-MC-Unique: DPhgHuVLOVGzo6t4Kxs8zw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=Cmy8dzKxb5dkMOpVo6KH3hOeRH+OpUhJIkOvuYngI4A=; b=c0VWHiU5eO5beTMNcte5nXSBwBuuuMlU2tuOPO/EMzKUqGjWSrjdsWab4/fKCRHlE4 xHsvbSXobnKfBIF/iIlycpKj9C3nj9ZvckzFyiuZLWyyixS5ynKZZneFT1Uqz6hSu9+i 1AQjD8DcSRKVsgz389Dc7RPHkZ0zaJnrbZZtA3YPvhp6g9ocljkeTAQwEkowBcai97QN j3DP8XXMCzQY/hflJfUKkkRc8a5mRe3i2CGeA4n0f5+GY11V9ZIIBeRbhj35kLzjgAjz Ohha3j1wLCyb41IPJfN87Gp++V6UpKdZ0aesBpxyA6k6kBMDYBgY1msphZaHRamuAJq9 WUNw== X-Gm-Message-State: AOAM532y2acPfldNWAAhf9QuULGiIDvBSWao4Mw8bwnkHwTsiwCgnMO2 1h0sq8ZjvxtAr511aZHcDa+gB3GyIhlIRvHm1jpMb9Ao5WMEquNQ7Pi0nePmQHN5Rw4czhLc3DD 70+MY+maRSbTy+aMyIrONDXEzcW+sUuRbEKfnO7TR/NmgSkKgPfqC4RmQWXJ0 X-Received: by 2002:a1c:287:: with SMTP id 129mr4110093wmc.133.1607537429789; Wed, 09 Dec 2020 10:10:29 -0800 (PST) X-Google-Smtp-Source: ABdhPJxKrW82g4cke4f296hrpPx+jS4gHANKCe2mp/m2vEoeLSZLwcf8HepCZi9/q+CGSZX/4IBmrA== X-Received: by 2002:a1c:287:: with SMTP id 129mr4110064wmc.133.1607537429617; Wed, 09 Dec 2020 10:10:29 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:25 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 50/65] .gitlab-ci: add build-libvhost-user Message-ID: <20201209180546.721296-51-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Thomas Huth , Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= , Wainer dos Santos Moschetta , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , Alex =?utf-8?Q?Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Marc-Andr=C3=A9 Lureau Signed-off-by: Marc-Andr=C3=A9 Lureau Message-Id: <20201125100640.366523-9-marcandre.lureau@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- .gitlab-ci.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d0173e82b1..e517506c35 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -455,6 +455,17 @@ check-dco: variables: GIT_DEPTH: 1000 =20 +build-libvhost-user: + stage: build + image: $CI_REGISTRY_IMAGE/qemu/fedora:latest + before_script: + - dnf install -y meson ninja-build + script: + - mkdir subprojects/libvhost-user/build + - cd subprojects/libvhost-user/build + - meson + - ninja + pages: image: $CI_REGISTRY_IMAGE/qemu/ubuntu2004:latest stage: test --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542242; cv=none; d=zohomail.com; s=zohoarc; b=hba9bXiGMoli2+xE7dmS7Bm3hS49p/GXYPRlg4wpBsLF7BICOx2eL4udguqVx06QgX4omnxjGH+ab6qDK698xnwIyq8x7pk4pOawKni7CImQ68550vPOaMr1fd202kJNoKvq4LrueA94bkul+5JE6MEv5KSUd9LLvw7a1Y7z0qc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542242; h=Content-Type: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=j9H1uI5lMJn6lpI26L/tMaP17cyPrnspRPrI7rHkTu4=; b=bkOWARwt47Ddmrm43EM5ztjY1A1w4uqR00q/PRwjk5MyYpvtfOP4l5koG5ZLgYiS9t+EuK6A7nRMZbZWRRZArFIN9KnztFW6EyjAEidRkMsezwvW1qWb8P0YI/u60qihkdyK7lxb8LAdPznBdna6MGow0p3E/It00DtT7jHU/RQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542242322504.89620998298653; Wed, 9 Dec 2020 11:30:42 -0800 (PST) Received: from localhost ([::1]:45168 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn5Af-0006X6-4a for importer@patchew.org; Wed, 09 Dec 2020 14:30:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53156) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vJ-0004XH-LY for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:45 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:40509) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vD-0000Ip-MZ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:45 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-526-KhjGhd-BPmOz4Fj-Ojfe_Q-1; Wed, 09 Dec 2020 13:10:34 -0500 Received: by mail-wr1-f71.google.com with SMTP id 91so943936wrk.17 for ; Wed, 09 Dec 2020 10:10:34 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id o83sm4751803wme.21.2020.12.09.10.10.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537436; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=j9H1uI5lMJn6lpI26L/tMaP17cyPrnspRPrI7rHkTu4=; b=AWmb39hp+2oHYWbjB1BkbV15XIyEs72lF6Cf4cQGDoY71nTf1BeKSBlmOh2Hm6eEHQvLm9 fGD4wsl0WMy23YXbL+9YT/A7MSOWYzijBeBPSSDEYBAA0Ty3dgCcmQtKw/rhqiMBWz+fuT Dg3LsSyEbwt8manzSZpjrf4CvK6vhCA= X-MC-Unique: KhjGhd-BPmOz4Fj-Ojfe_Q-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=j9H1uI5lMJn6lpI26L/tMaP17cyPrnspRPrI7rHkTu4=; b=qGZHIT6Joe0Q7aArsqJ9Ie90FZxe0Q2UsJ6Ls1oL1ToTgCJ7u/R87YQCMFy8UXFiLT TyPFDleSH6gyu4L63jTmJtEaU+onrLZyaWCH3zNn3nTc8E/ubDLswAiXfQ5dKHek7mrZ ufiwq2V7NxwZfsilUTp641uuNPh9nXziDt2WPVraHVHCCS1yaEA3sVc745DIsDKP7qOs fsWIYZFXXvAsJeUUZb9kMtDNRa9KzQRJi98zufhbZ+bFTBArAldf+nJGaD1/eX/Ey08O fjfqDPrz4wj5mwCvUjaIIxFzTsPZMdJEIYMVbjdiGEAFS8bpJDW/QxjZ/kOHd0SsLoU9 HF6Q== X-Gm-Message-State: AOAM533cXb9OMk2wfAvDawRzzmskYjK5cn+oQmalRQzZevGGLpXbsNWC AkBuOoYDqc+pIyczLjyzTwgajV7Ww3woOWirknLbsmmymGcAKaaPH/YpAu7Plw6Bz/oLFAvjC0J gTcTkxjB160ml6hR7seguJ/bO1Y4mFxX27DO41JqrBUCSY/GHSukIgknrSHCk X-Received: by 2002:adf:fb90:: with SMTP id a16mr4084366wrr.192.1607537432914; Wed, 09 Dec 2020 10:10:32 -0800 (PST) X-Google-Smtp-Source: ABdhPJxw/pRfMq3/1LUEIqrYEIeddLspav2kvCZnjxI2Uq3wvOoFM9fYGPB4ST4yTDSyrWGtXzFtYg== X-Received: by 2002:adf:fb90:: with SMTP id a16mr4084345wrr.192.1607537432690; Wed, 09 Dec 2020 10:10:32 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:29 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 51/65] contrib/vhost-user-blk: avoid g_return_val_if() input validation Message-ID: <20201209180546.721296-52-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Markus Armbruster , Stefan Hajnoczi , Raphael Norwitz Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefan Hajnoczi Do not validate input with g_return_val_if(). This API is intended for checking programming errors and is compiled out with -DG_DISABLE_CHECKS. Use an explicit if statement for input validation so it cannot accidentally be compiled out. Suggested-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi Message-Id: <20201118091644.199527-2-stefanha@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/vhost-user-blk/vhost-user-blk.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contrib/vhost-user-blk/vhost-user-blk.c b/contrib/vhost-user-b= lk/vhost-user-blk.c index 6abd7835a8..d14b2896bf 100644 --- a/contrib/vhost-user-blk/vhost-user-blk.c +++ b/contrib/vhost-user-blk/vhost-user-blk.c @@ -403,7 +403,9 @@ vub_get_config(VuDev *vu_dev, uint8_t *config, uint32_t= len) VugDev *gdev; VubDev *vdev_blk; =20 - g_return_val_if_fail(len <=3D sizeof(struct virtio_blk_config), -1); + if (len > sizeof(struct virtio_blk_config)) { + return -1; + } =20 gdev =3D container_of(vu_dev, VugDev, parent); vdev_blk =3D container_of(gdev, VubDev, parent); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607545428; cv=none; d=zohomail.com; s=zohoarc; b=Z6u1UhihOVOFwwQD6A9jGccvBABbIyiuIqH2kn9OCKg3KcaIz3Jm592h2SSX6DAyymv6QtQMshC7G3eUGrdCzTzHEm9M8r5/qL5Z4lAKxnoC6+RbwywTR+JKiJyRLN0l1cl5qbegQuu1GY6kL12ooGHrlIPwQz2LYSfFpox0WBY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607545428; h=Content-Type: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=c0kBt8I1oCPYpFP4q5PRaWZkMHzl2YDLms+Egf+MHrY=; b=E0FtjHETu+HWN8wgfmUddeXs1xy2g09qKZzGrM7oROP6aRWJ3upSMScGHpcqhvHXLjA7e7TAjgEst4dXBnlBM/0zHzsKJwbLNT7rhhal0rNICOKIPVh6Br4g7KM4zrAqyjopiZLDlc1uYuX6/5rRKjS2A1L2q4mLMAKAdADt+wE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607545428337435.67454813166694; Wed, 9 Dec 2020 12:23:48 -0800 (PST) Received: from localhost ([::1]:55800 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4nn-00035X-Vo for importer@patchew.org; Wed, 09 Dec 2020 14:07:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53166) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vL-0004ah-1X for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:47 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:28164) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vD-0000Ky-Lv for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:46 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-502-dGDGDnxtPtWIRvMuYWzMZA-1; Wed, 09 Dec 2020 13:10:37 -0500 Received: by mail-wm1-f70.google.com with SMTP id r5so880810wma.2 for ; Wed, 09 Dec 2020 10:10:36 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id w13sm4733738wrt.52.2020.12.09.10.10.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537439; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=c0kBt8I1oCPYpFP4q5PRaWZkMHzl2YDLms+Egf+MHrY=; b=AQJGBknVMiJR+p/FqJKF5ZJKPLASzswP/iVUPH4bSMQcONlXBBNn43QFvGB5Pss3zMlVdm 1+97Pg9Yp5JlgLXJ/+qHio9xHM+y7j1Ef7c0ceh4KXYiU+F1UV2mowrw09WJ8Ju30X/2Bi 9/vt6c748+heauVm6rah/N+fjCMo5sg= X-MC-Unique: dGDGDnxtPtWIRvMuYWzMZA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=c0kBt8I1oCPYpFP4q5PRaWZkMHzl2YDLms+Egf+MHrY=; b=OMiymc05wM3uJLz1SnoPrv4jqZXc7VV0qUEVzFnAlBl1F/29KnmwxPZfSRCyMBZRaM mWLST8xbkuITPOxYwli1hC+j5FYwDjs8twuY3r99hwuKkoczTiCGDrt9ZfFaX4C4hDPm m/xISJPjrkLE1sOAOa3ph2kERsfysJbxBhb9Ivf0mBl5XtLKkfF4E+p9ywY0D2Yarc4a j3LwKxMjZ8P9sTEq2QqS2708mavboRvKWykX2fxrUNV2kC+qr49MpzQ/kJ/Zx+D59+a8 O60QgUhNnctVj4143MNXQh6Y72eITVXuoDB3V/EINGzQ0rirG15pGlsDkMNPVax8xxY7 wt2g== X-Gm-Message-State: AOAM5338IFaQmQmrF4S+ebr9EIpiq4V1WmbyaGqwj2ZURNj6Mze+quiF ptLo5onLcqYb1TzbNz2ZbBWILYc+11CMwle0nCD+Dsd4cmIiiJ6q5hc2L+xJ3NzaDfTLBTdtU8J JNtTNV4yFdhNrkaJTs9p1CGzTLO7N+a0tQuktWHEWxJKy6a+2fp8IwPNheDda X-Received: by 2002:a7b:c773:: with SMTP id x19mr3956976wmk.127.1607537435543; Wed, 09 Dec 2020 10:10:35 -0800 (PST) X-Google-Smtp-Source: ABdhPJw3B0ZGqg9ncmvhpPgoPHIDhx0tlYHGK5QwJhsSgjKM+1RruqHjNp+WFYnhZzSkp37SL/HQsQ== X-Received: by 2002:a7b:c773:: with SMTP id x19mr3956959wmk.127.1607537435335; Wed, 09 Dec 2020 10:10:35 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:33 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 52/65] contrib/vhost-user-gpu: avoid g_return_val_if() input validation Message-ID: <20201209180546.721296-53-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Gerd Hoffmann , Markus Armbruster , Stefan Hajnoczi , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefan Hajnoczi Do not validate input with g_return_val_if(). This API is intended for checking programming errors and is compiled out with -DG_DISABLE_CHECKS. Use an explicit if statement for input validation so it cannot accidentally be compiled out. Suggested-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi Message-Id: <20201118091644.199527-3-stefanha@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/vhost-user-gpu/vhost-user-gpu.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contrib/vhost-user-gpu/vhost-user-gpu.c b/contrib/vhost-user-g= pu/vhost-user-gpu.c index a019d0a9ac..f445ef28ec 100644 --- a/contrib/vhost-user-gpu/vhost-user-gpu.c +++ b/contrib/vhost-user-gpu/vhost-user-gpu.c @@ -1044,7 +1044,9 @@ vg_get_config(VuDev *dev, uint8_t *config, uint32_t l= en) { VuGpu *g =3D container_of(dev, VuGpu, dev.parent); =20 - g_return_val_if_fail(len <=3D sizeof(struct virtio_gpu_config), -1); + if (len > sizeof(struct virtio_gpu_config)) { + return -1; + } =20 if (opt_virgl) { g->virtio_config.num_capsets =3D vg_virgl_get_num_capsets(); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542266; cv=none; d=zohomail.com; s=zohoarc; b=j8J6Hue6D4vHB6Q43E3prqu6YZVbRA5PmIe1w7RjX2d0ulifzGmrGPPM6N8ksYfL3xERx+nitiyM0hqBquZLAZtbnCswHY4TmSj7IULox7LrLYkGKFETi8j1Q8pRaDdinFLrIAbM9vXsPPbDYX8BoCFRSgxjT1LTGNsD4YQ3jFo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542266; h=Content-Type: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=EjFghi3WS2AvoBsu5lJuVir5yWvf/AU0cavtmFT/jVA=; b=RPL2MMn6+XPYwcAuJPfJuQ9gbRMBfdIWH4gLC4PlxThXCPQBz3PpdglSnO8KLSjLLPApbo67XBMGP961j5cHanheOxNV+D9l2SBptTT/RhIhkpOuQWSBVu2btr9VqYiG/BWNj9aSyGQ9qTxZK+dZcxBavEdkElC2dCRaDEdwh6Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542266743508.71506336935215; Wed, 9 Dec 2020 11:31:06 -0800 (PST) Received: from localhost ([::1]:39062 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4v9-0008Je-Ja for importer@patchew.org; Wed, 09 Dec 2020 14:14:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53186) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vS-0004ew-Do for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:54 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:31660) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vQ-0000Qi-Mf for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:54 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-151-qCQs6YokOueIaZyfBK1ClA-1; Wed, 09 Dec 2020 13:10:49 -0500 Received: by mail-wr1-f72.google.com with SMTP id x10so964066wrs.2 for ; Wed, 09 Dec 2020 10:10:49 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id u10sm4679382wmd.43.2020.12.09.10.10.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537451; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=EjFghi3WS2AvoBsu5lJuVir5yWvf/AU0cavtmFT/jVA=; b=FoGksh1PdNuczqayyKHtfqgyrCCdodZG9tbXX8FVYAgeNpAooW17BZg6JgBO4mHsMgvXqC A7f0//Q+uXDY2wlByz9RzdwG4ZFofdTEguJKAwYxvdgwv2BpjGPTEQjIJB6IKI1y1jz5iC kq4BVtx9bfWYAAxXawaUtMR5ziLd3Ig= X-MC-Unique: qCQs6YokOueIaZyfBK1ClA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=EjFghi3WS2AvoBsu5lJuVir5yWvf/AU0cavtmFT/jVA=; b=KVSBy4lW8h8yhBELnD/3zy7FoUWuAXntfVGrVQYvV1exHn03VzcvGqA37sbiyXr38K LTmnR/VgalYO1VaRxSeHuEZ0OLh/oJCEsqUDCVJdd4J+PRZNOxgbErtK1Z/vaWIG5WlU wvqa+seM7DUyLwT4HsfMz4Ac45qB94jV8++KgA+9wIdfbKwRr5iE+R7gCKPpwP2g8I7l j2B5QDOelv2n/wuTw9atH6ODR/0VsevvoCwhRtFCZmXN/nf+N/17LwxtqTaL+kiCue8A MSfm8s50GBrYDXIb6TdA7MAXo7KwCcWtW8myiLzC/lDJANEZijxYlGKy8CALhROiJzLl 531w== X-Gm-Message-State: AOAM532PapkLDXv3cU9p4R2rVFDbLnf1oDNFcd62mNWIrjCAmTpR8X8Q 6qgVaGoaeLQja7QeQurS9zD14zg0r9oiPmqzIpJGcscWx5cLBWVI/FOchgnAeGebqq+BaZzVtjW hnw/Y34ekkOES7PhLv92rF7EuuBUOnihcdjTNXid999y6zWT8/5f0/clvjz+M X-Received: by 2002:a1c:9e0e:: with SMTP id h14mr3992046wme.63.1607537448236; Wed, 09 Dec 2020 10:10:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJwsshw5avBF0qVQclh8VBW5VaDSADDr/Rl97wBnxSC0IOisKNxI8S29uQjkOpPYJF89PP2FPw== X-Received: by 2002:a1c:9e0e:: with SMTP id h14mr3992029wme.63.1607537448043; Wed, 09 Dec 2020 10:10:48 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:35 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 53/65] contrib/vhost-user-input: avoid g_return_val_if() input validation Message-ID: <20201209180546.721296-54-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Markus Armbruster , Stefan Hajnoczi , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefan Hajnoczi Do not validate input with g_return_val_if(). This API is intended for checking programming errors and is compiled out with -DG_DISABLE_CHECKS. Use an explicit if statement for input validation so it cannot accidentally be compiled out. Suggested-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi Message-Id: <20201118091644.199527-4-stefanha@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- contrib/vhost-user-input/main.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contrib/vhost-user-input/main.c b/contrib/vhost-user-input/mai= n.c index 3ea840cf44..d2de47cee7 100644 --- a/contrib/vhost-user-input/main.c +++ b/contrib/vhost-user-input/main.c @@ -211,7 +211,9 @@ static int vi_get_config(VuDev *dev, uint8_t *config, u= int32_t len) { VuInput *vi =3D container_of(dev, VuInput, dev.parent); =20 - g_return_val_if_fail(len <=3D sizeof(*vi->sel_config), -1); + if (len > sizeof(*vi->sel_config)) { + return -1; + } =20 if (vi->sel_config) { memcpy(config, vi->sel_config, len); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607547286; cv=none; d=zohomail.com; s=zohoarc; b=K8Q7dBL/SkO5bCADg7fTuHBLbcZ2yelfgS6lsnsVGNa2B8UOU/ThtG1Xq15GiwVwsjdIrRGG9tEKBe2iLUQUMgEP1SNaTzcyTd7YJDZtN+YRIkTRxrw1l5yJay5jgVxP93DtRwVBwHn84Y1XdVuu+VXGfVhP7CfXNMsrl4IZWw8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607547286; h=Content-Type: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=bOnIWc8QuS0vqpM39al5k9XO8qlC2v1q1F92knb7erU=; b=AH2J5SrdIUWbJOObGPWRFtMJrpjjLN43CAcjlX1rde+vZfgXUp37L9CgIeuMfJwpkuhqzR9ALWpdcUxE74kJVPjVeYKtIoLuo2ZSn/tXRyXxnv5e/LYITeGmHq249oRBnhmkC0UQOaB9ep5lpadVddxXb1/ee6FdVWJaep6nrXY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547286242938.1590917829195; Wed, 9 Dec 2020 12:54:46 -0800 (PST) Received: from localhost ([::1]:48070 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn50i-0003zo-IK for importer@patchew.org; Wed, 09 Dec 2020 14:20:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53220) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vX-0004jm-OY for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:04 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:39500) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vT-0000TW-00 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:10:59 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-595-aX3PxII1MhC3hdJ_uUHGQw-1; Wed, 09 Dec 2020 13:10:52 -0500 Received: by mail-wm1-f69.google.com with SMTP id f12so872988wmf.6 for ; Wed, 09 Dec 2020 10:10:52 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id a65sm4309631wmc.35.2020.12.09.10.10.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=bOnIWc8QuS0vqpM39al5k9XO8qlC2v1q1F92knb7erU=; b=IlIBUaTldAxRjWtGYhEy8J2B5UzYuAXWiYFPWCExYCUQbLaIYB4OHxBX9OAKuTk5cmPXhi mXMvjx3dQXZTjp+j2pD3nLcOGQ5x1bcn1cy7ApwTkhulAR6Vs5PZF18Ygq6uVUk/JzFc3F /5edjAysO1NuGLI2Ipkd9kVCBk0IDKo= X-MC-Unique: aX3PxII1MhC3hdJ_uUHGQw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=bOnIWc8QuS0vqpM39al5k9XO8qlC2v1q1F92knb7erU=; b=nX7fej8J/P5iXlTWpBWK1EG3mWR54EF8UNzKUA+6aldRNqWbQZLCFGod4nlGkSZcHd 6HYFcvivZ2jDeOHLY8SMHKDJX3jedzuOfNZBQzKq7kTqGT+VockEmD2z0slAt0fExpyB PLEziDSR3f6nqqGoVhbMDs5tDF27W7dXAqhn4Hvcb2dSF5+FYq04yQDy28s24KUkyqqE 8N2U+Qv7dP81wgUPwPO6xZ4t5ChQ9nw7v5RubDNYqkR2FMF4wmFGEyKJ73xinnyBFZn1 6BP1vsOhtjCQ62Y1txmdzCb5LSnL4PkKkU9w9bE+Ec8i1KS+yFiWdQjgdLStmbKEEi+r QRSQ== X-Gm-Message-State: AOAM531z8omu0tY+Ui54bXOj8MGukL7rt6i50ybbT2AUh+tFro7IQcln nXLtgXt8BOQiLXVVVYC2p9ihK7hTkMabcLUIRdN96kyruwyPZo3XFRBwq8xKWzNvzTwdZI0kp5J HS/ScbkdpNzRUMkAykRScqWT87/wseVSa96aNdAI/yGXCJZLSRpHSUq0ALwgN X-Received: by 2002:a1c:2681:: with SMTP id m123mr4119190wmm.114.1607537450831; Wed, 09 Dec 2020 10:10:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJwPmbw/vF4077o3bYmI9ZOil7aTalZqlOHh/WJcwZEGUBRcNXgjc4RGWBLujOS8p3nYS259yQ== X-Received: by 2002:a1c:2681:: with SMTP id m123mr4119162wmm.114.1607537450629; Wed, 09 Dec 2020 10:10:50 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:48 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 54/65] block/export: avoid g_return_val_if() input validation Message-ID: <20201209180546.721296-55-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Peter Maydell , qemu-block@nongnu.org, Markus Armbruster , Coiby Xu , Max Reitz , Stefan Hajnoczi Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefan Hajnoczi Do not validate input with g_return_val_if(). This API is intended for checking programming errors and is compiled out with -DG_DISABLE_CHECKS. Use an explicit if statement for input validation so it cannot accidentally be compiled out. Suggested-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi Message-Id: <20201118091644.199527-5-stefanha@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- block/export/vhost-user-blk-server.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/block/export/vhost-user-blk-server.c b/block/export/vhost-user= -blk-server.c index a3d95ca012..ab2c4d44c4 100644 --- a/block/export/vhost-user-blk-server.c +++ b/block/export/vhost-user-blk-server.c @@ -267,7 +267,9 @@ vu_blk_get_config(VuDev *vu_dev, uint8_t *config, uint3= 2_t len) VuServer *server =3D container_of(vu_dev, VuServer, vu_dev); VuBlkExport *vexp =3D container_of(server, VuBlkExport, vu_server); =20 - g_return_val_if_fail(len <=3D sizeof(struct virtio_blk_config), -1); + if (len > sizeof(struct virtio_blk_config)) { + return -1; + } =20 memcpy(config, &vexp->blkcfg, len); return 0; --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549111; cv=none; d=zohomail.com; s=zohoarc; b=FhSpNLVD56Gp4nFLfh9eU6yzo9HGsEONWu9OIWfIvL+9drGOOAOOKGU4DWbumlt14Emb0ARuF4bBMU8Gk5SZxKNJYB4YQPMftT4lwKjbasdsrfBiKUoLLFPk5zBHCY1bPviThKOTALZaVIKBfjCO0pLrNbvGJiu55V8rxdOU9xM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549111; h=Content-Type: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=GgqegJ2AwPrrSt1c+ZG97wYMfpCS+LJtHRAzqe50o9Y=; b=nafBrbA1VqsBcHssr+Pw7CkhPThsMgYDb+584Cdv6WKplyi9tEd09zPH7lilS9V5zLc/3Hd5MCtBxo01cjMF8uQQoOLhRk5LcaqAcsENfpkQ+shiq/VayqLMZFrUA9qmHSkk71NPIM85Pkxl7N6D6LxYjjXrxBsHzbFTX8n94ts= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549111064627.0781463173221; Wed, 9 Dec 2020 13:25:11 -0800 (PST) Received: from localhost ([::1]:36094 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4tx-0006zR-9x for importer@patchew.org; Wed, 09 Dec 2020 14:13:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53224) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vc-0004k8-T3 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:05 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:50611) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vV-0000Vt-Gu for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:03 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-271-wRcBHk0VPQOkQJXTdsc0mg-1; Wed, 09 Dec 2020 13:10:54 -0500 Received: by mail-wr1-f72.google.com with SMTP id r11so940957wrs.23 for ; Wed, 09 Dec 2020 10:10:54 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id h184sm5405691wmh.23.2020.12.09.10.10.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:10:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=GgqegJ2AwPrrSt1c+ZG97wYMfpCS+LJtHRAzqe50o9Y=; b=PVaAN1H+zxPeQId2O7F/vCMws+rsew0Ak9+wxRDLes/hCoQO7ACGMLiNy5o4YPA/tEtNAM vQW8H3U/WDUJ7vtzJDATpPvMJs8TzY6150ckqhxmOHSMd1OTZs5CER9wyG6ojTOyd8M1pY JQqVdY904MnlFx8m5yKkYZejMkSMHH8= X-MC-Unique: wRcBHk0VPQOkQJXTdsc0mg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=GgqegJ2AwPrrSt1c+ZG97wYMfpCS+LJtHRAzqe50o9Y=; b=U4NMuMngpft9+FDRPQa2F+tAJi4zKypftdzAyCyVhTyNmgu5hAr3rWPSNNLbdzB/nH BUfTKsOxIGZ0Tz7TPtRFjNttLs7b4HawyDwJlDaxOnEiqxfL3NdMIhYhIBLzeQO3oivF z/zILgd4at1+77a/pYV2p7q1nyvVo399h8c61cTQrODUdXjvqKnvVois0Ys3CpnXChSt GKa+/rMTJaP4zmmXEEZY8nWDYIUk/7k9zMLPwuFZy+vtOMqWM520hYr7a0LeDr+qfq1Q Vm1r3nR6W6BCKhSvcmmMN1UpvZoezuBFQgOj+vVifMqO8x/g91qGmFmeM72G8kRf0boO 3CAA== X-Gm-Message-State: AOAM531xVjE1/Kmrj7N4QENNzAlnAuTZ14NkmqzwoNYt3OGN3hrXx7gd LgAtXBjSFxiucgbPeK3499AaagCW2Hw/Nnf+Cqo6az+3MpXgAoKqm6d5e2jb5xzdLsUQZu6Z8Ln MXx7sYp2XAsO6+piLsc7JFLxxvCQaal2VRE6Y+Th7du4iOWIGigKceoMCYJts X-Received: by 2002:a5d:6749:: with SMTP id l9mr4095546wrw.395.1607537453260; Wed, 09 Dec 2020 10:10:53 -0800 (PST) X-Google-Smtp-Source: ABdhPJxK1M0LhDMgBnilVzP2uKTNLJmztLWwy0zXzLRpkjksUtLz9PMkbAKeNnk58NuiK4Lkh1rrig== X-Received: by 2002:a5d:6749:: with SMTP id l9mr4095520wrw.395.1607537453065; Wed, 09 Dec 2020 10:10:53 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:50 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 55/65] hw/i386/pc: add max combined fw size as machine configuration option Message-ID: <20201209180546.721296-56-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Richard Henderson , Erich-McMillan , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Erich-McMillan At Hewlett Packard Inc. we have a need for increased fw size to enable test= ing of our custom fw. Rebase v6 patch to d73c46e4 Signed-off-by: Erich McMillan Message-Id: <20201208155338.14-1-erich.mcmillan@hp.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/i386/pc.h | 2 ++ hw/i386/pc.c | 51 ++++++++++++++++++++++++++++++++++++++++++++ hw/i386/pc_sysfw.c | 15 +++---------- 3 files changed, 56 insertions(+), 12 deletions(-) diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 49dfa667de..2aa8797c6e 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -44,6 +44,7 @@ typedef struct PCMachineState { bool sata_enabled; bool pit_enabled; bool hpet_enabled; + uint64_t max_fw_size; =20 /* NUMA information: */ uint64_t numa_nodes; @@ -60,6 +61,7 @@ typedef struct PCMachineState { #define PC_MACHINE_SMBUS "smbus" #define PC_MACHINE_SATA "sata" #define PC_MACHINE_PIT "pit" +#define PC_MACHINE_MAX_FW_SIZE "max-fw-size" =20 /** * PCMachineClass: diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 7113fb0770..675e15c0aa 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -1569,6 +1569,50 @@ static void pc_machine_set_max_ram_below_4g(Object *= obj, Visitor *v, pcms->max_ram_below_4g =3D value; } =20 +static void pc_machine_get_max_fw_size(Object *obj, Visitor *v, + const char *name, void *opaque, + Error **errp) +{ + PCMachineState *pcms =3D PC_MACHINE(obj); + uint64_t value =3D pcms->max_fw_size; + + visit_type_size(v, name, &value, errp); +} + +static void pc_machine_set_max_fw_size(Object *obj, Visitor *v, + const char *name, void *opaque, + Error **errp) +{ + PCMachineState *pcms =3D PC_MACHINE(obj); + Error *error =3D NULL; + uint64_t value; + + visit_type_size(v, name, &value, &error); + if (error) { + error_propagate(errp, error); + return; + } + + /* + * We don't have a theoretically justifiable exact lower bound on the b= ase + * address of any flash mapping. In practice, the IO-APIC MMIO range is + * [0xFEE00000..0xFEE01000] -- see IO_APIC_DEFAULT_ADDRESS --, leaving = free + * only 18MB-4KB below 4G. For now, restrict the cumulative mapping to = 8MB in + * size. + */ + if (value > 16 * MiB) { + error_setg(errp, + "User specified max allowed firmware size %" PRIu64 " i= s " + "greater than 16MiB. If combined firwmare size exceeds " + "16MiB the system may not boot, or experience intermitt= ent" + "stability issues.", + value); + return; + } + + pcms->max_fw_size =3D value; +} + static void pc_machine_initfn(Object *obj) { PCMachineState *pcms =3D PC_MACHINE(obj); @@ -1584,6 +1628,7 @@ static void pc_machine_initfn(Object *obj) pcms->smbus_enabled =3D true; pcms->sata_enabled =3D true; pcms->pit_enabled =3D true; + pcms->max_fw_size =3D 8 * MiB; #ifdef CONFIG_HPET pcms->hpet_enabled =3D true; #endif @@ -1710,6 +1755,12 @@ static void pc_machine_class_init(ObjectClass *oc, v= oid *data) =20 object_class_property_add_bool(oc, "hpet", pc_machine_get_hpet, pc_machine_set_hpet); + + object_class_property_add(oc, PC_MACHINE_MAX_FW_SIZE, "size", + pc_machine_get_max_fw_size, pc_machine_set_max_fw_size, + NULL, NULL); + object_class_property_set_description(oc, PC_MACHINE_MAX_FW_SIZE, + "Maximum combined firmware size"); } =20 static const TypeInfo pc_machine_info =3D { diff --git a/hw/i386/pc_sysfw.c b/hw/i386/pc_sysfw.c index b6c0822fe3..f8bd3a8b85 100644 --- a/hw/i386/pc_sysfw.c +++ b/hw/i386/pc_sysfw.c @@ -39,15 +39,6 @@ #include "hw/block/flash.h" #include "sysemu/kvm.h" =20 -/* - * We don't have a theoretically justifiable exact lower bound on the base - * address of any flash mapping. In practice, the IO-APIC MMIO range is - * [0xFEE00000..0xFEE01000] -- see IO_APIC_DEFAULT_ADDRESS --, leaving free - * only 18MB-4KB below 4G. For now, restrict the cumulative mapping to 8MB= in - * size. - */ -#define FLASH_SIZE_LIMIT (8 * MiB) - #define FLASH_SECTOR_SIZE 4096 =20 static void pc_isa_bios_init(MemoryRegion *rom_memory, @@ -140,7 +131,7 @@ void pc_system_flash_cleanup_unused(PCMachineState *pcm= s) * Stop at the first pcms->flash[0] lacking a block backend. * Set each flash's size from its block backend. Fatal error if the * size isn't a non-zero multiple of 4KiB, or the total size exceeds - * FLASH_SIZE_LIMIT. + * pcms->max_fw_size. * * If pcms->flash[0] has a block backend, its memory is passed to * pc_isa_bios_init(). Merging several flash devices for isa-bios is @@ -182,10 +173,10 @@ static void pc_system_flash_map(PCMachineState *pcms, } if ((hwaddr)size !=3D size || total_size > HWADDR_MAX - size - || total_size + size > FLASH_SIZE_LIMIT) { + || total_size + size > pcms->max_fw_size) { error_report("combined size of system firmware exceeds " "%" PRIu64 " bytes", - FLASH_SIZE_LIMIT); + pcms->max_fw_size); exit(1); } =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542164; cv=none; d=zohomail.com; s=zohoarc; b=DOKIVTWHQv8j+uMIOgvqNJC4vLFBHGAD5eRsTWl7jkit//9gL7iWAwHDHY4LkGsGU05kanv1qL/I2EN5htE1awAaw5TlLL9MIXQ18H/5CNgxyxP0KntZciVp2USpZebi/livzkJo2TYX0JOuM++NAvAAOyyxw4lQMJ5gHvp+ApU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542164; h=Content-Type: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=Y6bcvJiA50tTF+KEnd2Ti5O08HtqauxYfsjzK0d3T08=; b=f7jCbLq/XyIG9jsLsvy7liVrE8mLQR2ADVwH97zLOmEFS2aP7LsACuH70cllvoBkYE3xKWJaTPJoHRyrztoBUCL9To12n4tjOcDou36CWKzK2h05VFYaMz9n4p5RsDC8zeg1zS/z5kqmDiz5ZBwtOs6DZ2ptWiRXziBwpXabITw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542164220525.6544129479013; Wed, 9 Dec 2020 11:29:24 -0800 (PST) Received: from localhost ([::1]:44622 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4yt-0002UH-2s for importer@patchew.org; Wed, 09 Dec 2020 14:18:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53248) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vo-0004nt-Dx for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:16 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:29187) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vg-0000Zi-BZ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:15 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-200-JkWrpRScMfKgvC-1MM6LuQ-1; Wed, 09 Dec 2020 13:11:05 -0500 Received: by mail-wm1-f71.google.com with SMTP id h68so874845wme.5 for ; Wed, 09 Dec 2020 10:11:04 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id q15sm4847710wrw.75.2020.12.09.10.11.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537467; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Y6bcvJiA50tTF+KEnd2Ti5O08HtqauxYfsjzK0d3T08=; b=OHUx8UIzw0nde5Tx3edXaIDhLibbmTvv7eo7snXkVRSVeIEC88dM8yMPMvAdPNBTcq4Q2E NzMzftcEPTDzi/gXS1y4M1jiO8mJ+gpB2EpzeX9NxG4QiZ2P1XFbSUXjPW8+5PJx30DaUC mos51E6/qzyoe6x1TFpI4mK5zhune/Q= X-MC-Unique: JkWrpRScMfKgvC-1MM6LuQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Y6bcvJiA50tTF+KEnd2Ti5O08HtqauxYfsjzK0d3T08=; b=ljUz1iwJXPrUI6yLwCeEc06rtvWeATJ/wSvzKLa/Ssl20uHOusABtdk8QzQeMLvccC KLfPJ/SU4ClNKvJv9s1T2xJmL467oJg0oe4IepMEzTw+IB43N71nKPQdTo/IlqSM3XeD CvO1ArQmBXER9v7t+hBHNCG64Mz0FVGiQju9KOv+ZIPahKEARADjqVIReu3kJJT/qslx iqFgn2DJ5Fzhb8MxM9Xw0/xBaQecf3ieN/rOHLA8+rW1hd9848RJDtVQxftLDAhAWPLc Qmkj2wjyeql0jfYEEwkj1Vzk7fFRMd36M3OmRu7XPk6jOkscBsufKxBGEZUrvyPrN2wU vuLw== X-Gm-Message-State: AOAM532owOuJ/F5JN2QJnIe0szczMBn6ZLFZuUTLLD1NLvs1yqFDSmrk NwbykrCHvglkfzPnep8qVuffojfnKdDeoxYEb4vSi0bXHOITrPHDxSMRC6qSDU8qoeM0wj/+/FF t6xCLMge9gOvG2mwBl0CgPuHw3sH3vbvwhvdvI8nmairwJ6UWJWwhkTp5BZr2 X-Received: by 2002:a5d:5643:: with SMTP id j3mr3915104wrw.43.1607537463226; Wed, 09 Dec 2020 10:11:03 -0800 (PST) X-Google-Smtp-Source: ABdhPJxNLCBYbVVM21GeNCJmDYViuE2h4niXugg8Lo13vN+xj+xUn+5inYcwsfbDyW7F8GcGCDHTuw== X-Received: by 2002:a5d:5643:: with SMTP id j3mr3915078wrw.43.1607537462928; Wed, 09 Dec 2020 10:11:02 -0800 (PST) Date: Wed, 9 Dec 2020 13:10:53 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 56/65] acpi: cpuhp: introduce 'firmware performs eject' status/control bits Message-ID: <20201209180546.721296-57-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov Adds bit #4 to status/control field of CPU hotplug MMIO interface. New bit will be used OSPM to mark CPUs as pending for removal by firmware, when it calls _EJ0 method on CPU device node. Later on, when firmware sees this bit set, it will perform CPU eject which will clear bit #4 as well. Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-3-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- docs/specs/acpi_cpu_hotplug.txt | 19 ++++++++++++++----- include/hw/acpi/cpu.h | 1 + hw/acpi/cpu.c | 12 +++++++++++- hw/acpi/trace-events | 2 ++ 4 files changed, 28 insertions(+), 6 deletions(-) diff --git a/docs/specs/acpi_cpu_hotplug.txt b/docs/specs/acpi_cpu_hotplug.= txt index 9bb22d1270..9bd59ae0da 100644 --- a/docs/specs/acpi_cpu_hotplug.txt +++ b/docs/specs/acpi_cpu_hotplug.txt @@ -56,8 +56,11 @@ read access: no device check event to OSPM was issued. It's valid only when bit 0 is set. 2: Device remove event, used to distinguish device for which - no device eject request to OSPM was issued. - 3-7: reserved and should be ignored by OSPM + no device eject request to OSPM was issued. Firmware must + ignore this bit. + 3: reserved and should be ignored by OSPM + 4: if set to 1, OSPM requests firmware to perform device eject. + 5-7: reserved and should be ignored by OSPM [0x5-0x7] reserved [0x8] Command data: (DWORD access) contains 0 unless value last stored in 'Command field' is one of: @@ -79,10 +82,16 @@ write access: selected CPU device 2: if set to 1 clears device remove event, set by OSPM after it has emitted device eject request for the - selected CPU device + selected CPU device. 3: if set to 1 initiates device eject, set by OSPM when it - triggers CPU device removal and calls _EJ0 method - 4-7: reserved, OSPM must clear them before writing to register + triggers CPU device removal and calls _EJ0 method or by fir= mware + when bit #4 is set. In case bit #4 were set, it's cleared as + part of device eject. + 4: if set to 1, OSPM hands over device eject to firmware. + Firmware shall issue device eject request as described above + (bit #3) and OSPM should not touch device eject bit (#3) in= case + it's asked firmware to perform CPU device eject. + 5-7: reserved, OSPM must clear them before writing to register [0x5] Command field: (1 byte access) value: 0: selects a CPU device with inserting/removing events and diff --git a/include/hw/acpi/cpu.h b/include/hw/acpi/cpu.h index 0eeedaa491..d71edde456 100644 --- a/include/hw/acpi/cpu.h +++ b/include/hw/acpi/cpu.h @@ -22,6 +22,7 @@ typedef struct AcpiCpuStatus { uint64_t arch_id; bool is_inserting; bool is_removing; + bool fw_remove; uint32_t ost_event; uint32_t ost_status; } AcpiCpuStatus; diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index f099b50927..1293204438 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -71,6 +71,7 @@ static uint64_t cpu_hotplug_rd(void *opaque, hwaddr addr,= unsigned size) val |=3D cdev->cpu ? 1 : 0; val |=3D cdev->is_inserting ? 2 : 0; val |=3D cdev->is_removing ? 4 : 0; + val |=3D cdev->fw_remove ? 16 : 0; trace_cpuhp_acpi_read_flags(cpu_st->selector, val); break; case ACPI_CPU_CMD_DATA_OFFSET_RW: @@ -148,6 +149,14 @@ static void cpu_hotplug_wr(void *opaque, hwaddr addr, = uint64_t data, hotplug_ctrl =3D qdev_get_hotplug_handler(dev); hotplug_handler_unplug(hotplug_ctrl, dev, NULL); object_unparent(OBJECT(dev)); + cdev->fw_remove =3D false; + } else if (data & 16) { + if (!cdev->cpu || cdev->cpu =3D=3D first_cpu) { + trace_cpuhp_acpi_fw_remove_invalid_cpu(cpu_st->selector); + break; + } + trace_cpuhp_acpi_fw_remove_cpu(cpu_st->selector); + cdev->fw_remove =3D true; } break; case ACPI_CPU_CMD_OFFSET_WR: @@ -159,7 +168,8 @@ static void cpu_hotplug_wr(void *opaque, hwaddr addr, u= int64_t data, =20 do { cdev =3D &cpu_st->devs[iter]; - if (cdev->is_inserting || cdev->is_removing) { + if (cdev->is_inserting || cdev->is_removing || + cdev->fw_remove) { cpu_st->selector =3D iter; trace_cpuhp_acpi_cpu_has_events(cpu_st->selector, cdev->is_inserting, cdev->is_removing); diff --git a/hw/acpi/trace-events b/hw/acpi/trace-events index afbc77de1c..f91ced477d 100644 --- a/hw/acpi/trace-events +++ b/hw/acpi/trace-events @@ -29,6 +29,8 @@ cpuhp_acpi_clear_inserting_evt(uint32_t idx) "idx[0x%"PRI= x32"]" cpuhp_acpi_clear_remove_evt(uint32_t idx) "idx[0x%"PRIx32"]" cpuhp_acpi_ejecting_invalid_cpu(uint32_t idx) "0x%"PRIx32 cpuhp_acpi_ejecting_cpu(uint32_t idx) "0x%"PRIx32 +cpuhp_acpi_fw_remove_invalid_cpu(uint32_t idx) "0x%"PRIx32 +cpuhp_acpi_fw_remove_cpu(uint32_t idx) "0x%"PRIx32 cpuhp_acpi_write_ost_ev(uint32_t slot, uint32_t ev) "idx[0x%"PRIx32"] OST = EVENT: 0x%"PRIx32 cpuhp_acpi_write_ost_status(uint32_t slot, uint32_t st) "idx[0x%"PRIx32"] = OST STATUS: 0x%"PRIx32 =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549107; cv=none; d=zohomail.com; s=zohoarc; b=HrvqdX+WqiMcFqTcOk8EXXQCyhV2Y2RrFRuMnQXyk5QkIp2vLJ3+Df7h2Hlg4ppTvVGh39eFCyfrRwyleoFVPdpqvxPgkP+tBSlovbQeaDSc16rT5jrK0Aqxr2clutg4K6fzXB1oofRAOmavX6sZPPIfo2UFt7RM2FsY5goLU40= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549107; h=Content-Type: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=Ss36U8za5czG2yM1M9Hh0SqAuQfgDaUEj+51fMZlZGs=; b=FVltiV1T0xnCFuMzhMDfo6OMKGBaln8DZ5+vMrKeYDKi7TXDdpf/xyQ42zWYLNouCLBdsKAqBxM4IM5Dx04iILfNBEq2ePYVE8bs57+fxymJe1ByY1XFfQZPf/lp5HGLew3hJkAk8wfVt+IDgHBM/ka5adormt+KEaavjd2FNwQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549107260218.04666901621522; Wed, 9 Dec 2020 13:25:07 -0800 (PST) Received: from localhost ([::1]:36162 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4tx-00071E-Br for importer@patchew.org; Wed, 09 Dec 2020 14:13:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53266) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vq-0004oi-L1 for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:20 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:59242) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vn-0000c0-Ce for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:18 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-370-YOLExtHlNBWBf3d97M5pVw-1; Wed, 09 Dec 2020 13:11:11 -0500 Received: by mail-wr1-f72.google.com with SMTP id z6so953158wrl.7 for ; Wed, 09 Dec 2020 10:11:11 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id m4sm4644428wmi.41.2020.12.09.10.11.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Ss36U8za5czG2yM1M9Hh0SqAuQfgDaUEj+51fMZlZGs=; b=Dq9JrvnKzl1kUtr/Y0Mwx/GiXkVNeRwrSTGeIM7Sjt6k4sVRNUlbD8SxQp4H1BLPphCZ3O Z/JAVwAdfs5t6jTn/Fp1R0o/xNve4yveUbziVY6+Zq6eiJ6tKI+qepUdAzasumo67x8MDg FUceFj44XdR+fF5lQyW8VascK+CF+gw= X-MC-Unique: YOLExtHlNBWBf3d97M5pVw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Ss36U8za5czG2yM1M9Hh0SqAuQfgDaUEj+51fMZlZGs=; b=mQiM7kDu18r31naleON0L6sWa+NLs4sKTPD7ICdMeltQGnuuWvdSwpdMUDvHlINDn6 XA2Q37x/zVjlN6XyyzsJUAki2VZNI+hIidJa8gHXIJJdBmKWLOP9EHRW5U6x+OHgHEXw +yZkcunUQHGjblWuTGEeBPhjwMnbAzRbHq92ss9XZ2CZHnfgpXAL1SvJbyRKZo4nkC5U Apb1v+IARZQnmmzCvyg7yEpkMVwavg5QE0D0Ry3tHkoorFz9XNCS1sTey6kHlvqnvtD8 Rw/Tj8+S6kESDMPqcYRYpB8RpYdg8xK0GbKbO/DzAvSt5j5qdDoa5vknCfztY7Jqfbdo r14Q== X-Gm-Message-State: AOAM533J417VafN0MPHOQStxHAoGDBiXPKcdijU4Sxi6y/H+f7WA0HWt 4HVbfa9SvO7Cp0//mqLtWVW2rolccphY54ouDm/G9PuR4dFj7F9DZhHloOHWglH/0AvYq9ePxV0 mSmD4mdhEwT9uG4WWpKIZBZhyFGl1gDT3nsCEbctA2rxQyGHs+0ZqtA/U/v7R X-Received: by 2002:a1c:e2c2:: with SMTP id z185mr4222134wmg.49.1607537469791; Wed, 09 Dec 2020 10:11:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJwYrYX3xJt/EhlC2XUxe33nyuJLfJnhVQGdEU3Ig70kvcydW+VEo1HnyXN3zk2n3NpZO0Ss4Q== X-Received: by 2002:a1c:e2c2:: with SMTP id z185mr4222110wmg.49.1607537469645; Wed, 09 Dec 2020 10:11:09 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:04 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 57/65] x86: acpi: introduce AcpiPmInfo::smi_on_cpu_unplug Message-ID: <20201209180546.721296-58-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Richard Henderson , Igor Mammedov , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-4-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 76e27f8fad..44c9da5112 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -96,6 +96,7 @@ typedef struct AcpiPmInfo { bool s4_disabled; bool pcihp_bridge_en; bool smi_on_cpuhp; + bool smi_on_cpu_unplug; bool pcihp_root_en; uint8_t s4_val; AcpiFadtData fadt; @@ -197,6 +198,7 @@ static void acpi_get_pm_info(MachineState *machine, Acp= iPmInfo *pm) pm->pcihp_io_base =3D 0; pm->pcihp_io_len =3D 0; pm->smi_on_cpuhp =3D false; + pm->smi_on_cpu_unplug =3D false; =20 assert(obj); init_common_fadt_data(machine, obj, &pm->fadt); @@ -220,6 +222,8 @@ static void acpi_get_pm_info(MachineState *machine, Acp= iPmInfo *pm) pm->cpu_hp_io_base =3D ICH9_CPU_HOTPLUG_IO_BASE; pm->smi_on_cpuhp =3D !!(smi_features & BIT_ULL(ICH9_LPC_SMI_F_CPU_HOTPLUG_BIT)); + pm->smi_on_cpu_unplug =3D + !!(smi_features & BIT_ULL(ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT)); } =20 /* The above need not be conditional on machine type because the reset= port --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543958; cv=none; d=zohomail.com; s=zohoarc; b=B7oSt65b5M4D8ZvBxbGohMlVe4uITzifzxZabDJRPey4VUtEsk2SzW7KAMLhciJKXr9NPbElUPcL61EFRDERDwGxOZslEqfgNrewJ8U382t/WG1ooI07yzB+fXqhUfRE2+vMWK91sWAaF6xAaAK0Kw1kz9F2rtNOAt5oy2yU5S4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543958; h=Content-Type: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=DbpWHn7kujA8od1bySqWm905L7EHYrNPshpti/pX4Go=; b=TJJQI07C+Yq6mFQCemycLdD0FIAaAD8C3McPiUI7cXBPtogRdg4i1Umy7r5WhVUiEf2mTogzbSCip6QhI/hEpvZ0FLNRKDMe1mkyznGGpKGvZ5Wy9xcvD5FMnAjFgn5nchS6JaKGSakKOTVP3S1nI4ny8Li9GdmdRV6zljAOd4w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543958653494.6346435266315; Wed, 9 Dec 2020 11:59:18 -0800 (PST) Received: from localhost ([::1]:56604 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn541-0007lz-6y for importer@patchew.org; Wed, 09 Dec 2020 14:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53320) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3vu-0004qI-QJ for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:27 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:47861) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vs-0000d3-3T for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:22 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-278-Y50n4L3NMrusg4BROOL-Tg-1; Wed, 09 Dec 2020 13:11:16 -0500 Received: by mail-wr1-f69.google.com with SMTP id v5so965820wrr.0 for ; Wed, 09 Dec 2020 10:11:16 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id n126sm4875202wmn.21.2020.12.09.10.11.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537479; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DbpWHn7kujA8od1bySqWm905L7EHYrNPshpti/pX4Go=; b=VunjWWtEYeKxtLLUjweuIjnj51c0V7HFavEcQNiyiKIQofOA5MpbPZSkQVBs10W3nKxVjg +nMziB1W0ieMFbW4qtWSgZbJ1BKXVsUsbyOgbiSYeB7gZlVE1Ljn5LOkpHF28rrYxHOEmM i98Mjyia09yDPjwHM6NSAHbx5qIvlws= X-MC-Unique: Y50n4L3NMrusg4BROOL-Tg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=DbpWHn7kujA8od1bySqWm905L7EHYrNPshpti/pX4Go=; b=OaKn29mg20ApcYdrCSWh35KF40dCdUy532Vu5cvLddnhVl/FFG8mI+HLO0xsJnR7pZ VZ9MT5zChaWfEx8xNlXvHxyw1YOF/QfkBzewf7wbRsgzScuMdhsdh2b/1JfCZLCigT6e D2D4xCrec6vR3OBZwR7FWvB/dNyZDsBfnKl/Np0Y9KBldjSwNNN6LC+/LOcorXlLqfPc kU8f70Imu58AUsLoizpy+HHPRe+NVgfOj9osZB9pxUAcMeLb7LYgUJiGa5yCRhI0cShI m3cfSlt3LTI59071g+4aeg6nb36HSpYgYD+rrq962S/9nCvnLkp/jghITuwtj9KP1qEo 2XPQ== X-Gm-Message-State: AOAM532myGwza+3MprvbVzPWLCD6XwCaZKftuwqVqD1w3xVT0wUVSZ7Y utXnY03+AKi8OkWIbPg5xc7mG6Cp/Nr5ABHBWcV4w/825vbD7uLLbF8a/JGGvWkFuqi5Z7pT7r0 oaeoRlQ1wh9GWM4QRn6Nablv4P4B/Y9uEKw4b7IFb1HO/xJkZjaUZ867ljTjx X-Received: by 2002:a7b:c751:: with SMTP id w17mr3973954wmk.121.1607537474689; Wed, 09 Dec 2020 10:11:14 -0800 (PST) X-Google-Smtp-Source: ABdhPJxqB9tf2aNw4uPO7No4SgU/Z5irL2wDQfIPKn+mkT1StYIfpDrzTRnMq9PA7y5psakz+aO0pg== X-Received: by 2002:a7b:c751:: with SMTP id w17mr3973922wmk.121.1607537474404; Wed, 09 Dec 2020 10:11:14 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:10 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 58/65] tests/acpi: allow expected files change Message-ID: <20201209180546.721296-59-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov Change that will be introduced by following patch: @@ -557,6 +557,7 @@ DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0= x00000001) CINS, 1, CRMV, 1, CEJ0, 1, + CEJF, 1, Offset (0x05), CCMD, 8 } Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-5-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios= -tables-test-allowed-diff.h index dfb8523c8b..cc75f3fc46 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,22 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT", +"tests/data/acpi/q35/DSDT", +"tests/data/acpi/q35/DSDT.tis", +"tests/data/acpi/q35/DSDT.bridge", +"tests/data/acpi/q35/DSDT.mmio64", +"tests/data/acpi/q35/DSDT.ipmibt", +"tests/data/acpi/q35/DSDT.cphp", +"tests/data/acpi/q35/DSDT.memhp", +"tests/data/acpi/q35/DSDT.numamem", +"tests/data/acpi/q35/DSDT.dimmpxm", +"tests/data/acpi/q35/DSDT.acpihmat", +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.ipmikcs", +"tests/data/acpi/pc/DSDT.cphp", +"tests/data/acpi/pc/DSDT.memhp", +"tests/data/acpi/pc/DSDT.numamem", +"tests/data/acpi/pc/DSDT.dimmpxm", +"tests/data/acpi/pc/DSDT.acpihmat", +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/pc/DSDT.hpbridge", +"tests/data/acpi/pc/DSDT.hpbrroot", --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543593; cv=none; d=zohomail.com; s=zohoarc; b=JKgmXHfRf91yXC87Qx2cHk5jtHR4hC0MpZcGsrgko/Gl6we0KF1QPD7zvS3bifDWEqDOv4d3RuSudsHakfyV50kADlqO33LYZE8vdfP/ttcKsx852HjSvsuHvDahox4d+Zl+3NoRBx+8zDmYd/VeuFtCaKvefje0fBBfrJDU1Sw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543593; h=Content-Type: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=rCTXiBiz0IVDGz/6PAJRoYm80wXw7KG34Wn42GEidrE=; b=h3hOdGjMx4dW2I7z0/Jw6QspJ3QLPrCDpve4S99IYs9qGvdcMAKU1Dsnnr2ZqNyVjF8We7rQQcrBZ5nwHm8wxiXc99X7aW0c2xFOOUYenyvHy92GwWU9MFv/hu+wqzkVG+VEd5f9DzxvYLKRQh9ZQpU2xF0VN6klJ40nruvI8tY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543593483278.51614262127157; Wed, 9 Dec 2020 11:53:13 -0800 (PST) Received: from localhost ([::1]:44784 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn4yu-0002YZ-Og for importer@patchew.org; Wed, 09 Dec 2020 14:18:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53352) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3w1-0004tP-IG for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:29 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:52934) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3vz-0000f5-Oq for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:29 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-426-xQFlPUlmM46rzy0LARsfKg-1; Wed, 09 Dec 2020 13:11:24 -0500 Received: by mail-wr1-f70.google.com with SMTP id y5so952728wrs.15 for ; Wed, 09 Dec 2020 10:11:24 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id d9sm5112287wrc.87.2020.12.09.10.11.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=rCTXiBiz0IVDGz/6PAJRoYm80wXw7KG34Wn42GEidrE=; b=AAtZ6znfT2P/1o5gebYe6U92DsvaxVNwNGplsItZeah+uXSj/KwwScRcqWDLvbFAhm8nbv +bLE8vpfhRbYsad79SH1Th70ehBHdoqwFL0d255tknRz5MLPivc6PTvzWmW6DKyGgyj+xD hmIDnAo+UvVrv8Vk2WrB2DcEovyCfj4= X-MC-Unique: xQFlPUlmM46rzy0LARsfKg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=rCTXiBiz0IVDGz/6PAJRoYm80wXw7KG34Wn42GEidrE=; b=uIw4IlEjgNpC7sQmHMY66T6pPA7rG0IpsX/mllc6WhG53RbMesI/zBjX4dTj5agc4F qfEjpFN6ca31P9btW6IHQHhK4rtSv2lSQ1FwIHOzHtoTQyqsF0VTBhTVDbzOjJ+flTbc a/1SoBU3DXC1iy+Pp35EsKTSrxcSmlMmAPQ8Wy3kvkE4YExq4jUcHzlB5GILFKI8/cBG 0qtLN7XvCPrIBE/jNrKSC2+Bs6vw/HY0vAxyjLWT8isfVBxXbAex0Qi36NX030ckVJWb b2KA6cXcsanX0oPr3LTaNJ7aXqr2whwNxWu9x1IgYBcMm6Squm7cHbjIli2N1fZo3fFA gEVQ== X-Gm-Message-State: AOAM532uG6S5yBLDQeSY/MZRwDMu9SO4QPvsjqENkpuuDddMt+AxP3x3 5/QxlBELlvtKzdx3trKm3BsVnRCNy1cjm7u/Xf56pWbx+Pv8umzUDc+OIYZUAQbmb4cqT8qfjf4 kO3kxt1+GSyr/K/sGUwO1UJGJTmSbdZPXZrDA1spVyNli3S5AFoB5NtSKi95K X-Received: by 2002:a1c:98cc:: with SMTP id a195mr4087627wme.150.1607537481861; Wed, 09 Dec 2020 10:11:21 -0800 (PST) X-Google-Smtp-Source: ABdhPJxQXwDAdHhL0L1wVMy/JGE4z82dnOH8GigKPc63jiWSLrawvAWeydAg3T8WKo3SM4tY6BU92w== X-Received: by 2002:a1c:98cc:: with SMTP id a195mr4087592wme.150.1607537481579; Wed, 09 Dec 2020 10:11:21 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:14 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 59/65] x86: acpi: let the firmware handle pending "CPU remove" events in SMM Message-ID: <20201209180546.721296-60-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Richard Henderson , Igor Mammedov , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov if firmware and QEMU negotiated CPU hotunplug support, generate _EJ0 method so that it will mark CPU for removal by firmware and pass control to it by triggering SMI. Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-6-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/acpi/cpu.h | 1 + hw/acpi/cpu.c | 14 ++++++++++++-- hw/i386/acpi-build.c | 1 + 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/include/hw/acpi/cpu.h b/include/hw/acpi/cpu.h index d71edde456..999caaf510 100644 --- a/include/hw/acpi/cpu.h +++ b/include/hw/acpi/cpu.h @@ -51,6 +51,7 @@ void cpu_hotplug_hw_init(MemoryRegion *as, Object *owner, typedef struct CPUHotplugFeatures { bool acpi_1_compatible; bool has_legacy_cphp; + bool fw_unplugs_cpu; const char *smi_path; } CPUHotplugFeatures; =20 diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index 1293204438..6350caa765 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -342,6 +342,7 @@ const VMStateDescription vmstate_cpu_hotplug =3D { #define CPU_INSERT_EVENT "CINS" #define CPU_REMOVE_EVENT "CRMV" #define CPU_EJECT_EVENT "CEJ0" +#define CPU_FW_EJECT_EVENT "CEJF" =20 void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures = opts, hwaddr io_base, @@ -394,7 +395,9 @@ void build_cpus_aml(Aml *table, MachineState *machine, = CPUHotplugFeatures opts, aml_append(field, aml_named_field(CPU_REMOVE_EVENT, 1)); /* initiates device eject, write only */ aml_append(field, aml_named_field(CPU_EJECT_EVENT, 1)); - aml_append(field, aml_reserved_field(4)); + /* tell firmware to do device eject, write only */ + aml_append(field, aml_named_field(CPU_FW_EJECT_EVENT, 1)); + aml_append(field, aml_reserved_field(3)); aml_append(field, aml_named_field(CPU_COMMAND, 8)); aml_append(cpu_ctrl_dev, field); =20 @@ -429,6 +432,7 @@ void build_cpus_aml(Aml *table, MachineState *machine, = CPUHotplugFeatures opts, Aml *ins_evt =3D aml_name("%s.%s", cphp_res_path, CPU_INSERT_EVENT= ); Aml *rm_evt =3D aml_name("%s.%s", cphp_res_path, CPU_REMOVE_EVENT); Aml *ej_evt =3D aml_name("%s.%s", cphp_res_path, CPU_EJECT_EVENT); + Aml *fw_ej_evt =3D aml_name("%s.%s", cphp_res_path, CPU_FW_EJECT_E= VENT); =20 aml_append(cpus_dev, aml_name_decl("_HID", aml_string("ACPI0010"))= ); aml_append(cpus_dev, aml_name_decl("_CID", aml_eisaid("PNP0A05"))); @@ -471,7 +475,13 @@ void build_cpus_aml(Aml *table, MachineState *machine,= CPUHotplugFeatures opts, =20 aml_append(method, aml_acquire(ctrl_lock, 0xFFFF)); aml_append(method, aml_store(idx, cpu_selector)); - aml_append(method, aml_store(one, ej_evt)); + if (opts.fw_unplugs_cpu) { + aml_append(method, aml_store(one, fw_ej_evt)); + aml_append(method, aml_store(aml_int(OVMF_CPUHP_SMI_CMD), + aml_name("%s", opts.smi_path))); + } else { + aml_append(method, aml_store(one, ej_evt)); + } aml_append(method, aml_release(ctrl_lock)); } aml_append(cpus_dev, method); diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 44c9da5112..f18b71dea9 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -1293,6 +1293,7 @@ build_dsdt(GArray *table_data, BIOSLinker *linker, CPUHotplugFeatures opts =3D { .acpi_1_compatible =3D true, .has_legacy_cphp =3D true, .smi_path =3D pm->smi_on_cpuhp ? "\\_SB.PCI0.SMI0.SMIC" : NULL, + .fw_unplugs_cpu =3D pm->smi_on_cpu_unplug, }; build_cpus_aml(dsdt, machine, opts, pm->cpu_hp_io_base, "\\_SB.PCI0", "\\_GPE._E02"); --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607543744; cv=none; d=zohomail.com; s=zohoarc; b=FYMeqfGmBaNKdnCf5T/AwntD7Yi35GbgPoqvfGRAtOOTEUXK3dvnT48W2ba+YIxqHRrlS7b5ybGs/cnRjKnbMtv4mfADs2Rn3fsXeMMjhG7Qcbhf0qu6ZeSeWz5WglT+yKfVqgs5c7NYqY1NT9Wc10GaG3L2TeGPeRw8HuOZ9ZY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607543744; h=Content-Type: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=Jijh0a7q2bzOg4rz5uZnaNopVlUK5XP7tMKVUO6pQaU=; b=bwfpYTgzCFI6Hb1EIO4Kl6+j7N1eVTA7MicmKb74cqJ0dMdLyit2+59S5C6aqVOzb9FYfh2XjSvs0dN8BfGof3ThrfezSykvhYSL9iuEjVF7DxW0AvxhTbMI1WbPxvaG6aC2x8gPIt5vGM+7Wagpu/wyNf9CfO7KN61iWTq7ydk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607543744201598.3000591331712; Wed, 9 Dec 2020 11:55:44 -0800 (PST) Received: from localhost ([::1]:53360 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn52z-0006Mf-8q for importer@patchew.org; Wed, 09 Dec 2020 14:22:45 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53382) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3w8-00055V-7p for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:36 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:51328) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3w5-0000h6-RU for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:35 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-574-AE6El_gWOHmmFFKIfwrtww-1; Wed, 09 Dec 2020 13:11:28 -0500 Received: by mail-wr1-f71.google.com with SMTP id r8so938904wro.22 for ; Wed, 09 Dec 2020 10:11:28 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id k1sm4815755wrp.23.2020.12.09.10.11.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537493; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Jijh0a7q2bzOg4rz5uZnaNopVlUK5XP7tMKVUO6pQaU=; b=aElswZOHtftoGdGUMNyiTGGurNpTEHvQQMHAGqH1F5vYcDXcO82A1ML5L4hY3HyQXL85IU LXrmwbpRUfoGDVrZRcEE0o31dr/nG5hVYinv0Ml9EIfUHBh9xmAt0rl8jfWKiDHNJDTJTS Lyp/wkcadF6Ofmmxb4g7dDRgAWdkCrg= X-MC-Unique: AE6El_gWOHmmFFKIfwrtww-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Jijh0a7q2bzOg4rz5uZnaNopVlUK5XP7tMKVUO6pQaU=; b=n7E/k9zqt1kGvZFqQkJBgGbt7Q0VmbR1Yd79cp8zN9gpX8BS+Pw8lkxaCf5xzKXvIG ZJ4OtbAKS7mBcZZw13xGY/lZacK/eKnJViZCUvaeolNgG2cm9K8HlgORnJ3i7C4TvcVT KSHPm/8xFFLAuM3a4lvo8yuk3cp+LX9h+9VaYwoYvIYLl24oHJihi83Hojn+3P35wu3d batakiPYOE2H0h4ayvgMGg/DnrLgyTVT6VY2mUbhvw1QQTIYq93l9Ltok6XjeKWtB+F8 fYhe5aVZ83YaZO2brHZ65hrxffukujkEYf2yTBYf/Lfiu747nroMJVyxzc4kcxqYfuso F+UA== X-Gm-Message-State: AOAM5319J5obClFzX35+wj39EnMyR5fVHiu0Y3xgnosdSJx9AqeRiAS9 8h6ldKIYZi/jaWURcLbnGHgiwUKAiiAto5IhUtRJD0Xl1U6hDdi4gWW9+/ksnYgqZI5v6FsmC+j TsJc2XstJVGife12GG/tzCBU0EdbJReoVM3tkUqt6jxWuFhdRtgstI6boCyzu X-Received: by 2002:a05:600c:2246:: with SMTP id a6mr4076053wmm.80.1607537486553; Wed, 09 Dec 2020 10:11:26 -0800 (PST) X-Google-Smtp-Source: ABdhPJw1cJDYhE2TE6ZjSu4wEohDAXEIVoGIp46sRIQ5vmH3t54kDCpwIEqNoqBRSjExwMa3EneTuQ== X-Received: by 2002:a05:600c:2246:: with SMTP id a6mr4076032wmm.80.1607537486370; Wed, 09 Dec 2020 10:11:26 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:22 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 60/65] tests/acpi: update expected files Message-ID: <20201209180546.721296-61-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov update expected files with following change: @@ -557,6 +557,7 @@ DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0= x00000001) CINS, 1, CRMV, 1, CEJ0, 1, + CEJF, 1, Offset (0x05), CCMD, 8 } Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-7-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 21 -------------------- tests/data/acpi/pc/DSDT | Bin 5060 -> 5065 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 6385 -> 6390 bytes tests/data/acpi/pc/DSDT.bridge | Bin 6919 -> 6924 bytes tests/data/acpi/pc/DSDT.cphp | Bin 5524 -> 5529 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 6714 -> 6719 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 5021 -> 5026 bytes tests/data/acpi/pc/DSDT.hpbrroot | Bin 3079 -> 3084 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 5132 -> 5137 bytes tests/data/acpi/pc/DSDT.memhp | Bin 6419 -> 6424 bytes tests/data/acpi/pc/DSDT.numamem | Bin 5066 -> 5071 bytes tests/data/acpi/pc/DSDT.roothp | Bin 5256 -> 5261 bytes tests/data/acpi/q35/DSDT | Bin 7796 -> 7801 bytes tests/data/acpi/q35/DSDT.acpihmat | Bin 9121 -> 9126 bytes tests/data/acpi/q35/DSDT.bridge | Bin 7814 -> 7819 bytes tests/data/acpi/q35/DSDT.cphp | Bin 8260 -> 8265 bytes tests/data/acpi/q35/DSDT.dimmpxm | Bin 9450 -> 9455 bytes tests/data/acpi/q35/DSDT.ipmibt | Bin 7871 -> 7876 bytes tests/data/acpi/q35/DSDT.memhp | Bin 9155 -> 9160 bytes tests/data/acpi/q35/DSDT.mmio64 | Bin 8927 -> 8932 bytes tests/data/acpi/q35/DSDT.numamem | Bin 7802 -> 7807 bytes tests/data/acpi/q35/DSDT.tis | Bin 8402 -> 8407 bytes 22 files changed, 21 deletions(-) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios= -tables-test-allowed-diff.h index cc75f3fc46..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,22 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/pc/DSDT", -"tests/data/acpi/q35/DSDT", -"tests/data/acpi/q35/DSDT.tis", -"tests/data/acpi/q35/DSDT.bridge", -"tests/data/acpi/q35/DSDT.mmio64", -"tests/data/acpi/q35/DSDT.ipmibt", -"tests/data/acpi/q35/DSDT.cphp", -"tests/data/acpi/q35/DSDT.memhp", -"tests/data/acpi/q35/DSDT.numamem", -"tests/data/acpi/q35/DSDT.dimmpxm", -"tests/data/acpi/q35/DSDT.acpihmat", -"tests/data/acpi/pc/DSDT.bridge", -"tests/data/acpi/pc/DSDT.ipmikcs", -"tests/data/acpi/pc/DSDT.cphp", -"tests/data/acpi/pc/DSDT.memhp", -"tests/data/acpi/pc/DSDT.numamem", -"tests/data/acpi/pc/DSDT.dimmpxm", -"tests/data/acpi/pc/DSDT.acpihmat", -"tests/data/acpi/pc/DSDT.roothp", -"tests/data/acpi/pc/DSDT.hpbridge", -"tests/data/acpi/pc/DSDT.hpbrroot", diff --git a/tests/data/acpi/pc/DSDT b/tests/data/acpi/pc/DSDT index 4ca46e5a2bdb1dfab79dd8630aeeb9a386d8b30e..f6173df1d598767a79aa34ad758= 5ad7d45c5d4f3 100644 GIT binary patch delta 74 zcmX@2eo~#wCDmuQ`QIw3J!5(P;d@#^<#AQ b^b2Nm4)P6SbawSJ01oMbU33dtLk!E0Ee6f*h3md1uU3{=3Dpd~}n?0|1#g5zGJp diff --git a/tests/data/acpi/pc/DSDT.dimmpxm b/tests/data/acpi/pc/DSDT.dimm= pxm index e015b4594c96a6e0f34c0668e3383b9a91dff38e..c44385cc01879324738ffb7f997= b8cdd762cbf97 100644 GIT binary patch delta 74 zcmdmGvfqTuCD@~J diff --git a/tests/data/acpi/pc/DSDT.hpbridge b/tests/data/acpi/pc/DSDT.hpb= ridge index 56032bcf1ba4e251f16c9028429826090531efdd..4ecf1eb13bf49499f729b53a6d0= 114672a76e28d 100644 GIT binary patch delta 74 zcmbQMzDS+RCDuQ`QIw3J!5(P;d@#^<#AQ b^b2Nm4)P6SbawSJ01A;%M( delta 69 zcmZ3aK3AQ~CD=3Dy(9?$i@R delta 69 zcmbPXG}(yDCD@Zg!6A+e3eEwpevHnZ Ye!+~+LB3&(&aPetj0`NBJ=3Dk4&0kY;2I{*Lx diff --git a/tests/data/acpi/q35/DSDT b/tests/data/acpi/q35/DSDT index e7414e78563372fca4d2aab9d16c58c0ff8468f4..d25cd7072932886d6967f4023fa= ac1e1fa6e836c 100644 GIT binary patch delta 74 zcmexj^V5dQCD delta 69 zcmexq^TmeCCD-hQE4OB1PM+ryZB(I_~<6*$%`f8W62|}l diff --git a/tests/data/acpi/q35/DSDT.bridge b/tests/data/acpi/q35/DSDT.bri= dge index 118476ff6101e11d6b1f2d3399241d7fd1a6f634..06bac139d668ddfc7914e258b47= 1a303c9dbd192 100644 GIT binary patch delta 74 zcmZp(?Y8A|33dtTmSbRG?BB>WL4woYE@Zg!6A+e3eEwpevHnZ Ye!+~+LB3&(&aPetj0`NBRV33{0jsML6aWAK diff --git a/tests/data/acpi/q35/DSDT.cphp b/tests/data/acpi/q35/DSDT.cphp index 69c5edf620529e995461ccba63b76a083f25b2b6..2b933ac482e6883efccbd7d6c96= 089602f2c0b4d 100644 GIT binary patch delta 74 zcmX@&aMFRxCD&WMJN$ IB^k;J0IQk~=3DKufz delta 47 zcmX?NyWf_}CD;VA-568OjO( DX1NXL diff --git a/tests/data/acpi/q35/DSDT.memhp b/tests/data/acpi/q35/DSDT.memhp index 85598ca3f68f437e8d5048e2cb9815f20b332152..9a802e4c67022386442976d5cb9= 97ea3fc57b58f 100644 GIT binary patch delta 74 zcmX@?e!`v0CDh($ delta 69 zcmaFjdf%1HCD (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607547299637496.7255362022155; Wed, 9 Dec 2020 12:54:59 -0800 (PST) Received: from localhost ([::1]:36722 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn56i-0002xD-C3 for importer@patchew.org; Wed, 09 Dec 2020 14:26:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53374) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3w7-00053e-3X for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:35 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:34736) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3w5-0000h2-BE for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:34 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-184-oqUw2xX8MOOxBFrZ7w6TDg-1; Wed, 09 Dec 2020 13:11:30 -0500 Received: by mail-wr1-f72.google.com with SMTP id x10so964809wrs.2 for ; Wed, 09 Dec 2020 10:11:30 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id b73sm4957441wmb.0.2020.12.09.10.11.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537492; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=mZUQSSm1IlD4lFJVF8AvCKDdkoRkM4eh9etogMBBR1A=; b=XWqWRyjK3XbM2/LBeh7rVaGNuSENX5rpShYg2Y7Q3NUZ8clgSwxrotqf1nrSGlSQrj1ZEr kmBjAufoiMr3Z2pt42op78pkbISVb5p0PU2hpvzeoBV89CO2bxg4LNAXU37K+1GP77mABZ r1EbHVU9y4N9VZYKZgP62WomOVCjAeg= X-MC-Unique: oqUw2xX8MOOxBFrZ7w6TDg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=mZUQSSm1IlD4lFJVF8AvCKDdkoRkM4eh9etogMBBR1A=; b=jFQVFtcgnkNZwfziibjBmV1XechkgAWE//LmzDlG51BeS+RB9VWb8bp+cI2EKSR8ip IwC5eS0tMWSYDAw2Fvam3ud7OVtPcby6CW3Tpa8Dd2GfyOM7ihoR6f4jm1ovSohJHfWg VwcS5mP0FIp/CwswFNnWveJjjez4eWW3caJfhSDT8+tkQkeIZy8z2g5yvOZZxVOaIqY8 Ue2VyZ5A3WVRcjv6CnRZFDEEgG6pklWa2VX/84FmCjFQDEKAFB7MNvQ9JjPnZWSgCHBs BEYgCb35PB+fMpbL+vWBVNVotnEjoP/X1BweO15KG1NFnAFFjS06desq2CpzECP+QrY+ 9SxA== X-Gm-Message-State: AOAM530hRM7ZNN2wiE/EQINJ5lW9pPsGRC9ZZ2ENBvZVQNfvolfws+32 F4Y7QsQlcT9IQcgPIPyUAq/j6NWEIUjzuNIfMoEhS+QQj7h8ruj15lNLAAJT7PEXZCppFYK6UM3 nKjisTJW2+Y7K1+sD2D9GCwLsk83Eb3BXQlM4gjrpVZJpQaFq/Q4puXxz8L4D X-Received: by 2002:adf:f84b:: with SMTP id d11mr4059603wrq.216.1607537489166; Wed, 09 Dec 2020 10:11:29 -0800 (PST) X-Google-Smtp-Source: ABdhPJy+6ENLCWSQjBIuClPB3Rac5gtUoFvRJzm5EXWmDQKFMI7FNDvjVDRWPF4VfA+mG2c7bPhWQA== X-Received: by 2002:adf:f84b:: with SMTP id d11mr4059570wrq.216.1607537488815; Wed, 09 Dec 2020 10:11:28 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:26 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 61/65] x86: ich9: factor out "guest_cpu_hotplug_features" Message-ID: <20201209180546.721296-62-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov it will be reused by next patch to check validity of unplug feature. Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-8-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/isa/lpc_ich9.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 087a18d04d..da80430144 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -366,6 +366,7 @@ static void smi_features_ok_callback(void *opaque) { ICH9LPCState *lpc =3D opaque; uint64_t guest_features; + uint64_t guest_cpu_hotplug_features; =20 if (lpc->smi_features_ok) { /* negotiation already complete, features locked */ @@ -378,9 +379,12 @@ static void smi_features_ok_callback(void *opaque) /* guest requests invalid features, leave @features_ok at zero */ return; } + + guest_cpu_hotplug_features =3D guest_features & + (BIT_ULL(ICH9_LPC_SMI_F_CPU_HOTPLUG_BIT) | + BIT_ULL(ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BI= T)); if (!(guest_features & BIT_ULL(ICH9_LPC_SMI_F_BROADCAST_BIT)) && - guest_features & (BIT_ULL(ICH9_LPC_SMI_F_CPU_HOTPLUG_BIT) | - BIT_ULL(ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT))) { + guest_cpu_hotplug_features) { /* * cpu hot-[un]plug with SMI requires SMI broadcast, * leave @features_ok at zero --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542575; cv=none; d=zohomail.com; s=zohoarc; b=bRWmPby/SdjWcBlfCtC734VqX3xND+SxagWAfCxyakhOxVvxDGO0GGETSFQ03S37bnAG2Zl8Ymbi53V/rTk6Nv0CK7tGNnoMn3QOcJLEssu7Hr7wvFeAEgA4zSuMAHN/QmWnm9605UdaQ7Ua4I1pdGk0P+jSv3r41+Ghdl9GY6Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542575; h=Content-Type: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=ao4RDAEOM2YLTiIdrHeiCtTgsP0kjiPBhD8XurXHvys=; b=haW3KP4pw8l/dSYktLuE2tHF6pTRn6DedaAgKnQ0GmY7cisQ6KxrNmM0aM07Ea5A7s3G94A3EGDkBRylKyJSEyFI9nI+3P/PsaSgy5cw1jYQYNDJ14n91GEO8ODsonW+jjz0Fi5Ml+XnMVOisP8f2SEzdD7mAvG3gvzfpVHsC6U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542575264158.79590218103579; Wed, 9 Dec 2020 11:36:15 -0800 (PST) Received: from localhost ([::1]:53532 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn5G1-0001uf-Uu for importer@patchew.org; Wed, 09 Dec 2020 14:36:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54052) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3yb-00076d-7i for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:14:10 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:46935) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3yV-0001RY-Tc for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:14:08 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-465-7QPTOcdWPwu1RWWDkQguMg-1; Wed, 09 Dec 2020 13:11:37 -0500 Received: by mail-wr1-f72.google.com with SMTP id p16so962486wrx.4 for ; Wed, 09 Dec 2020 10:11:36 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id t1sm5280711wro.27.2020.12.09.10.11.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537643; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ao4RDAEOM2YLTiIdrHeiCtTgsP0kjiPBhD8XurXHvys=; b=Ft5t9fZzGusl9Svxm9mLZ4RfxCmruukgwLymS2bOZVgEyGzMg+gNvQm6iquu7qbsp6yvBG vLA23MoYgE6jpcncgdSrjSTqRZr/eLdNC77B6rYjdsJvjluXVODhhIvD3YElyVEILJSkn5 my3ZQGIh1RcF8DTzWHIkZnDUXKvDOZ0= X-MC-Unique: 7QPTOcdWPwu1RWWDkQguMg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=ao4RDAEOM2YLTiIdrHeiCtTgsP0kjiPBhD8XurXHvys=; b=aLLKETGF/LJLl/pC2gEa+dTcFs2QXhTyIFnBdGlijT8MgaBPizvHwVvfsDJAigqBFF 3EmRIwdaPty6+OnrlIYppwRrWSGHOiAHODxMBr6Hx72YRps+/R3DFwq2DgkO7CLjqxpj eDkOpXxJ1PwmCHeSVQ6EGenMcVl7hZh2aqEAyIENFPWd/UwrlZuIHyuXU2CJQkc4S0UY Ju1wAqvW5B0LsMnS3zcPKh1Y5CWcwNlxEQkYtPrs8d6crbXLG2gaH1cWjq7PN5qh/NBJ HyB7cM1cJGeHK1uMHAzXA0YoyIFT0FDT6VE6UfOyqwyzPL6fgxrnIGnTpRJKgUkwOc1U TjNQ== X-Gm-Message-State: AOAM532kLbve69fEtmThQkw15sa2ljTS22Oej8rXjhSOfen1kotB/fja D8fsSb8GRG3wX7KgzYvWeNnsNPn/rGBamhJqAsiX2E7tMkCIEVKMbop1HQjnJHvfIOacS8837T2 b8/6DDOpWJ3bKNC25LcoAF/5iRqi85o+rBHb67DGkCVW1sbFmleo3JnpD9KvS X-Received: by 2002:a5d:5146:: with SMTP id u6mr4257124wrt.66.1607537495561; Wed, 09 Dec 2020 10:11:35 -0800 (PST) X-Google-Smtp-Source: ABdhPJwdhxT42pF6yaMy9b7tDilgZvSggS4TBGBZJYI1BT4wEg4IWDioKAjdLoV0HW6cUJoaVnB6Dg== X-Received: by 2002:a5d:5146:: with SMTP id u6mr4257100wrt.66.1607537495392; Wed, 09 Dec 2020 10:11:35 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 62/65] x86: ich9: let firmware negotiate 'CPU hot-unplug with SMI' feature Message-ID: <20201209180546.721296-63-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Eduardo Habkost , Richard Henderson , Igor Mammedov , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Igor Mammedov Keep CPU hotunplug with SMI disabled on 5.2 and older and enable it by default on newer machine types. Signed-off-by: Igor Mammedov Message-Id: <20201207140739.3829993-9-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/pc.c | 4 +++- hw/isa/lpc_ich9.c | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 675e15c0aa..9e29f3792b 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -97,7 +97,9 @@ #include "trace.h" #include CONFIG_DEVICES =20 -GlobalProperty pc_compat_5_2[] =3D {}; +GlobalProperty pc_compat_5_2[] =3D { + { "ICH9-LPC", "x-smi-cpu-hotunplug", "off" }, +}; const size_t pc_compat_5_2_len =3D G_N_ELEMENTS(pc_compat_5_2); =20 GlobalProperty pc_compat_5_1[] =3D { diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index da80430144..d3145bf014 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -392,6 +392,12 @@ static void smi_features_ok_callback(void *opaque) return; } =20 + if (guest_cpu_hotplug_features =3D=3D + BIT_ULL(ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT)) { + /* cpu hot-unplug is unsupported without cpu-hotplug */ + return; + } + /* valid feature subset requested, lock it down, report success */ lpc->smi_negotiated_features =3D guest_features; lpc->smi_features_ok =3D 1; @@ -774,7 +780,7 @@ static Property ich9_lpc_properties[] =3D { DEFINE_PROP_BIT64("x-smi-cpu-hotplug", ICH9LPCState, smi_host_features, ICH9_LPC_SMI_F_CPU_HOTPLUG_BIT, true), DEFINE_PROP_BIT64("x-smi-cpu-hotunplug", ICH9LPCState, smi_host_featur= es, - ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT, false), + ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT, true), DEFINE_PROP_END_OF_LIST(), }; =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607549465; cv=none; d=zohomail.com; s=zohoarc; b=lJ4rtRXdNhQz7p3rEs7sFpbOzwoCVNO2rNdU3ckU6NN4lhJ+rNneDRWp7JscsMco1GjxjCMaqWvQefAXaiPIvRM2ptNE8YnlzjZiznVhHY9qspbR0CnldLtoijfRV3XEdcNZa3uESUk+Fa4XTvoT0bg26I4H+RNQ5tXxLHM98LM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607549465; h=Content-Type: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=IXfUWibUDD3qvFBeOlmCILSH/5yiUugL3d2LfLjhcv4=; b=SAdzLuJlW5Zw1cpkdjS0QDJ7GJRfbxiBxvOoHkigQdvNA+PkIAXdyHbOyq7YVIa5C3zWGONOdK8GVbe9XVpnak+SEh2o17ErjloAbhb3BjXvhf7IWAdFBezKVBIMLBxdtxKbETdA791fXkGzOdn7lQDO0cUJOIWa/ATPRVexLQY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607549465836154.00676151521714; Wed, 9 Dec 2020 13:31:05 -0800 (PST) Received: from localhost ([::1]:34588 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn566-0001wV-Fb for importer@patchew.org; Wed, 09 Dec 2020 14:25:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53474) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3wO-0005MB-UV for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:54 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:29616) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3wM-0000mc-Dm for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:52 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-174-3Fgvh8O5NuG7pN-3CnTx2g-1; Wed, 09 Dec 2020 13:11:47 -0500 Received: by mail-wm1-f71.google.com with SMTP id u123so640927wmu.5 for ; Wed, 09 Dec 2020 10:11:47 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id t16sm5016125wri.42.2020.12.09.10.11.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=IXfUWibUDD3qvFBeOlmCILSH/5yiUugL3d2LfLjhcv4=; b=CHHVIe5CPHq0ZTPQ6yVi1zCsoliOIAlHnjmpZZaSZo9Y6DfQzkp8m3ru3I9mZd/+5sPYrX PVrLWPvZuyTNBqMojniNvBwHlnpTyKsatq7oj9g3/QPWdjDqV/nMm7gEJrXLRnDYqpZFAm tqcC0CI7nYX7LEEShV4YvGETrseF+Dg= X-MC-Unique: 3Fgvh8O5NuG7pN-3CnTx2g-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=IXfUWibUDD3qvFBeOlmCILSH/5yiUugL3d2LfLjhcv4=; b=Kgj6o9qZrBRBqfoSUyr5reVy1p9Fc+3OCQjDop9kcp9H0NhUpkBH41YfDQd39CoXss Bx0ocMM/HA9asj+TAaX9y2Mzuy5Dw5OnHOQrFZOGsOBSnRpxgl4+If4tj4ptNJ+3CBlY BeGVl+b5H9+lZ1sOC75tkYL8T4ogRrRdVz7ZGx4qietxkcYQ9mb3nrixnEGlW6VRwpOy ahxmaOiyEbOsyC/McygwssYbsyaDsjOpKNJpQQhGWzPM+Fs+MfVsPRmwEXOusP/Nbyzk NpNNng96FwGKJqAKhzHCftIJj3YDcqpA+yDs+3ZsPMt+4wosyR6I8BuBRH/saLCdFJBA frxw== X-Gm-Message-State: AOAM530/UkHzCGNkG49dNlU7FRpWX20rDh0N4/Ec4HwZNoehOp7Axa5M PPEA0jctNuazJWlmXzpkw0siAbeRU0zOWeeHyU+Oti6jeyLLyfMVkb3aoIHyMJbWC6Q88WbnlCo uH0f9B/UpfAORrNqNf3qSWPvXuH22L5fyazf82MJkY6PzxkwwlHm9OpaSzq+I X-Received: by 2002:adf:e64b:: with SMTP id b11mr3981491wrn.257.1607537506000; Wed, 09 Dec 2020 10:11:46 -0800 (PST) X-Google-Smtp-Source: ABdhPJzzxpwI4ETyf/9VAJua3fWTwOmtWHjN4lD7+HL2SOedA+edgndCCOtv3pDueztMkkhP2vFHAA== X-Received: by 2002:adf:e64b:: with SMTP id b11mr3981476wrn.257.1607537505844; Wed, 09 Dec 2020 10:11:45 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:36 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 63/65] pcie_aer: Fix help message of pcie_aer_inject_error command Message-ID: <20201209180546.721296-64-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Zenghui Yu , Peter Maydell , "Dr . David Alan Gilbert" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zenghui Yu There is an interesting typo in the help message of pcie_aer_inject_error command. Use 'tlp' instead of 'tlb' to match the PCIe AER term. Signed-off-by: Zenghui Yu Message-Id: <20201204030953.837-1-yuzenghui@huawei.com> Reviewed-by: Dr. David Alan Gilbert Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hmp-commands.hx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hmp-commands.hx b/hmp-commands.hx index ff2d7aa8f3..dd460eb908 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -1302,8 +1302,8 @@ ERST " -c for correctable error\n\t\t\t" " =3D qdev device id\n\t\t\t" " =3D error string or 32bit\n\t\t\t" - " =3D 32bit x 4\n\t\t\t" - " =3D 32bit x 4", + " =3D 32bit x 4\n\t\t\t" + " =3D 32bit x 4", .cmd =3D hmp_pcie_aer_inject_error, }, =20 --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607544015; cv=none; d=zohomail.com; s=zohoarc; b=fceyo7HG4lEH4q5EFng6n88RwYn8lqfddxOF0EbLniDgLmTphlBCmB/UbFXmdM54EQ0n8RI/uQMkavhRYXedshRz1Zvl+6iKBPgAvjFziwwOBykKCz/cMbPK6/y2RUdFSVcXL9oR6BB2v4SuwZ6y/Mis4GT9pQ6dwp3zmHbSdRo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607544015; h=Content-Type: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=8nPRkjSHKPRfmK7HdWbx1E1TQS6U/DqNOGXcP9rxsMI=; b=Wehkq+W5ybvUkFcTJQfbjTx8uN7S//1gZWWZYP/SJ3pC/C4Nw9fvnPaE9W4cZOPJuFvloqKS5/f9WC3tC0JxkkG8VIWubMD6xOpDbeXFXJsdfmRVQQ0AoTWI+LCUWtgS9KEtrHa1KWww+IbWDUmsHs5LG3yqlDicOpyt+3GXmAc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607544015278864.8541567533921; Wed, 9 Dec 2020 12:00:15 -0800 (PST) Received: from localhost ([::1]:36272 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn56a-0002ke-LM for importer@patchew.org; Wed, 09 Dec 2020 14:26:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53502) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3wU-0005Oh-Gs for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:12:01 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:36255) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3wQ-0000ng-CO for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:11:58 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-156-905onueaPO-WCKdS1-_hZA-1; Wed, 09 Dec 2020 13:11:50 -0500 Received: by mail-wm1-f69.google.com with SMTP id u123so640956wmu.5 for ; Wed, 09 Dec 2020 10:11:49 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id q4sm4639862wmc.2.2020.12.09.10.11.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=8nPRkjSHKPRfmK7HdWbx1E1TQS6U/DqNOGXcP9rxsMI=; b=B99omGekDL452roqc8aS4zAHp1ENO02InTkdqRCAuz8rPxCgrM8yCIwtkdVA56196uf/2g Gz13d0zl2gTrEwTx7cx7UPele4GSUBqPzbEB64qYMhGGei+wosdICE73nElVSfP44DZMlx nXGHHZ1IPFfFx/vo0NI3+hV0FUv3Qek= X-MC-Unique: 905onueaPO-WCKdS1-_hZA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=8nPRkjSHKPRfmK7HdWbx1E1TQS6U/DqNOGXcP9rxsMI=; b=mZ1HHD2f4mH8K63lVXhU/P14jPnomPXg8Z6lj+WxPMCWxpx2b5Fcizt2OQqCMsHnn6 xu+VE+cSRaN2o7NWPx6094w4bC/KYmhCyDigEDcpMgrOCcm/8Gjo7SdHsoZ+JOGEyeay yixosTluC8jI34a9tPOJHSp1ecs4vgyNZnG9ynSxIHkvyTJFpFEZRRFrrs7+GtuXhluW tHZvM5HnyeI4fQjfVbtjuqoSqlg1x7H04XwEI6PtUeVBSVx+Or/3tpSKxVFcG/zk59hq uzsOmsAiveeUi2IMYVp7GLHiGcn2DNivqgHCYWg2nv0tuU0qhDJvS+pCleo2W5Mp0K5A /d2Q== X-Gm-Message-State: AOAM531z1GrGdaFtHDgIZsyUD53rzNo5PeLVsOGpZ/+TDcDYNSEjlxw4 nX1reJgB6iJgTWt2fEgWBgvAtHQccOrKb7xTp79bF4yo0XWkoWDw0w5yOwRMV5QO7bO4lH/Nos8 BnndGKV4RFGHbVcq7BgxEMF/DY2Lww9bCdC/FxQFHlD//0mBKKF0LXmzu4wH6 X-Received: by 2002:a1c:7f90:: with SMTP id a138mr4148419wmd.61.1607537508517; Wed, 09 Dec 2020 10:11:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJwP1kZgEj5DQXyzg/fkLScNhUY2HKzGx9R0OYAdcrW5JoJ4toeiu9rxn7RLyumcxsISNbU6vw== X-Received: by 2002:a1c:7f90:: with SMTP id a138mr4148399wmd.61.1607537508335; Wed, 09 Dec 2020 10:11:48 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:46 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 64/65] hw/virtio-pci Added counter for pcie capabilities offsets. Message-ID: <20201209180546.721296-65-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Andrew Melnychenko Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Andrew Melnychenko Removed hardcoded offset for ats. Added cap offset counter for future capabilities like AER. Signed-off-by: Andrew Melnychenko Message-Id: <20201203110713.204938-2-andrew@daynix.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/virtio/virtio-pci.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c index 36524a5728..ceaa233129 100644 --- a/hw/virtio/virtio-pci.c +++ b/hw/virtio/virtio-pci.c @@ -1798,6 +1798,7 @@ static void virtio_pci_realize(PCIDevice *pci_dev, Er= ror **errp) =20 if (pcie_port && pci_is_express(pci_dev)) { int pos; + uint16_t last_pcie_cap_offset =3D PCI_CONFIG_SPACE_SIZE; =20 pos =3D pcie_endpoint_cap_init(pci_dev, 0); assert(pos > 0); @@ -1833,7 +1834,8 @@ static void virtio_pci_realize(PCIDevice *pci_dev, Er= ror **errp) } =20 if (proxy->flags & VIRTIO_PCI_FLAG_ATS) { - pcie_ats_init(pci_dev, 256); + pcie_ats_init(pci_dev, last_pcie_cap_offset); + last_pcie_cap_offset +=3D PCI_EXT_CAP_ATS_SIZEOF; } =20 if (proxy->flags & VIRTIO_PCI_FLAG_INIT_FLR) { --=20 MST From nobody Wed May 15 18:41:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607542193; cv=none; d=zohomail.com; s=zohoarc; b=GL11M4tIR/IJ2xWGA5bbUFU16OQSG3pwUzazqIF5BFqB7bCHOZVfNOKAKPpH/JcrbF6qs6yWtzm8ranwSMaTlWodFGiKocjCzZErgXJWd+GY9q4UlOKZhRiufByKnIm24wleifoLNdMKrG2oKdiWfqkymqJnkWybiPZhqIW7L4Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607542193; h=Content-Type: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=ldhJvkXwpC1AJIX4EnOROCgga2KEj6qRDx4npB7g4RI=; b=aJ/nCE7briVo7tJXKNTBeMzLaPIwONjEgu/nQBQRMOzuzbPcqMDsFdimHIycq5kphPsf9YT/ndT5A91L4BAHQw9zCIjDAHyTj3d+nrCJe4HTQSLsyZ+WKPp9Q1GCcnhpjn8wbW2o9JZY7jd8gqlS/drumELboLU4jJw/+wytNug= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607542193355127.52596738617774; Wed, 9 Dec 2020 11:29:53 -0800 (PST) Received: from localhost ([::1]:43256 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kn59r-0005j8-NP for importer@patchew.org; Wed, 09 Dec 2020 14:29:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53530) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn3wb-0005PS-Lv for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:12:06 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:44869) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kn3wY-0000q3-Bj for qemu-devel@nongnu.org; Wed, 09 Dec 2020 13:12:05 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-546-J0ZY2GidNrCsiyTpeeVGlA-1; Wed, 09 Dec 2020 13:11:58 -0500 Received: by mail-wm1-f69.google.com with SMTP id q17so643446wmc.1 for ; Wed, 09 Dec 2020 10:11:58 -0800 (PST) Received: from redhat.com (bzq-79-176-44-197.red.bezeqint.net. [79.176.44.197]) by smtp.gmail.com with ESMTPSA id d16sm5389254wrw.17.2020.12.09.10.11.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 09 Dec 2020 10:11:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607537521; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ldhJvkXwpC1AJIX4EnOROCgga2KEj6qRDx4npB7g4RI=; b=hp6vAAFsSqCayyXbV5B/zlcuB7+cXDDg649SvnUxKarcmdoDGdItRI9kFzl+mMtMJOiFt4 vcLzVgiLzK63mw/jBqZpgRKj5uNM+Bq01OmgQxBNMCaltbfacmx6FOlQm64kDQtV3uW5bS bqRZMdn1x4NebkjufSed/wFm9dLYj1c= X-MC-Unique: J0ZY2GidNrCsiyTpeeVGlA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=ldhJvkXwpC1AJIX4EnOROCgga2KEj6qRDx4npB7g4RI=; b=JMNjeU+jcEWU4ebawclSOotg22b1o8NQf40R4psJiXJIwXIALjz4DGiwMQTnodRB2C VLZ+660tKo52ev60//xpUC+yoiVZVqwWgVm2wMWozo9MQWjXIw0jFzjQTsvJBiri+Axn DsmCMFMP78X+eztP2XUK6UcWi7ulfxgpuhUFXWvcVjMtryB4ALfddg+3iHAeYZ+Ib5cP /Y0r76qucFFQDaoaQ/TRTzBrWzkHakwCDHBTq6Kn5Y5vcpn9MSy4M7mCfThe2V5Fht1V mttkLRuQ2WkNikDEmuIRok1jw1z99dnCHkwPFCCj/N//QZAJGUZatoNZ7zVxkL3XXSZ4 E5nw== X-Gm-Message-State: AOAM530E6VAIedVXPClJXE8KZ/42OZR46ugJHr0vVMNRxqHXhpilI/zc rDZuLyw1LWgpiYTZ96Qf2DiGLyP5xURSgEMAM6eLQnu12aoyjGW7J72tmd6kmyO8BOCnaOqRACN Uani0sKHL/WnIIRxrMvqelFh5Q9PoTuammilllQbqgjr3n0oj6g/04HxNSsQv X-Received: by 2002:a1c:df0a:: with SMTP id w10mr4146225wmg.114.1607537516736; Wed, 09 Dec 2020 10:11:56 -0800 (PST) X-Google-Smtp-Source: ABdhPJy+vPKivbyaEdUQj1bnsLdYd7uHDMl1JNl5V2xwP3NaoWBJN4ZTmuS5EJbdxOiBPTXgI2yi+A== X-Received: by 2002:a1c:df0a:: with SMTP id w10mr4146196wmg.114.1607537516444; Wed, 09 Dec 2020 10:11:56 -0800 (PST) Date: Wed, 9 Dec 2020 13:11:48 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL v2 65/65] hw/virtio-pci Added AER capability. Message-ID: <20201209180546.721296-66-mst@redhat.com> References: <20201209180546.721296-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20201209180546.721296-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Andrew Melnychenko Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Andrew Melnychenko Added AER capability for virtio-pci devices. Also added property for devices, by default AER is disabled. Signed-off-by: Andrew Melnychenko Message-Id: <20201203110713.204938-3-andrew@daynix.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/virtio/virtio-pci.h | 4 ++++ hw/virtio/virtio-pci.c | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h index 06e2af12de..d7d5d403a9 100644 --- a/hw/virtio/virtio-pci.h +++ b/hw/virtio/virtio-pci.h @@ -41,6 +41,7 @@ enum { VIRTIO_PCI_FLAG_INIT_LNKCTL_BIT, VIRTIO_PCI_FLAG_INIT_PM_BIT, VIRTIO_PCI_FLAG_INIT_FLR_BIT, + VIRTIO_PCI_FLAG_AER_BIT, }; =20 /* Need to activate work-arounds for buggy guests at vmstate load. */ @@ -80,6 +81,9 @@ enum { /* Init Function Level Reset capability */ #define VIRTIO_PCI_FLAG_INIT_FLR (1 << VIRTIO_PCI_FLAG_INIT_FLR_BIT) =20 +/* Advanced Error Reporting capability */ +#define VIRTIO_PCI_FLAG_AER (1 << VIRTIO_PCI_FLAG_AER_BIT) + typedef struct { MSIMessage msg; int virq; diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c index ceaa233129..f863f69ede 100644 --- a/hw/virtio/virtio-pci.c +++ b/hw/virtio/virtio-pci.c @@ -1817,6 +1817,12 @@ static void virtio_pci_realize(PCIDevice *pci_dev, E= rror **errp) */ pci_set_word(pci_dev->config + pos + PCI_PM_PMC, 0x3); =20 + if (proxy->flags & VIRTIO_PCI_FLAG_AER) { + pcie_aer_init(pci_dev, PCI_ERR_VER, last_pcie_cap_offset, + PCI_ERR_SIZEOF, NULL); + last_pcie_cap_offset +=3D PCI_ERR_SIZEOF; + } + if (proxy->flags & VIRTIO_PCI_FLAG_INIT_DEVERR) { /* Init error enabling flags */ pcie_cap_deverr_init(pci_dev); @@ -1858,7 +1864,15 @@ static void virtio_pci_realize(PCIDevice *pci_dev, E= rror **errp) =20 static void virtio_pci_exit(PCIDevice *pci_dev) { + VirtIOPCIProxy *proxy =3D VIRTIO_PCI(pci_dev); + bool pcie_port =3D pci_bus_is_express(pci_get_bus(pci_dev)) && + !pci_bus_is_root(pci_get_bus(pci_dev)); + msix_uninit_exclusive_bar(pci_dev); + if (proxy->flags & VIRTIO_PCI_FLAG_AER && pcie_port && + pci_is_express(pci_dev)) { + pcie_aer_exit(pci_dev); + } } =20 static void virtio_pci_reset(DeviceState *qdev) @@ -1911,6 +1925,8 @@ static Property virtio_pci_properties[] =3D { VIRTIO_PCI_FLAG_INIT_PM_BIT, true), DEFINE_PROP_BIT("x-pcie-flr-init", VirtIOPCIProxy, flags, VIRTIO_PCI_FLAG_INIT_FLR_BIT, true), + DEFINE_PROP_BIT("aer", VirtIOPCIProxy, flags, + VIRTIO_PCI_FLAG_AER_BIT, false), DEFINE_PROP_END_OF_LIST(), }; =20 --=20 MST