From patchwork Tue Jul 19 15:22:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922665 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2F1C9C43334 for ; Tue, 19 Jul 2022 15:24:27 +0000 (UTC) Received: from localhost ([::1]:59638 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp5E-0001YQ-Qb for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:24:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43530) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3K-0007je-T0 for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:26 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:56923) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3I-0001iP-IG for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244143; 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=wHge7lg9kyG9GFqnIq7GMVPVOE709StAygb/UJqshEQ=; b=Rt5QAsX9FR+ssysiScve9cV5Nl3W+D1XOYwGrE4g03NjyljvjFLhZtUixoTP8Z9rCQWMDj cWgwiShT/uMH4mr+wS2Re6V2fulLxd1MXN7ETj+ddxa/LnCMgZsvSr0Z5s13as1xjWfN/G CynRnYqa6tLsoXAXracFK2fjKJlc5LQ= 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-151-uvF9199HPd2GXRvd43e8qw-1; Tue, 19 Jul 2022 11:22:22 -0400 X-MC-Unique: uvF9199HPd2GXRvd43e8qw-1 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 9392C806017; Tue, 19 Jul 2022 15:22:21 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 530AD492CA4; Tue, 19 Jul 2022 15:22:21 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id BEC3018003A3; Tue, 19 Jul 2022 17:22:18 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson , Robinson@redhat.com, Cole Subject: [PULL 1/6] dbus-display: fix test race when initializing p2p connection Date: Tue, 19 Jul 2022 17:22:13 +0200 Message-Id: <20220719152218.825707-2-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.9 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: -28 X-Spam_score: -2.9 X-Spam_bar: -- X-Spam_report: (-2.9 / 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_LOW=-0.7, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Marc-André Lureau The D-Bus connection starts processing messages before QEMU has the time to set the object manager server. This is causing dbus-display-test to fail randomly with: ERROR:../tests/qtest/dbus-display-test.c:68:test_dbus_display_vm: assertion failed (qemu_dbus_display1_vm_get_name(QEMU_DBUS_DISPLAY1_VM(vm)) == "dbus-test"): (NULL == "dbus-test") ERROR Use the delayed message processing flag and method to avoid that situation. (the bus connection doesn't need a fix, as the initialization is done synchronously) Reported-by: Robinson, Cole Signed-off-by: Marc-André Lureau Tested-by: Cole Robinson Message-Id: <20220609152647.870373-1-marcandre.lureau@redhat.com> Signed-off-by: Gerd Hoffmann --- ui/dbus.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ui/dbus.c b/ui/dbus.c index 7a87612379e8..32d88dc94a7e 100644 --- a/ui/dbus.c +++ b/ui/dbus.c @@ -268,6 +268,7 @@ dbus_display_add_client_ready(GObject *source_object, } g_dbus_object_manager_server_set_connection(dbus_display->server, conn); + g_dbus_connection_start_message_processing(conn); } @@ -300,7 +301,8 @@ dbus_display_add_client(int csock, Error **errp) g_dbus_connection_new(G_IO_STREAM(conn), guid, - G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_SERVER | + G_DBUS_CONNECTION_FLAGS_DELAY_MESSAGE_PROCESSING, NULL, dbus_display->add_client_cancellable, dbus_display_add_client_ready, From patchwork Tue Jul 19 15:22:14 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922670 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 61708CCA483 for ; Tue, 19 Jul 2022 15:27:54 +0000 (UTC) Received: from localhost ([::1]:39790 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp8b-0007DO-FB for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:27:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43558) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3O-0007kF-BJ for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:30 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:52990) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3L-0001ii-70 for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qbvpSIwa3ALCoxv0SS09yZzG1VnLC8BcpzDfMnD9TBY=; b=SfpJNAjSDGV3S6tibMX/g+Ly+s0MHhvpxbTFL5OPsbUT9FHB4UERlot5wveiYkgID+DU7e 9uudG+WD3ueVAZq0HGj0YfnRkDVe54yN+JXlWSfc0eTwoX+iHLCH4bsLQj+HoLb/4wIloj Vxdu8cbRckDerOZKEe2D5psmy3k32wM= 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-49-fUMjKE5BPkay7AKWP0YnLA-1; Tue, 19 Jul 2022 11:22:23 -0400 X-MC-Unique: fUMjKE5BPkay7AKWP0YnLA-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id D2E1394AB61; Tue, 19 Jul 2022 15:22:22 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8EFEF1121314; Tue, 19 Jul 2022 15:22:22 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id CC467180060D; Tue, 19 Jul 2022 17:22:18 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson Subject: [PULL 2/6] microvm: turn off io reservations for pcie root ports Date: Tue, 19 Jul 2022 17:22:14 +0200 Message-Id: <20220719152218.825707-3-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 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: -28 X-Spam_score: -2.9 X-Spam_bar: -- X-Spam_report: (-2.9 / 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_LOW=-0.7, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" The pcie host bridge has no io window on microvm, so io reservations will not work. Signed-off-by: Gerd Hoffmann Message-Id: <20220701091516.43489-1-kraxel@redhat.com> --- hw/i386/microvm.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 754f1d0593e5..dc929727dcbc 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -631,6 +631,14 @@ static void microvm_machine_initfn(Object *obj) qemu_register_powerdown_notifier(&mms->powerdown_req); } +GlobalProperty microvm_properties[] = { + /* + * pcie host bridge (gpex) on microvm has no io address window, + * so reserving io space is not going to work. Turn it off. + */ + { "pcie-root-port", "io-reserve", "0" }, +}; + static void microvm_class_init(ObjectClass *oc, void *data) { X86MachineClass *x86mc = X86_MACHINE_CLASS(oc); @@ -707,6 +715,9 @@ static void microvm_class_init(ObjectClass *oc, void *data) "Set off to disable adding virtio-mmio devices to the kernel cmdline"); machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE); + + compat_props_add(mc->compat_props, microvm_properties, + G_N_ELEMENTS(microvm_properties)); } static const TypeInfo microvm_machine_info = { From patchwork Tue Jul 19 15:22:15 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922666 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BCDBDC433EF for ; Tue, 19 Jul 2022 15:24:38 +0000 (UTC) Received: from localhost ([::1]:60298 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp5R-0001zw-Gf for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:24:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43568) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3O-0007lo-1p for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:30 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:22411) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3M-0001ix-LF for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244148; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ATsz0dGVqoZQl4jXAXxTKAK7WOjwaEqkNxAMMc8R5lI=; b=cuGULBDVLcK99TcbJ9tiBuIJT4wVrBVZO5er3xQJEKei8MOd7uVrXr2rIckTNJZcWnakOC XTomiSOqiWCqEbV+dTFS74rXjErsICiMnhbfIbhN571yn4GUTvEl5ZEhHKuVWIBiImO7io 2jJnht1fez+TXWXEIP18eiRhFqYBWdY= 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-433-bVDjiFY_MmKkieDzgyDrhA-1; Tue, 19 Jul 2022 11:22:24 -0400 X-MC-Unique: bVDjiFY_MmKkieDzgyDrhA-1 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 80E0885A5B9; Tue, 19 Jul 2022 15:22:23 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 39958C1D3AD; Tue, 19 Jul 2022 15:22:23 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id D8B88180060F; Tue, 19 Jul 2022 17:22:18 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson , Mauro Matteo Cascella , Soul Chen Subject: [PULL 3/6] usb/hcd-xhci: check slotid in xhci_wakeup_endpoint() Date: Tue, 19 Jul 2022 17:22:15 +0200 Message-Id: <20220719152218.825707-4-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.8 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: -28 X-Spam_score: -2.9 X-Spam_bar: -- X-Spam_report: (-2.9 / 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_LOW=-0.7, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Mauro Matteo Cascella This prevents an OOB read (followed by an assertion failure in xhci_kick_ep) when slotid > xhci->numslots. Reported-by: Soul Chen Signed-off-by: Mauro Matteo Cascella Message-Id: <20220705174734.2348829-1-mcascell@redhat.com> Signed-off-by: Gerd Hoffmann --- hw/usb/hcd-xhci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c index 0cd0a5e54027..296cc6c8e694 100644 --- a/hw/usb/hcd-xhci.c +++ b/hw/usb/hcd-xhci.c @@ -3269,7 +3269,8 @@ static void xhci_wakeup_endpoint(USBBus *bus, USBEndpoint *ep, DPRINTF("%s\n", __func__); slotid = ep->dev->addr; - if (slotid == 0 || !xhci->slots[slotid-1].enabled) { + if (slotid == 0 || slotid > xhci->numslots || + !xhci->slots[slotid - 1].enabled) { DPRINTF("%s: oops, no slot for dev %d\n", __func__, ep->dev->addr); return; } From patchwork Tue Jul 19 15:22:16 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922667 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 15DAFC433EF for ; Tue, 19 Jul 2022 15:25:04 +0000 (UTC) Received: from localhost ([::1]:60962 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp5q-0002SH-Vh for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:25:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43614) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3U-00080E-Vd for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:36 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:49395) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3S-0001jM-Fn for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244153; 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=5W0EriOW4TtUqK7nH7aWghsdYJOyySWmt4Lg4iixYnE=; b=RdloUsuWSubUqfTyXXRtfdKx68y4hoxgLnqlVS6Nk9Vw6HLkbHFU8LlCCTJeZVKVtXLCsM RfmW7GqATrVAcIeJSsFxNj3eBQL1/4JqTZmUgWHHUq0PQPk4WJPIdaEF8uYSO6htdaVbq6 h9onwRzulM7VN/wRF5qT/MCXU7XJSi0= 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-662-Itvd0ig_OxWCp112NSyq6w-1; Tue, 19 Jul 2022 11:22:25 -0400 X-MC-Unique: Itvd0ig_OxWCp112NSyq6w-1 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 A3898802D1C; Tue, 19 Jul 2022 15:22:24 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 43C4F40CFD0A; Tue, 19 Jul 2022 15:22:24 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id E5596180061C; Tue, 19 Jul 2022 17:22:18 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson , =?utf-8?b?TWljaGFsIFBy?= =?utf-8?b?w612b3puw61r?= Subject: [PULL 4/6] usb: document guest-reset and guest-reset-all Date: Tue, 19 Jul 2022 17:22:16 +0200 Message-Id: <20220719152218.825707-5-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.1 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, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Suggested-by: Michal Prívozník Signed-off-by: Gerd Hoffmann Reviewed-by: Michal Privoznik Message-Id: <20220711094437.3995927-2-kraxel@redhat.com> Signed-off-by: Gerd Hoffmann --- docs/system/devices/usb.rst | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/system/devices/usb.rst b/docs/system/devices/usb.rst index 872d9167589b..18e7c8b4d716 100644 --- a/docs/system/devices/usb.rst +++ b/docs/system/devices/usb.rst @@ -353,3 +353,32 @@ and also assign it to the correct USB bus in QEMU like this: -device usb-ehci,id=ehci \\ -device usb-host,bus=usb-bus.0,hostbus=3,hostport=1 \\ -device usb-host,bus=ehci.0,hostbus=1,hostport=1 + +``usb-host`` properties for reset behavior +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The ``guest-reset`` and ``guest-reset-all`` properties control +whenever the guest is allowed to reset the physical usb device on the +host. There are three cases: + +``guest-reset=false`` + The guest is not allowed to reset the (physical) usb device. + +``guest-reset=true,guest-resets-all=false`` + The guest is allowed to reset the device when it is not yet + initialized (aka no usb bus address assigned). Usually this results + in one guest reset being allowed. This is the default behavior. + +``guest-reset=true,guest-resets-all=true`` + The guest is allowed to reset the device as it pleases. + +The reason for this existing are broken usb devices. In theory one +should be able to reset (and re-initialize) usb devices at any time. +In practice that may result in shitty usb device firmware crashing and +the device not responding any more until you power-cycle (aka un-plug +and re-plug) it. + +What works best pretty much depends on the behavior of the specific +usb device at hand, so it's a trial-and-error game. If the default +doesn't work, try another option and see whenever the situation +improves. From patchwork Tue Jul 19 15:22:17 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922668 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A9B9BC43334 for ; Tue, 19 Jul 2022 15:25:04 +0000 (UTC) Received: from localhost ([::1]:32888 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp5r-0002YD-Nq for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:25:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43622) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3V-00081K-Az for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:37 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:47028) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3T-0001jV-RW for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=EVw8s2UFUfPLWHLhgBMzODdZpK6nCgy2Ry4ZXvBLoZg=; b=Drv5YJ+uyuhKKbbIgs3Wi58cZOAOvBtGaTmwoUvAPcNcn+BgDcsU6MK/AVO2vEsgSrFElq F6n1r1VgcGY2AnRw1mGtpTzQbYBBWveYR6yeNIW6g7Z4gE91vnu6t/6eXY/A26oUaekfWq sTU+gdMEXlr5uncjTzDNAGIyBUQ7QWw= 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-654-0EoNvdCaMXunGX2-uSsdHQ-1; Tue, 19 Jul 2022 11:22:25 -0400 X-MC-Unique: 0EoNvdCaMXunGX2-uSsdHQ-1 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 342FC1019C9C; Tue, 19 Jul 2022 15:22:25 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id E8E4B492C3B; Tue, 19 Jul 2022 15:22:24 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id F1AFD1800626; Tue, 19 Jul 2022 17:22:18 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson Subject: [PULL 5/6] usb: document pcap (aka usb traffic capture) Date: Tue, 19 Jul 2022 17:22:17 +0200 Message-Id: <20220719152218.825707-6-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.9 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, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Gerd Hoffmann Message-Id: <20220711094437.3995927-3-kraxel@redhat.com> Signed-off-by: Gerd Hoffmann --- docs/system/devices/usb.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/system/devices/usb.rst b/docs/system/devices/usb.rst index 18e7c8b4d716..f39a88f080ff 100644 --- a/docs/system/devices/usb.rst +++ b/docs/system/devices/usb.rst @@ -382,3 +382,15 @@ What works best pretty much depends on the behavior of the specific usb device at hand, so it's a trial-and-error game. If the default doesn't work, try another option and see whenever the situation improves. + +record usb transfers +^^^^^^^^^^^^^^^^^^^^ + +All usb devices have support for recording the usb traffic. This can +be enabled using the ``pcap=`` property, for example: + +``-device usb-mouse,pcap=mouse.pcap`` + +The pcap files are compatible with the linux kernels usbmon. Many +tools, including ``wireshark``, can decode and inspect these trace +files. From patchwork Tue Jul 19 15:22:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gerd Hoffmann X-Patchwork-Id: 12922671 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4A5B3C43334 for ; Tue, 19 Jul 2022 15:28:06 +0000 (UTC) Received: from localhost ([::1]:40414 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oDp8l-0007db-JF for qemu-devel@archiver.kernel.org; Tue, 19 Jul 2022 11:28:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43624) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3V-00082m-Ri for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:37 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]:59931) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oDp3U-0001ja-Au for qemu-devel@nongnu.org; Tue, 19 Jul 2022 11:22:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658244155; 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=W+9Qd3nGSR57IbMLQ7TrVHVX9wcUmAoe43XRQUY5t5w=; b=F6ZllXyUuHHd2eGu2c6T0hXqVYfNw1RfR9007bn4eMCyyRMaLiuEUaLyOxWHvCJMXa6YPG AEykARrVC67N0YkSz2kL5tU8DLDuat79nFP1k57drnahIOzEnlOOS/LQi5H+XrYz8dwJyr bpFrNaF2/wGZvYPWWDNrzl/WI+h3TQI= 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-619-hlMrmvs2NaiTBcgk2Qv7Aw-1; Tue, 19 Jul 2022 11:22:31 -0400 X-MC-Unique: hlMrmvs2NaiTBcgk2Qv7Aw-1 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 7BA2E180F6E2; Tue, 19 Jul 2022 15:22:26 +0000 (UTC) Received: from sirius.home.kraxel.org (unknown [10.39.192.134]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 22DA9492C3B; Tue, 19 Jul 2022 15:22:26 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 0E2D51800629; Tue, 19 Jul 2022 17:22:19 +0200 (CEST) From: Gerd Hoffmann To: qemu-devel@nongnu.org Cc: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Marcel Apfelbaum , "Michael S. Tsirkin" , Sergio Lopez , Markus Armbruster , Gerd Hoffmann , Eduardo Habkost , Eric Blake , Paolo Bonzini , Richard Henderson , =?utf-8?q?Felix_xq_Quei?= =?utf-8?q?=C3=9Fner?= , Thomas Huth , Hanna Reitz Subject: [PULL 6/6] gtk: Add show_tabs=on|off command line option. Date: Tue, 19 Jul 2022 17:22:18 +0200 Message-Id: <20220719152218.825707-7-kraxel@redhat.com> In-Reply-To: <20220719152218.825707-1-kraxel@redhat.com> References: <20220719152218.825707-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.10 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: -28 X-Spam_score: -2.9 X-Spam_bar: -- X-Spam_report: (-2.9 / 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_LOW=-0.7, 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: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Felix xq Queißner The patch adds "show_tabs" command line option for GTK ui similar to "grab_on_hover". This option allows tabbed view mode to not have to be enabled by hand at each start of the VM. Signed-off-by: Felix "xq" Queißner Reviewed-by: Thomas Huth Reviewed-by: Hanna Reitz Message-Id: <20220712133753.18937-1-xq@random-projects.net> Signed-off-by: Gerd Hoffmann --- ui/gtk.c | 4 ++++ qapi/ui.json | 7 ++++++- qemu-options.hx | 6 +++++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ui/gtk.c b/ui/gtk.c index 2a791dd2aa04..1467b8c7d7f0 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -2390,6 +2390,10 @@ static void gtk_display_init(DisplayState *ds, DisplayOptions *opts) opts->u.gtk.grab_on_hover) { gtk_menu_item_activate(GTK_MENU_ITEM(s->grab_on_hover_item)); } + if (opts->u.gtk.has_show_tabs && + opts->u.gtk.show_tabs) { + gtk_menu_item_activate(GTK_MENU_ITEM(s->show_tabs_item)); + } gd_clipboard_init(s); } diff --git a/qapi/ui.json b/qapi/ui.json index 413371d5e8bf..cf58ab4283da 100644 --- a/qapi/ui.json +++ b/qapi/ui.json @@ -1195,12 +1195,17 @@ # assuming the guest will resize the display to match # the window size then. Otherwise it defaults to "off". # Since 3.1 +# @show-tabs: Display the tab bar for switching between the various graphical +# interfaces (e.g. VGA and virtual console character devices) +# by default. +# Since 7.1 # # Since: 2.12 ## { 'struct' : 'DisplayGTK', 'data' : { '*grab-on-hover' : 'bool', - '*zoom-to-fit' : 'bool' } } + '*zoom-to-fit' : 'bool', + '*show-tabs' : 'bool' } } ## # @DisplayEGLHeadless: diff --git a/qemu-options.hx b/qemu-options.hx index 377d22fbd82f..79e00916a11f 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -1938,7 +1938,7 @@ DEF("display", HAS_ARG, QEMU_OPTION_display, #endif #if defined(CONFIG_GTK) "-display gtk[,full-screen=on|off][,gl=on|off][,grab-on-hover=on|off]\n" - " [,show-cursor=on|off][,window-close=on|off]\n" + " [,show-tabs=on|off][,show-cursor=on|off][,window-close=on|off]\n" #endif #if defined(CONFIG_VNC) "-display vnc=[,]\n" @@ -2023,6 +2023,10 @@ SRST ``grab-on-hover=on|off`` : Grab keyboard input on mouse hover + ``show-tabs=on|off`` : Display the tab bar for switching between the + various graphical interfaces (e.g. VGA and + virtual console character devices) by default. + ``show-cursor=on|off`` : Force showing the mouse cursor ``window-close=on|off`` : Allow to quit qemu with window close button