From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1647612743734718.7627849852481; Fri, 18 Mar 2022 07:12:23 -0700 (PDT) Received: from localhost ([::1]:57858 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDL4-0005iY-PW for importer@patchew.org; Fri, 18 Mar 2022 10:12:22 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53130) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5u-0005ye-Gg for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:42 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:45489) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5s-00084w-8r for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:41 -0400 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-363-ROPUut2cOs-gxUC4iaj2fg-1; Fri, 18 Mar 2022 09:56:36 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0BCFE38035BA; Fri, 18 Mar 2022 13:56:36 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C5C2BC26E8E; Fri, 18 Mar 2022 13:56:35 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 18F391800383; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611799; 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=iPX8HHOnP/v4x7BOZ274/TNELsNZG1ek9HWnH7MaQuE=; b=cW+jwYDjcAVVGD9HNbgV0nNi09DPr8sk0X0RMo+K14PnR0eMJ26TIRKtoQoPXOj90YccAW bJdbfxnyWlluXeNJ7YB4aPT+RYNnlYPkwx9AU9LQTxLqa34Nca77wRuY4nEfg6oLme5p3O ZQBxrhyhP1+OWlrzRznXqA2Eij7jLgU= X-MC-Unique: ROPUut2cOs-gxUC4iaj2fg-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 1/6] ui/gtk: Ignore 2- and 3-button press events Date: Fri, 18 Mar 2022 14:56:29 +0100 Message-Id: <20220318135634.2851040-2-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.8 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com 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=170.10.129.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "K. Lange" , Gerd Hoffmann , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647612745427100001 Content-Type: text/plain; charset="utf-8" From: "K. Lange" GTK already produces corresponding GDK_BUTTON_PRESS events alongside 2BUTTON and 3BUTTON_PRESS events. The 2BUTTON and 3BUTTON_PRESS events were incorrectly being interpreted and passed to guests as button release events. Resolves: https://gitlab.com/qemu-project/qemu/-/issues/558 Signed-off-by: K. Lange Message-Id: <20220305104521.3583703-1-klange@toaruos.org> Signed-off-by: Gerd Hoffmann --- ui/gtk.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ui/gtk.c b/ui/gtk.c index 1b24a67d7964..c57c36749e0e 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -972,6 +972,10 @@ static gboolean gd_button_event(GtkWidget *widget, Gdk= EventButton *button, return TRUE; } =20 + if (button->type =3D=3D GDK_2BUTTON_PRESS || button->type =3D=3D GDK_3= BUTTON_PRESS) { + return TRUE; + } + qemu_input_queue_btn(vc->gfx.dcl.con, btn, button->type =3D=3D GDK_BUTTON_PRESS); qemu_input_event_sync(); --=20 2.35.1 From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1647613190225870.5931071839984; Fri, 18 Mar 2022 07:19:50 -0700 (PDT) Received: from localhost ([::1]:45650 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDSG-0000Sv-US for importer@patchew.org; Fri, 18 Mar 2022 10:19:48 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53136) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5v-00061x-Pc for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:43 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:26020) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5t-000851-3W for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:42 -0400 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-550-tpJOjEz9NhqsIE3888ALdQ-1; Fri, 18 Mar 2022 09:56:38 -0400 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0AE5E296A61D; Fri, 18 Mar 2022 13:56:38 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9B67A401E87; Fri, 18 Mar 2022 13:56:37 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 24C49180039C; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611800; 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=2MzvIXUJxWVCA7yJGbPBHTqLRj5aTTpJZZ60DT+fCw0=; b=AHmt7GPy8uSWsCk6YVQZfoKfhLwlCcIqLmBz/z4WJRByUunvYkEtqVr7K4yAtsdj63649E U7IsyImIKgGeRqsEPs86+TgNAqNQz6stpyJjoO5YmByIaHWr/2fPcqID4CVA2nOdMb8Rcn VshOGsO1+plAHUY0RFYslDu6KTq8Eqo= X-MC-Unique: tpJOjEz9NhqsIE3888ALdQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 2/6] ui: avoid unnecessary memory operations in vnc_refresh_server_surface() Date: Fri, 18 Mar 2022 14:56:30 +0100 Message-Id: <20220318135634.2851040-3-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.10 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" 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=170.10.133.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lu Gao , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Jianxian Wen , Gerd Hoffmann , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647613193188100001 From: "Wen, Jianxian" Check the dirty bits in advance to avoid unnecessary memory operations. In the case that guest surface has different format than the server, but it does not have dirty bits which means no refresh is actually needed, the memory operations is not necessary. Signed-off-by: Jianxian Wen Signed-off-by: Lu Gao Reviewed-by: Marc-Andr=C3=A9 Lureau Message-Id: <4C23C17B8E87E74E906A25A3254A03F4FA22100C@SHASXM06.verisilicon.= com> Signed-off-by: Gerd Hoffmann --- ui/vnc.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 3ccd33dedcc8..310a873c2184 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -3098,6 +3098,9 @@ static int vnc_refresh_server_surface(VncDisplay *vd) VncState *vs; int has_dirty =3D 0; pixman_image_t *tmpbuf =3D NULL; + unsigned long offset; + int x; + uint8_t *guest_ptr, *server_ptr; =20 struct timeval tv =3D { 0, 0 }; =20 @@ -3106,6 +3109,13 @@ static int vnc_refresh_server_surface(VncDisplay *vd) has_dirty =3D vnc_update_stats(vd, &tv); } =20 + offset =3D find_next_bit((unsigned long *) &vd->guest.dirty, + height * VNC_DIRTY_BPL(&vd->guest), 0); + if (offset =3D=3D height * VNC_DIRTY_BPL(&vd->guest)) { + /* no dirty bits in guest surface */ + return has_dirty; + } + /* * Walk through the guest dirty map. * Check and copy modified bits from guest to server surface. @@ -3130,15 +3140,6 @@ static int vnc_refresh_server_surface(VncDisplay *vd) line_bytes =3D MIN(server_stride, guest_ll); =20 for (;;) { - int x; - uint8_t *guest_ptr, *server_ptr; - unsigned long offset =3D find_next_bit((unsigned long *) &vd->gues= t.dirty, - height * VNC_DIRTY_BPL(&vd->g= uest), - y * VNC_DIRTY_BPL(&vd->guest)= ); - if (offset =3D=3D height * VNC_DIRTY_BPL(&vd->guest)) { - /* no more dirty bits */ - break; - } y =3D offset / VNC_DIRTY_BPL(&vd->guest); x =3D offset % VNC_DIRTY_BPL(&vd->guest); =20 @@ -3177,6 +3178,13 @@ static int vnc_refresh_server_surface(VncDisplay *vd) } =20 y++; + offset =3D find_next_bit((unsigned long *) &vd->guest.dirty, + height * VNC_DIRTY_BPL(&vd->guest), + y * VNC_DIRTY_BPL(&vd->guest)); + if (offset =3D=3D height * VNC_DIRTY_BPL(&vd->guest)) { + /* no more dirty bits */ + break; + } } qemu_pixman_image_unref(tmpbuf); return has_dirty; --=20 2.35.1 From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1647612562603367.9991919150556; Fri, 18 Mar 2022 07:09:22 -0700 (PDT) Received: from localhost ([::1]:52080 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDIA-0001lQ-UT for importer@patchew.org; Fri, 18 Mar 2022 10:09:22 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53188) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5x-0006Dp-Rc for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:45 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:32306) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5v-00085Y-W9 for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:45 -0400 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-384-Bqx2nBCDPZSoOcypt4_mJQ-1; Fri, 18 Mar 2022 09:56:38 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id CC6768002BF; Fri, 18 Mar 2022 13:56:37 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9B93B1457F13; Fri, 18 Mar 2022 13:56:37 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 3059D18003A8; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611803; 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=CKwyxSYoWcYMR7zWANArUY9Wj0YqvQZgSAOYbzSALFM=; b=Gn53EJdeeI/H/23+lKSku+0Nhhcaa6t6TQFI8knBYrnl0hYFfjZbjLEWT9iLD40HPEIeUQ DiFYinY5IOkidHKG1gCE98YZEjIshNDO6svW1M0/psu4FBw8z93fDORPQ8zGrBibq5cJcb d4fMyQbfiodmQQj1fUZqb/s1BO75Gik= X-MC-Unique: Bqx2nBCDPZSoOcypt4_mJQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 3/6] audio/mixeng: Do not declare unused variables Date: Fri, 18 Mar 2022 14:56:31 +0100 Message-Id: <20220318135634.2851040-4-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" 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=170.10.133.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Gerd Hoffmann , Akihiko Odaki , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647612577059100001 From: Akihiko Odaki The unused variables when FLOAT_MIXENG is defined caused warnings on Apple clang version 13.1.6 (clang-1316.0.21.2). Signed-off-by: Akihiko Odaki Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20220316061053.60587-1-akihiko.odaki@gmail.com> Signed-off-by: Gerd Hoffmann --- audio/mixeng.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/audio/mixeng.c b/audio/mixeng.c index f27deb165b67..100a306d6fec 100644 --- a/audio/mixeng.c +++ b/audio/mixeng.c @@ -342,13 +342,13 @@ f_sample *mixeng_clip_float[2] =3D { void audio_sample_to_uint64(const void *samples, int pos, uint64_t *left, uint64_t *right) { +#ifdef FLOAT_MIXENG + error_report( + "Coreaudio and floating point samples are not supported by replay = yet"); + abort(); +#else const struct st_sample *sample =3D samples; sample +=3D pos; -#ifdef FLOAT_MIXENG - error_report( - "Coreaudio and floating point samples are not supported by replay = yet"); - abort(); -#else *left =3D sample->l; *right =3D sample->r; #endif @@ -357,13 +357,13 @@ void audio_sample_to_uint64(const void *samples, int = pos, void audio_sample_from_uint64(void *samples, int pos, uint64_t left, uint64_t right) { +#ifdef FLOAT_MIXENG + error_report( + "Coreaudio and floating point samples are not supported by replay = yet"); + abort(); +#else struct st_sample *sample =3D samples; sample +=3D pos; -#ifdef FLOAT_MIXENG - error_report( - "Coreaudio and floating point samples are not supported by replay = yet"); - abort(); -#else sample->l =3D left; sample->r =3D right; #endif --=20 2.35.1 From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1647613344652333.4063115563497; Fri, 18 Mar 2022 07:22:24 -0700 (PDT) Received: from localhost ([::1]:50496 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDUn-0003rg-5B for importer@patchew.org; Fri, 18 Mar 2022 10:22:25 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53168) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5w-00068I-Ko for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:44 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:40721) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5u-00085K-W9 for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:44 -0400 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-62-A-Kwp_qjNBKe8H3M03Pkig-1; Fri, 18 Mar 2022 09:56:39 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 8881F89B846; Fri, 18 Mar 2022 13:56:39 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4CFB040885AB; Fri, 18 Mar 2022 13:56:39 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 3CCA818003B6; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611802; 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=V9G6f/YBRXcX1Is0sHQibN+w4bGQ1wgyVJLNfRULjr4=; b=V3MbvGJp4inUKUAjXoxmCPa0uv2T+OSRK7WsTJRhkOsIyyD/I+gdJJpOKEq9OTTJpEEA2J jsLGFDi+FI8ErpiN5h3HpoyV+Q+gYASHy4cLeyALDXQ2H9kO/YfLbxtCkGM7HsvNAPx9mK 4w4whLcLvON5fghyWtPJW36KCWhbGSA= X-MC-Unique: A-Kwp_qjNBKe8H3M03Pkig-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 4/6] hw/display/cirrus_vga: Clean up indentation in pci_cirrus_vga_realize() Date: Fri, 18 Mar 2022 14:56:32 +0100 Message-Id: <20220318135634.2851040-5-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" 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=170.10.133.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Gerd Hoffmann , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647613363353100003 From: Thomas Huth Most of the code in this function had been indented with 5 spaces instead of 4. Since 4 is our preferred style, remove one space in the bad lines her= e. Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Thomas Huth Message-Id: <20220317083027.16688-2-thuth@redhat.com> Signed-off-by: Gerd Hoffmann --- hw/display/cirrus_vga.c | 55 +++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c index fdca6ca659f9..7da1be3e122e 100644 --- a/hw/display/cirrus_vga.c +++ b/hw/display/cirrus_vga.c @@ -2940,27 +2940,28 @@ void cirrus_init_common(CirrusVGAState *s, Object *= owner, =20 static void pci_cirrus_vga_realize(PCIDevice *dev, Error **errp) { - PCICirrusVGAState *d =3D PCI_CIRRUS_VGA(dev); - CirrusVGAState *s =3D &d->cirrus_vga; - PCIDeviceClass *pc =3D PCI_DEVICE_GET_CLASS(dev); - int16_t device_id =3D pc->device_id; + PCICirrusVGAState *d =3D PCI_CIRRUS_VGA(dev); + CirrusVGAState *s =3D &d->cirrus_vga; + PCIDeviceClass *pc =3D PCI_DEVICE_GET_CLASS(dev); + int16_t device_id =3D pc->device_id; =20 - /* follow real hardware, cirrus card emulated has 4 MB video memory. - Also accept 8 MB/16 MB for backward compatibility. */ - if (s->vga.vram_size_mb !=3D 4 && s->vga.vram_size_mb !=3D 8 && - s->vga.vram_size_mb !=3D 16) { - error_setg(errp, "Invalid cirrus_vga ram size '%u'", - s->vga.vram_size_mb); - return; - } - /* setup VGA */ - vga_common_init(&s->vga, OBJECT(dev)); - cirrus_init_common(s, OBJECT(dev), device_id, 1, pci_address_space(de= v), - pci_address_space_io(dev)); - s->vga.con =3D graphic_console_init(DEVICE(dev), 0, s->vga.hw_ops, &s= ->vga); - - /* setup PCI */ + /* + * Follow real hardware, cirrus card emulated has 4 MB video memory. + * Also accept 8 MB/16 MB for backward compatibility. + */ + if (s->vga.vram_size_mb !=3D 4 && s->vga.vram_size_mb !=3D 8 && + s->vga.vram_size_mb !=3D 16) { + error_setg(errp, "Invalid cirrus_vga ram size '%u'", + s->vga.vram_size_mb); + return; + } + /* setup VGA */ + vga_common_init(&s->vga, OBJECT(dev)); + cirrus_init_common(s, OBJECT(dev), device_id, 1, pci_address_space(dev= ), + pci_address_space_io(dev)); + s->vga.con =3D graphic_console_init(DEVICE(dev), 0, s->vga.hw_ops, &s-= >vga); =20 + /* setup PCI */ memory_region_init(&s->pci_bar, OBJECT(dev), "cirrus-pci-bar0", 0x2000= 000); =20 /* XXX: add byte swapping apertures */ @@ -2968,14 +2969,14 @@ static void pci_cirrus_vga_realize(PCIDevice *dev, = Error **errp) memory_region_add_subregion(&s->pci_bar, 0x1000000, &s->cirrus_linear_bitblt_io); =20 - /* setup memory space */ - /* memory #0 LFB */ - /* memory #1 memory-mapped I/O */ - /* XXX: s->vga.vram_size must be a power of two */ - pci_register_bar(&d->dev, 0, PCI_BASE_ADDRESS_MEM_PREFETCH, &s->pci_b= ar); - if (device_id =3D=3D CIRRUS_ID_CLGD5446) { - pci_register_bar(&d->dev, 1, 0, &s->cirrus_mmio_io); - } + /* setup memory space */ + /* memory #0 LFB */ + /* memory #1 memory-mapped I/O */ + /* XXX: s->vga.vram_size must be a power of two */ + pci_register_bar(&d->dev, 0, PCI_BASE_ADDRESS_MEM_PREFETCH, &s->pci_ba= r); + if (device_id =3D=3D CIRRUS_ID_CLGD5446) { + pci_register_bar(&d->dev, 1, 0, &s->cirrus_mmio_io); + } } =20 static Property pci_vga_cirrus_properties[] =3D { --=20 2.35.1 From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 164761285836350.45680806173664; Fri, 18 Mar 2022 07:14:18 -0700 (PDT) Received: from localhost ([::1]:34838 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDMu-0000v9-RZ for importer@patchew.org; Fri, 18 Mar 2022 10:14:16 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53198) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5y-0006Hu-QX for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:46 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:20875) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5w-00085e-LR for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:46 -0400 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-596-84G0js2mOqmBNjaOrZ58oQ-1; Fri, 18 Mar 2022 09:56:40 -0400 Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id A2A10802C16; Fri, 18 Mar 2022 13:56:40 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4A371492CB1; Fri, 18 Mar 2022 13:56:40 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 5C4B318003B8; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611804; 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=cGm1g9TAU3RoWsvb0BTsBPeLrEHQznvZVke8x2twBP4=; b=RcuUT7YzLFrofj698mxdji45cYyGovPA+mMTqmJvRgl6kAJHQFOV7MfVBJohrx0v15BQ6y OP6fV6NFeNk8X16/FPIelYZya8HOyYrdq4Smz4l3OMEKb/G6mpIIhCWsWDke/9Ac3d1XAI a5hexuBoaP5gSVXWlHiTB1/o5Zt7tiU= X-MC-Unique: 84G0js2mOqmBNjaOrZ58oQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 5/6] hw/display: Allow vga_common_init() to return errors Date: Fri, 18 Mar 2022 14:56:33 +0100 Message-Id: <20220318135634.2851040-6-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.9 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" 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=170.10.133.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Gerd Hoffmann , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647612859233100001 From: Thomas Huth The vga_common_init() function currently cannot report errors to its caller. But in the following patch, we'd need this possibility, so let's change it to take an "Error **" as parameter for this. Signed-off-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20220317083027.16688-3-thuth@redhat.com> Signed-off-by: Gerd Hoffmann --- hw/display/vga_int.h | 2 +- hw/display/ati.c | 4 +++- hw/display/cirrus_vga.c | 4 +++- hw/display/cirrus_vga_isa.c | 4 +++- hw/display/qxl.c | 6 +++++- hw/display/vga-isa.c | 5 ++++- hw/display/vga-mmio.c | 5 ++++- hw/display/vga-pci.c | 8 ++++++-- hw/display/vga.c | 11 +++++++++-- hw/display/virtio-vga.c | 4 +++- hw/display/vmware_vga.c | 2 +- 11 files changed, 42 insertions(+), 13 deletions(-) diff --git a/hw/display/vga_int.h b/hw/display/vga_int.h index 847e784ca6a8..305e700014d8 100644 --- a/hw/display/vga_int.h +++ b/hw/display/vga_int.h @@ -156,7 +156,7 @@ static inline int c6_to_8(int v) return (v << 2) | (b << 1) | b; } =20 -void vga_common_init(VGACommonState *s, Object *obj); +bool vga_common_init(VGACommonState *s, Object *obj, Error **errp); void vga_init(VGACommonState *s, Object *obj, MemoryRegion *address_space, MemoryRegion *address_space_io, bool init_vga_ports); MemoryRegion *vga_init_io(VGACommonState *s, Object *obj, diff --git a/hw/display/ati.c b/hw/display/ati.c index 31f22754dcee..6e38e0050225 100644 --- a/hw/display/ati.c +++ b/hw/display/ati.c @@ -955,7 +955,9 @@ static void ati_vga_realize(PCIDevice *dev, Error **err= p) } =20 /* init vga bits */ - vga_common_init(vga, OBJECT(s)); + if (!vga_common_init(vga, OBJECT(s), errp)) { + return; + } vga_init(vga, OBJECT(s), pci_address_space(dev), pci_address_space_io(dev), true); vga->con =3D graphic_console_init(DEVICE(s), 0, s->vga.hw_ops, &s->vga= ); diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c index 7da1be3e122e..3bb6a58698c1 100644 --- a/hw/display/cirrus_vga.c +++ b/hw/display/cirrus_vga.c @@ -2956,7 +2956,9 @@ static void pci_cirrus_vga_realize(PCIDevice *dev, Er= ror **errp) return; } /* setup VGA */ - vga_common_init(&s->vga, OBJECT(dev)); + if (!vga_common_init(&s->vga, OBJECT(dev), errp)) { + return; + } cirrus_init_common(s, OBJECT(dev), device_id, 1, pci_address_space(dev= ), pci_address_space_io(dev)); s->vga.con =3D graphic_console_init(DEVICE(dev), 0, s->vga.hw_ops, &s-= >vga); diff --git a/hw/display/cirrus_vga_isa.c b/hw/display/cirrus_vga_isa.c index 4f6fb1af3bd5..96144bd69060 100644 --- a/hw/display/cirrus_vga_isa.c +++ b/hw/display/cirrus_vga_isa.c @@ -56,7 +56,9 @@ static void isa_cirrus_vga_realizefn(DeviceState *dev, Er= ror **errp) return; } s->global_vmstate =3D true; - vga_common_init(s, OBJECT(dev)); + if (!vga_common_init(s, OBJECT(dev), errp)) { + return; + } cirrus_init_common(&d->cirrus_vga, OBJECT(dev), CIRRUS_ID_CLGD5430, 0, isa_address_space(isadev), isa_address_space_io(isadev)); diff --git a/hw/display/qxl.c b/hw/display/qxl.c index 1f9ad319438d..adbdbcaeb612 100644 --- a/hw/display/qxl.c +++ b/hw/display/qxl.c @@ -2215,7 +2215,11 @@ static void qxl_realize_primary(PCIDevice *dev, Erro= r **errp) qxl_init_ramsize(qxl); vga->vbe_size =3D qxl->vgamem_size; vga->vram_size_mb =3D qxl->vga.vram_size / MiB; - vga_common_init(vga, OBJECT(dev)); + vga_common_init(vga, OBJECT(dev), &local_err); + if (local_err) { + error_propagate(errp, local_err); + return; + } vga_init(vga, OBJECT(dev), pci_address_space(dev), pci_address_space_io(dev), false); portio_list_init(&qxl->vga_port_list, OBJECT(dev), qxl_vga_portio_list, diff --git a/hw/display/vga-isa.c b/hw/display/vga-isa.c index 90851e730bcd..46abbc56534c 100644 --- a/hw/display/vga-isa.c +++ b/hw/display/vga-isa.c @@ -62,7 +62,10 @@ static void vga_isa_realizefn(DeviceState *dev, Error **= errp) const MemoryRegionPortio *vga_ports, *vbe_ports; =20 s->global_vmstate =3D true; - vga_common_init(s, OBJECT(dev)); + if (!vga_common_init(s, OBJECT(dev), errp)) { + return; + } + s->legacy_address_space =3D isa_address_space(isadev); vga_io_memory =3D vga_init_io(s, OBJECT(dev), &vga_ports, &vbe_ports); isa_register_portio_list(isadev, &d->portio_vga, diff --git a/hw/display/vga-mmio.c b/hw/display/vga-mmio.c index 496936808137..75dfcedea510 100644 --- a/hw/display/vga-mmio.c +++ b/hw/display/vga-mmio.c @@ -102,7 +102,10 @@ static void vga_mmio_realizefn(DeviceState *dev, Error= **errp) =20 s->vga.bank_offset =3D 0; s->vga.global_vmstate =3D true; - vga_common_init(&s->vga, OBJECT(dev)); + if (!vga_common_init(&s->vga, OBJECT(dev), errp)) { + return; + } + sysbus_init_mmio(sbd, &s->vga.vram); s->vga.con =3D graphic_console_init(dev, 0, s->vga.hw_ops, &s->vga); } diff --git a/hw/display/vga-pci.c b/hw/display/vga-pci.c index 62fb5c38c1fd..3e5bc259f7a5 100644 --- a/hw/display/vga-pci.c +++ b/hw/display/vga-pci.c @@ -239,7 +239,9 @@ static void pci_std_vga_realize(PCIDevice *dev, Error *= *errp) bool edid =3D false; =20 /* vga + console init */ - vga_common_init(s, OBJECT(dev)); + if (!vga_common_init(s, OBJECT(dev), errp)) { + return; + } vga_init(s, OBJECT(dev), pci_address_space(dev), pci_address_space_io(= dev), true); =20 @@ -275,7 +277,9 @@ static void pci_secondary_vga_realize(PCIDevice *dev, E= rror **errp) bool edid =3D false; =20 /* vga + console init */ - vga_common_init(s, OBJECT(dev)); + if (!vga_common_init(s, OBJECT(dev), errp)) { + return; + } s->con =3D graphic_console_init(DEVICE(dev), 0, s->hw_ops, s); =20 /* mmio bar */ diff --git a/hw/display/vga.c b/hw/display/vga.c index 9d1f66af402e..ae960235963b 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -2168,9 +2168,10 @@ static inline uint32_t uint_clamp(uint32_t val, uint= 32_t vmin, uint32_t vmax) return val; } =20 -void vga_common_init(VGACommonState *s, Object *obj) +bool vga_common_init(VGACommonState *s, Object *obj, Error **errp) { int i, j, v, b; + Error *local_err =3D NULL; =20 for(i =3D 0;i < 256; i++) { v =3D 0; @@ -2206,7 +2207,11 @@ void vga_common_init(VGACommonState *s, Object *obj) =20 s->is_vbe_vmstate =3D 1; memory_region_init_ram_nomigrate(&s->vram, obj, "vga.vram", s->vram_si= ze, - &error_fatal); + &local_err); + if (local_err) { + error_propagate(errp, local_err); + return false; + } vmstate_register_ram(&s->vram, s->global_vmstate ? NULL : DEVICE(obj)); xen_register_framebuffer(&s->vram); s->vram_ptr =3D memory_region_get_ram_ptr(&s->vram); @@ -2237,6 +2242,8 @@ void vga_common_init(VGACommonState *s, Object *obj) s->default_endian_fb =3D false; #endif vga_dirty_log_start(s); + + return true; } =20 static const MemoryRegionPortio vga_portio_list[] =3D { diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c index 5a2f7a45408b..7b55c8d0e723 100644 --- a/hw/display/virtio-vga.c +++ b/hw/display/virtio-vga.c @@ -108,7 +108,9 @@ static void virtio_vga_base_realize(VirtIOPCIProxy *vpc= i_dev, Error **errp) =20 /* init vga compat bits */ vga->vram_size_mb =3D 8; - vga_common_init(vga, OBJECT(vpci_dev)); + if (!vga_common_init(vga, OBJECT(vpci_dev), errp)) { + return; + } vga_init(vga, OBJECT(vpci_dev), pci_address_space(&vpci_dev->pci_dev), pci_address_space_io(&vpci_dev->pci_dev), true); pci_register_bar(&vpci_dev->pci_dev, 0, diff --git a/hw/display/vmware_vga.c b/hw/display/vmware_vga.c index 0cc43a1f15f6..98c83474adb5 100644 --- a/hw/display/vmware_vga.c +++ b/hw/display/vmware_vga.c @@ -1254,7 +1254,7 @@ static void vmsvga_init(DeviceState *dev, struct vmsv= ga_state_s *s, &error_fatal); s->fifo_ptr =3D memory_region_get_ram_ptr(&s->fifo_ram); =20 - vga_common_init(&s->vga, OBJECT(dev)); + vga_common_init(&s->vga, OBJECT(dev), &error_fatal); vga_init(&s->vga, OBJECT(dev), address_space, io, true); vmstate_register(NULL, 0, &vmstate_vga_common, &s->vga); s->new_depth =3D 32; --=20 2.35.1 From nobody Mon Feb 9 08:20:57 2026 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1647612412392165.5732939397301; Fri, 18 Mar 2022 07:06:52 -0700 (PDT) Received: from localhost ([::1]:45052 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nVDFj-0005R7-C3 for importer@patchew.org; Fri, 18 Mar 2022 10:06:51 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53178) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5x-0006A6-1X for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:45 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:39494) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVD5v-00085U-AY for qemu-devel@nongnu.org; Fri, 18 Mar 2022 09:56:44 -0400 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-640-rRxXkPkfON6L55wm8FIYFQ-1; Fri, 18 Mar 2022 09:56:41 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 4747289C7DB for ; Fri, 18 Mar 2022 13:56:41 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.196.67]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 06CCD400DB1C; Fri, 18 Mar 2022 13:56:41 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 67C111800605; Fri, 18 Mar 2022 14:56:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647611802; 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=YKXbt6jOTk+LEq4QvA99ksNDDwq+o9E4+1JMnp5nJ4Q=; b=Hsj2UYdau2XFyAH75tXK9FNCcVneDT1qgo4pYZrw7aGEdvPyzXx0ejYBO2Jsb+vaD/CCKo M30ALm32KR95m9oLau/ZAg0G35GVbhvj+P4CPL8j7Z+mtuqoa1AsuY6LITZdjh8du0dBi+ RT+UZXa13EVnSB/NwB57I51r/OqNQpU= X-MC-Unique: rRxXkPkfON6L55wm8FIYFQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 6/6] hw/display/vga: Report a proper error when adding a 2nd ISA VGA Date: Fri, 18 Mar 2022 14:56:34 +0100 Message-Id: <20220318135634.2851040-7-kraxel@redhat.com> In-Reply-To: <20220318135634.2851040-1-kraxel@redhat.com> References: <20220318135634.2851040-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com 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=170.10.133.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, 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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , Gerd Hoffmann , "Michael S. Tsirkin" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1647612414150100001 Content-Type: text/plain; charset="utf-8" From: Thomas Huth QEMU currently abort()s if the user tries to add a second ISA VGA device, for example: $ ./qemu-system-x86_64 -device isa-vga -device isa-vga RAMBlock "vga.vram" already registered, abort! Aborted (core dumped) $ ./qemu-system-x86_64 -device isa-cirrus-vga -device isa-cirrus-vga RAMBlock "vga.vram" already registered, abort! Aborted (core dumped) $ ./qemu-system-mips64el -M pica61 -device isa-vga RAMBlock "vga.vram" already registered, abort! Aborted (core dumped) Such a crash should never happen just because of giving bad parameters at the command line. Let's return a proper error message instead. (The idea is based on an original patch by Jose R. Ziviani for the isa-vga device, but this now fixes it for the isa-cirrus-vga device, too) Resolves: https://gitlab.com/qemu-project/qemu/-/issues/44 Signed-off-by: Thomas Huth Message-Id: <20220317083027.16688-4-thuth@redhat.com> Signed-off-by: Gerd Hoffmann --- hw/display/vga.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/display/vga.c b/hw/display/vga.c index ae960235963b..a7a291fa2089 100644 --- a/hw/display/vga.c +++ b/hw/display/vga.c @@ -2206,6 +2206,12 @@ bool vga_common_init(VGACommonState *s, Object *obj,= Error **errp) s->vbe_size_mask =3D s->vbe_size - 1; =20 s->is_vbe_vmstate =3D 1; + + if (s->global_vmstate && qemu_ram_block_by_name("vga.vram")) { + error_setg(errp, "Only one global VGA device can be used at a time= "); + return false; + } + memory_region_init_ram_nomigrate(&s->vram, obj, "vga.vram", s->vram_si= ze, &local_err); if (local_err) { --=20 2.35.1