From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972962; cv=none; d=zohomail.com; s=zohoarc; b=CNq60sDCuWfcz8jvLevgtHH8DIQtNUutKRZIVid2HYBa/ly2MynhIMGgn5TVTN4vLvzyZDVTCF/xMY6+LJP8kOZi5oI6mEaTbPXiXydqF1PMUL/0sKVblqrcUEpuooBelAUCheCkwTBcBHm4Cgq0ue67l3xxCZMWgh+W70eESM0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972962; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=dPp6/Iz6emP9faagVMHidtrIEEZa8zoC+YjDWgEts3k=; b=aeWa4B12yJguUizKkp3rA32J4pVXxcOAyTi+4m4tUuiXZA3HJR4Sr2WJxXDptLmpyEBmHBJqvyVKfycTuMt8al6mqxpSi9+NL5Csn+lG9IdvsN9O7ZERAextsM2qbHtpJIZO9X2QXVRPBh30JKngZ/hqmxwpCRHFT7U44UaCrMM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972962122413.6492523941399; Sat, 25 Jul 2026 02:49:22 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370556.1618640 (Exim 4.92) (envelope-from ) id 1wnZ06-0003eA-0f; Sat, 25 Jul 2026 09:48:58 +0000 Received: by outflank-mailman (output) from mailman id 1370556.1618640; Sat, 25 Jul 2026 09:48:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ05-0003e3-RT; Sat, 25 Jul 2026 09:48:57 +0000 Received: by outflank-mailman (input) for mailman id 1370556; Sat, 25 Jul 2026 09:48:56 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ04-0003de-QW for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:48:56 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ04-003Tyx-0E for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:48:56 +0200 Received: from [10.42.69.10] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648620-bab6-0a2a0a5309dd-0a2a450a9dce-32 for ; Sat, 25 Jul 2026 11:48:55 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-4011c0.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a648686-f2d2-0a2a450a0019-aa0a817c729f-3 for ; Sat, 25 Jul 2026 11:48:55 +0200 Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-481-hS19_nqnPV-v5GQmSfJy_w-1; Sat, 25 Jul 2026 05:48:50 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 61DA919540CA; Sat, 25 Jul 2026 09:48:47 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 9ED03180049F; Sat, 25 Jul 2026 09:48:45 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972934; 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=dPp6/Iz6emP9faagVMHidtrIEEZa8zoC+YjDWgEts3k=; b=WZAjdlbIX9qW/vnhIMoVW8P1fbgxdtlfEzwOiSL0U1iC24U/zlhK4fbMv3ygS5zf7Io6x3 EXVu8OM9qB0NrXtM0sA9UmXHkhvRjK6kVXPJ/5brpVvt7ktvrcmEECssfuKWycqte98+Ik ah/12j/60crB9zabXgyUqWrSuF5rfmQ= X-MC-Unique: hS19_nqnPV-v5GQmSfJy_w-1 X-Mimecast-MFC-AGG-ID: hS19_nqnPV-v5GQmSfJy_w_1784972928 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:32 +0400 Subject: [PATCH v2 1/8] monitor: annotate monitor_qmp_dispatcher_pop_any() as coroutine MIME-Version: 1.0 Message-Id: <20260725-co-v2-1-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Developer-Signature: v=1; a=openpgp-sha256; l=859; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=u5SYt6HOlXpoYkBe8zmUhNbcCVIM7I1SQQWsPqoY/1g=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZyN05xG4NXEjp7mfqsDyp6EpYKKkClYQD6/ vLFKlVVeWKJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcgAKCRDa6OEJdZac 5bmAD/0etydKiTihIbMRuX/QQ9wrH5bzVGnC+3T31ACvjR4qTcz/43bEIlxz5UP6OLL+J8FdHoY /COMIj4ImeEQTd8X6VM6tIgL0lP0Ix3JBRw585jIfUcBtcbe9WBYp8GuBQ/J70zcai5YSbBjqHM YcJDYDb0fupMLYz7uMfjEYEt+LMRExfvUZowMek7pLggUHuObZ6PBcMo2KiLk/9BkxYXmfh1Py0 1VL9qz9VJyrx/9mKA6AMfZAlO7X6w8Uhb4OvPQdS9yaheMGMMNof3XXs/7rMEJp8yu5hw2yGwKV tUsWdgRxcW9oikYq1xs8FJGEQuxJcWevVMUKgtOMxvcog53d3aqqDPPxbODdQqaoJh77uUWtx1D yj4W1GWLrjNuNMWfW52mst+gwenpI7ERZPzJyjqyKIGq64C1D8hoRUe9SZBfMDvW88CYeoJy6Ox AwaNB5CM37R71NilBZZJ8H5kI/MUtOfRopA2tI1rzxTYPuk+2s8SRyajUOzEobyjYVzzJah7xnl Fj5LczdvoJoLDlx1Sg4jKKJgUd40UBCFw2k1dmKZAIeGgMP9qHpQl+7Nzu4E4QnzYqRcDNMlZ4Y mFu0qczXin1ELgN8KEVORoq5zbeou4KrGwVpb6sgnQGCa2zrR7zGbbLdFpOc3+fxpACvCzuNLVv yY86AryIhC9/2WA== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-MFC-PROC-ID: ulj6yl0V0PcCTbqT3BKn18j8H1XQpvB3J9nrasX1ehc_1784972928 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-4011c0/1784972935-599C1CFC-B50C7060/0/0 X-purgate-type: clean X-purgate-size: 861 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972964748154100 The function calls qemu_coroutine_yield(), and is called from monitor_qmp_dispatcher_co(). Fixes: 60f4f62efeb ("monitor: extract request dequeuing to a new function") Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Markus Armbruster Signed-off-by: Marc-Andr=C3=A9 Lureau --- monitor/qmp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/monitor/qmp.c b/monitor/qmp.c index 223e0643c2ad..338d37cb7e5a 100644 --- a/monitor/qmp.c +++ b/monitor/qmp.c @@ -342,7 +342,8 @@ static QMPRequest *monitor_qmp_requests_pop_any_with_lo= ck(void) return req_obj; } =20 -static QMPRequest *monitor_qmp_dispatcher_pop_any(void) +static QMPRequest * coroutine_fn +monitor_qmp_dispatcher_pop_any(void) { while (true) { /* --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972967; cv=none; d=zohomail.com; s=zohoarc; b=XN8zSv5IIwOuLxwIfZaZnDmWhOAV8rG6IzWJohxMHHj3aVsznAGtnLvcgFLpUDq1e7SlGmjzyUfDGRVsOLNJP+paNDyHiPbCd/nBdxEyCgSOWL1d2ZqCuwZBXHfNmr+7eAoEjJpiz26Z5X+gW7wAb5LejrtkREr+wd8OlaNuOsI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972967; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=o/K+1AUXVnWWVKlHiV4xOB2JHy4bJFnMoNAwKxtUWMM=; b=gNIQ04BS8gXwx/Unb//rUx5vG9byhHHN2rzSS/50Lhza5cfX4+SkyYlq/F8OOoELtR7TS/7lPTzlj6Lqu86mJcPen9t90gaeUBK/8TW3Y9qg/UmX12DZT1X6tv/TXFG1z0+24K9MRr/bGgznZFg1KH380aQriQScfommebELfNc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972967837317.61562218177676; Sat, 25 Jul 2026 02:49:27 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370558.1618649 (Exim 4.92) (envelope-from ) id 1wnZ0B-0003tk-6K; Sat, 25 Jul 2026 09:49:03 +0000 Received: by outflank-mailman (output) from mailman id 1370558.1618649; Sat, 25 Jul 2026 09:49:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0B-0003td-1n; Sat, 25 Jul 2026 09:49:03 +0000 Received: by outflank-mailman (input) for mailman id 1370558; Sat, 25 Jul 2026 09:49:01 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ09-0003sY-S9 for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:01 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ09-003Tyx-7s for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:01 +0200 Received: from [10.42.69.5] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648665-bab6-0a2a0a5309dd-0a2a4505c29e-38 for ; Sat, 25 Jul 2026 11:49:00 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-c201ff.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a64868b-4cb1-0a2a45050019-aa0a817ce553-3 for ; Sat, 25 Jul 2026 11:49:00 +0200 Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-659-kqW6JzhCMSGvGk6dV2OZ9Q-1; Sat, 25 Jul 2026 05:48:55 -0400 Received: from mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.95]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 57AE31944D07; Sat, 25 Jul 2026 09:48:53 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id EC46B414; Sat, 25 Jul 2026 09:48:51 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972939; 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=o/K+1AUXVnWWVKlHiV4xOB2JHy4bJFnMoNAwKxtUWMM=; b=chmbcuKavWhVMwayB/STkMyWSNG9B/NRCDgyClqK13MIEr2ORg2Vf9Ucw7G3qaaCv9u21E u5DKq5Z0j5nznDqTE1Jkj3FWgjaVRNxY+giietIZ3kCN/QIEVIXOebJ5qKiSeRav0PTtWD 5uuJNCL86E2iwetB53ZG9xTx0wpFKKc= X-MC-Unique: kqW6JzhCMSGvGk6dV2OZ9Q-1 X-Mimecast-MFC-AGG-ID: kqW6JzhCMSGvGk6dV2OZ9Q_1784972934 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:33 +0400 Subject: [PATCH v2 2/8] migration: fix qemu_get_counted_string annotation MIME-Version: 1.0 Message-Id: <20260725-co-v2-2-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Developer-Signature: v=1; a=openpgp-sha256; l=908; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=30QVK4Yftj1iMTz1RR+q67DvyJxcMY1WCMPrbYrInjc=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZzO1HZBtKMLGFKp3fYeR5gHjF+rjEkFyuzI 0CxABrBaD2JAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5buBD/99haUzF1FiNgKLiFuyz6+SuHqBPF3MGW6my12xjC7Af9mOxeD9wqgASB6p8LNAqsfw3Rf 8sJJdoEZP+Cv0/ykaAmcDhUJYjmRBCYhjsI0bkf6vgAPkQUl0LJZDuDLKYn/9i4Tpv+nEZ1F04f aVEEEdI68AMq7Hznot0B9b9LCG0tzzJrO2Y0OlXl49BqVhTGJ3fb/OSV2e5r1LMPCVJLK6vEJKf SyAZNyuB5XCSCIYfgFOcu7h4K6yRH75p++quoBFHKqHhIwEn3V1wBuVorxEGOQBEv9dgdVt2ZeI mjKwctY3vLgVWEzowRy1cdxFKeKs+u2t9v3tM8ZcpgTOqIcYxPFt/ecfCgpaQwCSdOYG5RNEoeR IydKsGfkRthqCPdjBjIc65krISlvtbM0PqljjyPgsELy0YGxPMICjJTzbovK53zMt69Swx3pGBK CoEeriygam9HZnbKjwC6KEVYteJUdDxzVgqR9XLiIPptHVCrlaLBVr8VVY9Wl+jgzpyV29b5sTx 0Ognto50yvAnke/1swfgvGt0dpELPO6ot5n7j76wu9ChnaojU4w19Vw7rAENuBpDxuBkWqNNdWP Whc6clSymH5W8Or2yeUJIoTkN8fzfPh95eYWo6c0y8KFzuQrm1ArZtB07s2K7zqnedCRJn082RD fjk5NV58LBo2agA== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.6 on 10.30.177.95 X-Mimecast-MFC-PROC-ID: _CxpeqU77fgEpA5yZTkwu1TmUMQmUJcVWmOF8AYkAVw_1784972934 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-c201ff/1784972940-F4CA02A1-F07167EA/0/0 X-purgate-type: clean X-purgate-size: 910 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972970715154100 Fixes: 394b9407e4c ("migration: mark mixed functions that can suspend") Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Marc-Andr=C3=A9 Lureau --- migration/qemu-file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/qemu-file.c b/migration/qemu-file.c index d5a48115bd63..f30e13c66d77 100644 --- a/migration/qemu-file.c +++ b/migration/qemu-file.c @@ -830,7 +830,7 @@ uint64_t qemu_get_be64(QEMUFile *f) * else 0 * (Note a 0 length string will return 0 either way) */ -size_t coroutine_fn qemu_get_counted_string(QEMUFile *f, char buf[256]) +size_t coroutine_mixed_fn qemu_get_counted_string(QEMUFile *f, char buf[25= 6]) { size_t len =3D qemu_get_byte(f); size_t res =3D qemu_get_buffer(f, (uint8_t *)buf, len); --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972966; cv=none; d=zohomail.com; s=zohoarc; b=j9P3COi8QPdQK8izzfBd1NuS/9UBO431oCTUlo8JNKjqAbEPnXE1rQX5lHD1mtBxSog2GfBOQ+cUxiib15Y/h7z1q4JSieU+BN2ymVAnYO78KymqICxwBu+L1rG/f+KJTwK8F0h2weW11e1rMyDMVgA1oUw4UOdaohdGv7ZUFmU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972966; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=om5CIye3i6lrnEkPPfiq+UulgaM6eC6H/1XHPK2zRuA=; b=FzVuGQp32DW1Ph1TcxRuNuN8I6d1GWxIYep8e97vEBTWSumXFck3i0bAVA7aFKSxKNo02+M46CWaPEl+l5PErOxSaA6C33bCZeCXCCw+L+LOnb9u1wD+hnyNo7paOqgSDcCRSTKadG3TY3WZBGU66hMBXX6KD0SiZ+zPqVcp7us= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972966085171.9292014637739; Sat, 25 Jul 2026 02:49:26 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370559.1618657 (Exim 4.92) (envelope-from ) id 1wnZ0G-0004Cy-Dp; Sat, 25 Jul 2026 09:49:08 +0000 Received: by outflank-mailman (output) from mailman id 1370559.1618657; Sat, 25 Jul 2026 09:49:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0G-0004Cn-AB; Sat, 25 Jul 2026 09:49:08 +0000 Received: by outflank-mailman (input) for mailman id 1370559; Sat, 25 Jul 2026 09:49:06 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0E-00049n-QP for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:06 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0E-003Tyx-7N for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:06 +0200 Received: from [10.42.69.9] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648692-bab6-0a2a0a5309dd-0a2a4509bc64-0 for ; Sat, 25 Jul 2026 11:49:06 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-bad1c0.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a648691-be1a-0a2a45090019-aa0a817c6be9-3 for ; Sat, 25 Jul 2026 11:49:06 +0200 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-433-8qtqlocdObSmloqw3eCJ0w-1; Sat, 25 Jul 2026 05:49:01 -0400 Received: from mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.95]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 9624B1800C35; Sat, 25 Jul 2026 09:48:58 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 0837E15AD; Sat, 25 Jul 2026 09:48:56 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972944; 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=om5CIye3i6lrnEkPPfiq+UulgaM6eC6H/1XHPK2zRuA=; b=Kitw1uPwupgTTphcYwpi53xO6uRP74/xirhLgZ//Xv22tJ1Wkrxta2PzxIZxTC1nfzFFYc dguKspLgH5+mEPHKPArkj/lKfm/5pT9nd8XwSF4ayzcBwVPHTkHfwtiJmQVUGOXg6Tig/0 V/aLLp0rxwXnHMCPYSMplUVpparv0J4= X-MC-Unique: 8qtqlocdObSmloqw3eCJ0w-1 X-Mimecast-MFC-AGG-ID: 8qtqlocdObSmloqw3eCJ0w_1784972939 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:34 +0400 Subject: [PATCH v2 3/8] io: add missing coroutine annotation MIME-Version: 1.0 Message-Id: <20260725-co-v2-3-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Developer-Signature: v=1; a=openpgp-sha256; l=1443; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=hhK3avKdImCgAXvIB7NvRmE1p7D0COK7cwqKnWNle/g=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZzeDY3v/u02EPWgKg8h2Y9qqMbxC8tbSZol 9UFxg2JA6uJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5W9FEACkxbRuybsgqPhJFHRnyhXpFxZMy1BAcH9DcOHSozjWSSJYfgx5mkUyJlAbcOTwlJaKt/P goJB5UinVDym73+x4ZLqQcaLfe4+Qsz9X58MyAVlc/xRwKrK/oQTONTXjBHZ0L8dlKVohTUwwlY NjyeKe/UZ0T/hXnLniERWlQujHe7UrBUqRTaq5166SsYU5fpF8hQ+IexJHTDEuGEPBtp1BkccU0 Kk660LTATwk4GWKKxgie5DK6ZdmfThGclqIWhrqawLAAmAR0jvDt/ZhK3c5H+hvsOTwWoY2BbuY X4k2NyX/ePC45gBMuY+PaqQxflVaj27p9fjhNKMTdkVIPMv2DENrL8A/oyubDt/ovY+Dc9OT5z0 9BwLOQITCf4RjXQ+Ipz1C18tx6WbS3rF0zepzqzi2brZbgGXgyAl+ZqEvYwqf34MryBUNxn+GDf z6onnYQYYWoksNmYaxC3UlO64Ix0jkZ6kNhn4C2S4cv4JRnBIG+isbEM7yuww31MgtzmP1rrAgV A3FUUZ4MqLqMvCRKxnz0UTdduLlZD1ugwQj2XNeS9Q+i4L579CFAE3mSocap6EvglQlxo8Aty6x kSmtLTyMbTMCYazOXfesBncXAAj7sXDGZSmMUs4xKEjI0dz6frEKpFUwqwjj2DKMpqVHxf8XW0K qlcmZvYuZkm9liQ== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.6 on 10.30.177.95 X-Mimecast-MFC-PROC-ID: 3tBt06-nx9i38aVNJ61JvYfK8iRA9yN8tGUiRWthhPo_1784972939 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-bad1c0/1784972946-BE6DA034-89A8ABFD/0/0 X-purgate-type: clean X-purgate-size: 1445 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972966551154100 Fixes: 1edf0df28409 ("io: Add qio_channel_wait_cond() helper") Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Marc-Andr=C3=A9 Lureau --- include/io/channel.h | 4 ++-- io/channel.c | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/include/io/channel.h b/include/io/channel.h index 98485c9280a6..c90ace20d535 100644 --- a/include/io/channel.h +++ b/include/io/channel.h @@ -1016,8 +1016,8 @@ void qio_channel_wait(QIOChannel *ioc, * This will work with/without a coroutine context, by automatically select * the proper API to wait. */ -void qio_channel_wait_cond(QIOChannel *ioc, - GIOCondition condition); +void coroutine_mixed_fn qio_channel_wait_cond(QIOChannel *ioc, + GIOCondition condition); =20 /** * qio_channel_set_aio_fd_handler: diff --git a/io/channel.c b/io/channel.c index 2853dadb684e..620256f310db 100644 --- a/io/channel.c +++ b/io/channel.c @@ -905,8 +905,9 @@ void qio_channel_wait(QIOChannel *ioc, g_main_context_unref(ctxt); } =20 -void qio_channel_wait_cond(QIOChannel *ioc, - GIOCondition condition) +void coroutine_mixed_fn +qio_channel_wait_cond(QIOChannel *ioc, + GIOCondition condition) { if (qemu_in_coroutine()) { qio_channel_yield(ioc, condition); --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972976; cv=none; d=zohomail.com; s=zohoarc; b=K/U1ZIBCi0iR1Q7ZaEMGxOB9PmNvCdx0lngD3FAURRH6XtNzke77OpHkAIBpz/SZdd7rxQPFrZGa6d8WFM6lpcYz1MVLw/FBHCedpWI+11/yGqNX1gE2Zrh97yoF+0+BWumXOu1rLIZz5sKQAPRZksdBXHEyGlittneQKa6pWw8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972976; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HBzav5r/PRxvX7B889078bhSww2+z17xh67+UFrqARc=; b=Us55RdXdjsmtUM6cex6aFU/R/bcXEezkBHcUC6lMVEX6MnfTMI8SQXVLTluzrPz7ce2wdTHz3Oba0gMvNJPS2PR4e3z2lk83AkDaEcET+In/ASROxbZZ0LtgqAwnYOcOPhyXMN/FxmcsKnTOJfjZzz2xdcUWGAk3ZVs0Q5H/tus= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972976569667.5731120775715; Sat, 25 Jul 2026 02:49:36 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370562.1618666 (Exim 4.92) (envelope-from ) id 1wnZ0N-0004dC-L2; Sat, 25 Jul 2026 09:49:15 +0000 Received: by outflank-mailman (output) from mailman id 1370562.1618666; Sat, 25 Jul 2026 09:49:15 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0N-0004d3-I7; Sat, 25 Jul 2026 09:49:15 +0000 Received: by outflank-mailman (input) for mailman id 1370562; Sat, 25 Jul 2026 09:49:13 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0L-0004WJ-IQ for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:13 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0K-00CSAW-Vd for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:12 +0200 Received: from [10.42.69.4] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648657-2eae-0a2a0a5409dd-0a2a4504d2a2-32 for ; Sat, 25 Jul 2026 11:49:12 +0200 Received: from [170.10.133.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-ebf023.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a648697-b57f-0a2a45040019-aa0a857c863f-3 for ; Sat, 25 Jul 2026 11:49:12 +0200 Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-258-KQRq2d8_MVSDC6JQEZgt4Q-1; Sat, 25 Jul 2026 05:49:07 -0400 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 809991955DB5; Sat, 25 Jul 2026 09:49:05 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 81503300019F; Sat, 25 Jul 2026 09:49:02 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972951; 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=HBzav5r/PRxvX7B889078bhSww2+z17xh67+UFrqARc=; b=CcLzqTLxu9vudrkG8Ak+iwVsWSJXDuQTfjXx6wSqq/nBT9d2JXUHttNKc5S2vxaMDwLVmP RJMZPfAp6g+NJieLefCz4jFQhzpbeem3zlo39EPWyp4ZxITmC2DQknkrra7lFFsrPrS972 iKPOap/D7zV6hOVz253fhzdliOr0m7s= X-MC-Unique: KQRq2d8_MVSDC6JQEZgt4Q-1 X-Mimecast-MFC-AGG-ID: KQRq2d8_MVSDC6JQEZgt4Q_1784972946 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:35 +0400 Subject: [PATCH v2 4/8] block: add missing coroutine annotation MIME-Version: 1.0 Message-Id: <20260725-co-v2-4-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Developer-Signature: v=1; a=openpgp-sha256; l=971; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=abdp1jnclsipbx9mt5zdr1x5wsYMVTEvTXCKXSBolV8=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZz9grl3rujFFr0nC5HACNLTbHVapJE30Tmf AxKPYXjJrKJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5b19D/9DHwTT2RdkS9aJSCsfO+Q/NGFEh9JrYG5r24XOrgePClcjmV6TX6TPmooLrmYjGYUxepw MS1Q/eR46z0qBQZjFcnkKGCNcmTDAezrz02GCkl0hx34GcbFD39HfIAtMBuQ1rcnsMh0QZYqVcJ 6fwbJdczYk7txUDhNzcNggOrBEgxw4Nv3dlib8ml/eS5+Q+8gTcaPAlsnn5NRKJ8uU+Ug+LrJme uuhte+vOvucePU8FIfb6xLmBvizXiujdEfxytHNMT7zNW7jv2zUk0A1brsZv2lNEiCEUtaLbSQK W42RevaVr/PbVh7K+ZMD4EABp+13+qwcvlzfeKihasmbFrbA7KK6P/2/WaHW3+q78BeDyJdI7uw TzVPZT87QQFcT0U3Ie/+8z5JpDYd5G4ntBrW32oNIMc+eKVFH9a/8+9XKw+yYZZSvfbagLllckw OypJubbbIDZxk6TkQEcMyMZk8UvH+2N3U0OeeFn4DY7LTTW5gM8zwjHqDMDUXArkaPjnySvgB7F oEgFoj9skf+OzmtyuOhYCVTwErqMi+RslzhIDu5/Hy6FR6zIyA4epj3pQWfwtuUS6ek2iMw+JxD qmDqWeFF56u5d/lccsQqUcchkfXxlWrYfADVWRzD9om998gZ6CWAghc/uwUCzFsC2DhLTX9Cx1f Ejr+wyhOvjIwxQw== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 X-Mimecast-MFC-PROC-ID: EfftffwCwfONULJnmW9tAL3l0fUDb3XtzURpf3XtjF0_1784972946 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-ebf023/1784972952-C04DBB50-54EDAF33/0/0 X-purgate-type: clean X-purgate-size: 973 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972978744154100 The function was extracted without carrying the annotation. Fixes: 23743ab282af ("block: move commit_run loop to separate function") Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Kevin Wolf Signed-off-by: Marc-Andr=C3=A9 Lureau --- block/commit.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/block/commit.c b/block/commit.c index c5e3ef03a21b..2d52c39594cd 100644 --- a/block/commit.c +++ b/block/commit.c @@ -128,8 +128,9 @@ static void commit_clean(Job *job) blk_unref(s->top); } =20 -static int commit_iteration(CommitBlockJob *s, int64_t offset, - int64_t *requested_bytes, void *buf) +static int coroutine_fn +commit_iteration(CommitBlockJob *s, int64_t offset, + int64_t *requested_bytes, void *buf) { BlockErrorAction action; int64_t bytes =3D *requested_bytes; --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972976; cv=none; d=zohomail.com; s=zohoarc; b=Dxak/ig1OejkIpXHcPr/vzHfFK8Zv1cP52+10bQ8kMo/prjzslreVaEL99MIzDc4CLrjfC1x8Ij8JWihkuuOmm9vVSV4FlWK0dAJr5rGhLrmZOV5oxIe26J+JxfT5sPqAsv0SSYqaeA5ejbaHQ8i7mJF5mufz37g/MzioEPiI6I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972976; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=w9P2W4JHcW8gHi5z7gIDq25C1oCq7ThbiMkHET5NoPI=; b=LkMimD7KjH4g60pQ4zPBNR3Eiec0rWtVmka0NHzWg22FUzRysh7VU03EQ/0NIpRQJL81khgDXAwPrcgKQsxnOVbVuCDUhLCRJrhUSKfV9FdpoTduYTun+/SvMlzPFyKNFBdP6OaFk0J7C31hOo8r5cx9MUrMVIP7ZReb5OB0zpk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972976203238.69335899244072; Sat, 25 Jul 2026 02:49:36 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370575.1618675 (Exim 4.92) (envelope-from ) id 1wnZ0R-00057S-Vs; Sat, 25 Jul 2026 09:49:19 +0000 Received: by outflank-mailman (output) from mailman id 1370575.1618675; Sat, 25 Jul 2026 09:49:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0R-00057G-Rr; Sat, 25 Jul 2026 09:49:19 +0000 Received: by outflank-mailman (input) for mailman id 1370575; Sat, 25 Jul 2026 09:49:19 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0R-00053l-B4 for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:19 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0Q-003Tyx-OB for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:18 +0200 Received: from [10.42.69.5] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648665-bab6-0a2a0a5309dd-0a2a4505c29e-46 for ; Sat, 25 Jul 2026 11:49:18 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-c201ff.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a64869d-4cb1-0a2a45050019-aa0a817c7f87-3 for ; Sat, 25 Jul 2026 11:49:18 +0200 Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-621-BrmrMhXXN0i2jceZC3B3Mw-1; Sat, 25 Jul 2026 05:49:13 -0400 Received: from mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.95]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 8249419560BF; Sat, 25 Jul 2026 09:49:11 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id D7A2B15AD; Sat, 25 Jul 2026 09:49:09 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972957; 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=w9P2W4JHcW8gHi5z7gIDq25C1oCq7ThbiMkHET5NoPI=; b=HYVMFAFFNk0G9Gu5TRjShkGNtkdPwqWRsXgYXwD20pEShaBguEl1GAvThMyj/UWfx1EgCt pI9oD+3xxFGfu8vJMpGU3azWtxvnwYOJ2ZcCOJeZaljK16LMQJBi10xbI4TnyWX7MKDdyU v2l+czEJFrxCWiKDm1wLTDG16fNIuuE= X-MC-Unique: BrmrMhXXN0i2jceZC3B3Mw-1 X-Mimecast-MFC-AGG-ID: BrmrMhXXN0i2jceZC3B3Mw_1784972951 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:36 +0400 Subject: [PATCH v2 5/8] qcow2: remove invalid qcow2_check_refcounts calls MIME-Version: 1.0 Message-Id: <20260725-co-v2-5-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Developer-Signature: v=1; a=openpgp-sha256; l=1528; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=OO6u4jc/oE85ygnu76Eff+BQJm9qaSylokab/TrhS7g=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZzfPevyXGRv+xnq8r35PAUtTMrTUb4NAqe+ hkubEX4UVGJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5aAKD/wN53cO9tA13mklf71VFEHO7NQPXDCZjyms/h620vuCWbhJgtsXdTs/vauCTj6QNUvEbur fuKl3k2FkArKGYeX7xE4xQEmNJGupnV3nGUeCvIYmGXf0fAJqwjXdF5fN60c+mZ8uVMPW5WjXRB sefOQhmb7hNT1u7G50hQo6Lywi1rAlAltWxCnf/j2yK2LyBHQCArIMzwM+tGfR63ImLvUVeCrHw FU3dbk5dCWNDXGYcNF71kJVvxiqCdLxVEiWbkEtNJHUU2JSh6malEhnFsjaKnz1V5ZIB2BmOCZj NJ5ds5WC3g+koW/4yh9pAajJo3MIWtkpKA4hnm3RT7MpJ3vngIkbT6Qk2u7EjfvNLqInYHWWQfo lt40V1rdSWT5tY6bwj3Gou/6P3xwFWZSk7/ko0C3XvgaW3mml7X9oVls5rGXc65kBE4jtQB3va8 RxD9Cio/knC3ua+Brls+Rm33paasb73NYZdiaqXW3a0zk2DmK6l1y+G5lKQfGOW6bvUDv1yfNwB wrSOTxQXxj/Wy/oO2tTL6aVKdqJxMtBnSEo2gCtcfgC8xeXXA49wmMbOLq0s8RmQ8E47BcVzcn/ EqOfZPC7iOFaoI1cyhfCAQBS7zyDXyhuv2kB1jV+/W/xKKMPQw6oLSHhUVx4+BNmDDsTO83NyvQ z3SBv86fYOVjKbA== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.6 on 10.30.177.95 X-Mimecast-MFC-PROC-ID: QFOr934oFcxZcDR0MHZwAqlYO5gAaiEYl9r7OHod3qE_1784972951 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-c201ff/1784972958-F6AB72A1-6BD7D1DE/0/0 X-purgate-type: clean X-purgate-size: 1530 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972976795154101 Those DEBUG_ALLOC-guarded are dead code incorrectly calling coroutine fn from non-coroutine. Remove it. Reviewed-by: Philippe Mathieu-Daud=C3=A9 Fixes: 70bacc44532 ("qcow2: mark more functions as coroutine_fns and GRAPH= _RDLOCK") Signed-off-by: Marc-Andr=C3=A9 Lureau --- block/qcow2-snapshot.c | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/block/qcow2-snapshot.c b/block/qcow2-snapshot.c index 1e8dc48be1c5..8453ad73d10f 100644 --- a/block/qcow2-snapshot.c +++ b/block/qcow2-snapshot.c @@ -740,12 +740,6 @@ int qcow2_snapshot_create(BlockDriverState *bs, QEMUSn= apshotInfo *sn_info) ROUND_UP(sn->vm_state_size, s->cluster_size), QCOW2_DISCARD_NEVER, false); =20 -#ifdef DEBUG_ALLOC - { - BdrvCheckResult result =3D {0}; - qcow2_check_refcounts(bs, &result, 0); - } -#endif return 0; =20 fail: @@ -893,12 +887,6 @@ int qcow2_snapshot_goto(BlockDriverState *bs, const ch= ar *snapshot_id) goto fail; } =20 -#ifdef DEBUG_ALLOC - { - BdrvCheckResult result =3D {0}; - qcow2_check_refcounts(bs, &result, 0); - } -#endif return 0; =20 fail: @@ -975,12 +963,6 @@ int qcow2_snapshot_delete(BlockDriverState *bs, return ret; } =20 -#ifdef DEBUG_ALLOC - { - BdrvCheckResult result =3D {0}; - qcow2_check_refcounts(bs, &result, 0); - } -#endif return 0; } =20 --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972991; cv=none; d=zohomail.com; s=zohoarc; b=eVjpIeqKEX1DwzMsMKXcOZUgzAlOhcDSgI9d7XMjim8oQ74naLFxgHBTwTsYvcfxnLEZJN5P2FuJK91ip+kfsK+ulK/fziQXxn4KjY5BNGVT4JUgjPpNGx8sdWkZO21blJKMHuiKl6l/SvEDtsgDQcwEO+2Ilxu31Le369ITq8U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972991; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Q+j1+kKqO3gSZvGipTvwtW8wX1wySBZb9ydRx80MK64=; b=Er7dwrz6kRT5HVXGPdgtbGriZg/Wz3+q28osnmMBN+KWTxgG3Uf8Tm1a4orskcXGliD252H6ohfAUXn1bITSxG1Yt3RbJWK0gU5jueamH5/zgPc1VfDATZ9M/iiTYAhy/5J4mp7IBh7jQKCOeqkqm5MgbMbgdv8yIybiLkrGlVQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972991136175.53003585447777; Sat, 25 Jul 2026 02:49:51 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370580.1618684 (Exim 4.92) (envelope-from ) id 1wnZ0Z-0005dF-C4; Sat, 25 Jul 2026 09:49:27 +0000 Received: by outflank-mailman (output) from mailman id 1370580.1618684; Sat, 25 Jul 2026 09:49:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0Z-0005ca-86; Sat, 25 Jul 2026 09:49:27 +0000 Received: by outflank-mailman (input) for mailman id 1370580; Sat, 25 Jul 2026 09:49:25 +0000 Received: from mx.expurgate.net ([194.145.224.10]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0X-0005ZS-KO for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:25 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0X-008uR2-1D for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:25 +0200 Received: from [10.42.69.12] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648698-e002-0a2a0a5209dd-0a2a450ce08a-14 for ; Sat, 25 Jul 2026 11:49:24 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-d25034.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a6486a3-f479-0a2a450c0019-aa0a817cbda9-3 for ; Sat, 25 Jul 2026 11:49:24 +0200 Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-609-1bbY5DcCP9-L3iAAvjj2xQ-1; Sat, 25 Jul 2026 05:49:20 -0400 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id A7F371800593; Sat, 25 Jul 2026 09:49:17 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 04112195608A; Sat, 25 Jul 2026 09:49:15 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972963; 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=Q+j1+kKqO3gSZvGipTvwtW8wX1wySBZb9ydRx80MK64=; b=NfO4E/NDTMqtRgnL+ukwahBMyLkfdpVF47RlQBtunS9bDq7UWtVmS9LSWRIq3PftC650Fb N0xwH0nmgfC7Ct3ND8cqeHuxLVqvHrbSaR1EtOi4uT3tPTuaU1m6MevzdUm0FQBZrdu7cq BpTzmdskl/RCJL8fGf+kcOaPiRT0qQw= X-MC-Unique: 1bbY5DcCP9-L3iAAvjj2xQ-1 X-Mimecast-MFC-AGG-ID: 1bbY5DcCP9-L3iAAvjj2xQ_1784972958 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:37 +0400 Subject: [PATCH v2 6/8] block: add missing coroutine_fn annotations MIME-Version: 1.0 Message-Id: <20260725-co-v2-6-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= X-Developer-Signature: v=1; a=openpgp-sha256; l=5471; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=yTkTviyyBs2JmImgJurFl/odglaAcF3CvUVYx2ZMvRM=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZz8TTOO3VDCqBTb3iNQAKge10DpvXXqhXeQ nPOCdjvI3uJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5S/DD/9cjL8R8CyX153qhZrTXbN9AANth97cirMo2+NXG4TV5YLdr6hEhHRI7iGBfvXnfWZXAxW W3rPCqqWF45atRd4qIuWkOh25wNNxPHuUuXvw/yKeZrN5QuvnKPBgjU5fE1TloYOHXx1NaOsBtK itFYbZcUffhaWCMUeYyhqFAT0qG54aJZyiOldKaoNYjgwjaRnDgBJQhOHtwNxPrKFT3lAQOVZke jsLhGPgY0T7ea3fpy8Jl8QqWziCLZsEfnrSyBLfcNte5kllSJEOyTFmL115UVBXwwcWsGZ90XIg W8ct3twLPiFbK7U2ct8hqtAIDvnPzYfToYpb6MKTPrUCEJYnR9InQJgYjzxQ2tsb7EeuU4gEROQ B2riKZ5mMVAewG2XXhF3uPpkjU8LrX7sOlLGA5eM3kDRV17zvrwz8jRSZuXiTkRUQgSoehA1MSw qEnPlnLTFgQtBt3cPHh36MXbjMxF52u8tVoKraUjnejH8tstHVFgpyJrOXq33edWZvDRGq6iMbO yu9rm9p5SWXEDvbUNvWXIo0TuO9wTFrhuC4xQyCZAZ5W6pSP6ZDQNcRWZuXj6EqP5mLkC4o61Ib gie+it0H4AXAlRHKx2u6E5xkmjbyfbWOq3wcHhrYEusLNBnIiVCgU+yJHf7RKteRXFQ6+BeWNd0 W7BEVu/I/8oyZDQ== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-MFC-PROC-ID: H7jSOuheZSwli5sVOuaNp8B9Yu2KnqqXN_f_qv1CurQ_1784972958 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-d25034/1784972964-016C6A5B-472FEF84/0/0 X-purgate-type: clean X-purgate-size: 5473 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972993017154100 The functions call coroutine functions or are called by coroutine. Add an assert() in qcow2_do_close() code path which calls a no_coroutine_fn bdrv_graph_wrlock_drained(). Add an assert() in qcow2_update_options_commit() in the coroutine path. Signed-off-by: Marc-Andr=C3=A9 Lureau --- include/block/blockjob_int.h | 2 +- block/crypto.c | 13 +++++++------ block/io.c | 8 +++++--- block/parallels.c | 5 +++-- block/qcow2.c | 12 ++++++++---- blockjob.c | 3 ++- 6 files changed, 26 insertions(+), 17 deletions(-) diff --git a/include/block/blockjob_int.h b/include/block/blockjob_int.h index 4c3d2e25a209..34e172874fa9 100644 --- a/include/block/blockjob_int.h +++ b/include/block/blockjob_int.h @@ -150,7 +150,7 @@ void block_job_ratelimit_processed_bytes(BlockJob *job,= uint64_t n); * Put the job to sleep (assuming that it wasn't canceled) to throttle it = to the * right speed according to its rate limiting. */ -void block_job_ratelimit_sleep(BlockJob *job); +void coroutine_fn block_job_ratelimit_sleep(BlockJob *job); =20 /** * block_job_error_action: diff --git a/block/crypto.c b/block/crypto.c index 36abb7af4680..8a34d92fded6 100644 --- a/block/crypto.c +++ b/block/crypto.c @@ -56,12 +56,13 @@ static int block_crypto_probe_generic(QCryptoBlockForma= t format, } =20 =20 -static int block_crypto_read_func(QCryptoBlock *block, - size_t offset, - uint8_t *buf, - size_t buflen, - void *opaque, - Error **errp) +static int coroutine_mixed_fn +block_crypto_read_func(QCryptoBlock *block, + size_t offset, + uint8_t *buf, + size_t buflen, + void *opaque, + Error **errp) { BlockDriverState *bs =3D opaque; BlockCrypto *crypto =3D bs->opaque; diff --git a/block/io.c b/block/io.c index a916b236c3c8..99dd16864a3d 100644 --- a/block/io.c +++ b/block/io.c @@ -346,8 +346,9 @@ static void coroutine_fn bdrv_co_yield_to_drain(BlockDr= iverState *bs, assert(data.done); } =20 -static void bdrv_do_drained_begin(BlockDriverState *bs, BdrvChild *parent, - bool poll) +static void coroutine_mixed_fn +bdrv_do_drained_begin(BlockDriverState *bs, BdrvChild *parent, + bool poll) { IO_OR_GS_CODE(); =20 @@ -397,7 +398,8 @@ bdrv_drained_begin(BlockDriverState *bs) * This function does not poll, nor must any of its recursively called * functions. */ -static void bdrv_do_drained_end(BlockDriverState *bs, BdrvChild *parent) +static void coroutine_mixed_fn +bdrv_do_drained_end(BlockDriverState *bs, BdrvChild *parent) { IO_OR_GS_CODE(); =20 diff --git a/block/parallels.c b/block/parallels.c index 7a90fb5220b9..6f96cc4e3045 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -142,8 +142,9 @@ static uint32_t host_cluster_index(BDRVParallelsState *= s, int64_t off) return off / s->cluster_size; } =20 -static int64_t block_status(BDRVParallelsState *s, int64_t sector_num, - int nb_sectors, int *pnum) +static int64_t +block_status(BDRVParallelsState *s, int64_t sector_num, + int nb_sectors, int *pnum) { int64_t start_off =3D -2, prev_end_off =3D -2; =20 diff --git a/block/qcow2.c b/block/qcow2.c index 19271b10a49f..409ac362db62 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1287,9 +1287,10 @@ fail: } =20 /* s_locked specifies whether s->lock is held or not */ -static void qcow2_update_options_commit(BlockDriverState *bs, - Qcow2ReopenState *r, - bool s_locked) +static coroutine_mixed_fn void +qcow2_update_options_commit(BlockDriverState *bs, + Qcow2ReopenState *r, + bool s_locked) { BDRVQcow2State *s =3D bs->opaque; int i; @@ -1299,6 +1300,7 @@ static void qcow2_update_options_commit(BlockDriverSt= ate *bs, * table caches */ if (s_locked) { + assert(qemu_in_coroutine()); cache_clean_timer_co_locked_del_and_wait(bs); } else { cache_clean_timer_del_and_wait(bs); @@ -2126,7 +2128,8 @@ fail: return ret; } =20 -static void qcow2_reopen_commit(BDRVReopenState *state) +static void +qcow2_reopen_commit(BDRVReopenState *state) { BDRVQcow2State *s =3D state->bs->opaque; =20 @@ -2905,6 +2908,7 @@ qcow2_do_close(BlockDriverState *bs, bool close_data_= file) g_free(s->image_backing_format); =20 if (close_data_file && has_data_file(bs)) { + assert(!qemu_in_coroutine()); GLOBAL_STATE_CODE(); bdrv_graph_rdunlock_main_loop(); bdrv_graph_wrlock_drained(); diff --git a/blockjob.c b/blockjob.c index f3b11cc7a194..f3ad6a93125a 100644 --- a/blockjob.c +++ b/blockjob.c @@ -338,7 +338,8 @@ void block_job_ratelimit_processed_bytes(BlockJob *job,= uint64_t n) ratelimit_calculate_delay(&job->limit, n); } =20 -void block_job_ratelimit_sleep(BlockJob *job) +void coroutine_fn +block_job_ratelimit_sleep(BlockJob *job) { uint64_t delay_ns; =20 --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972990; cv=none; d=zohomail.com; s=zohoarc; b=KXDMCg/QmraiZz7DYll4TEGPi4FCi+6s68FolVtLP6LHbeJbWcWMO0dLKHoKa04XjzkebphI8H1kLBqiceXB/UR3UuaGrHuxDAz7YmjNfck4pkRnq+Q/Ro3s7S74a+eTfAALRBe18uLL3mEjPajaNwNCulhkSzveWOE1tsE+0Tg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972990; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FeeTjvkJM1Dn0dYWSzp90bDCUYiw8gK9AfELQQw1ddI=; b=PS8RAm0DifeYdiM8xmZWTgaPHcQU5tS6txW9v+ai6VgzscPMtVRVjGVNNjUWE1dtxUTkJkzCNxdKun8y8kUOci+llx5rrB9jNFw+IxDw+jxD3b61Pi/Gg161TdDiZcXmQaPw7L6LADC7OvC3QcnJNESU26r7D75libsqaWHi4VI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 178497299033153.87822836619762; Sat, 25 Jul 2026 02:49:50 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370591.1618693 (Exim 4.92) (envelope-from ) id 1wnZ0g-0006BL-I9; Sat, 25 Jul 2026 09:49:34 +0000 Received: by outflank-mailman (output) from mailman id 1370591.1618693; Sat, 25 Jul 2026 09:49:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0g-0006An-Eo; Sat, 25 Jul 2026 09:49:34 +0000 Received: by outflank-mailman (input) for mailman id 1370591; Sat, 25 Jul 2026 09:49:33 +0000 Received: from mx.expurgate.net ([194.145.224.10]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0f-00067H-8H for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:33 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0e-008uR2-LH for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:32 +0200 Received: from [10.42.69.7] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648646-e002-0a2a0a5209dd-0a2a4507b1ce-48 for ; Sat, 25 Jul 2026 11:49:32 +0200 Received: from [170.10.133.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-ef75cf.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a6486ab-b4ea-0a2a45070019-aa0a857c5f79-3 for ; Sat, 25 Jul 2026 11:49:32 +0200 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-562-ZXGvEzuzOxOY2iHx5gqxvg-1; Sat, 25 Jul 2026 05:49:25 -0400 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 996C91800BE7; Sat, 25 Jul 2026 09:49:23 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id C7BA0180049F; Sat, 25 Jul 2026 09:49:21 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972971; 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=FeeTjvkJM1Dn0dYWSzp90bDCUYiw8gK9AfELQQw1ddI=; b=C/fVkV4vR9eImvIZ7sMNNWNqMyDhlg1cB4INYPx0KG1l7pezboaVTaBa1nDC+3ONjBLsKr ClKLUjP7zZMwPI0+xrM4ibOzFSI191GLHo1hSOOR7mwY4Zavy3kLU8VDFzx2fCKRFkGjv9 JdORUhOFKDI2kJ8EQJmfcm6+FkoJg5k= X-MC-Unique: ZXGvEzuzOxOY2iHx5gqxvg-1 X-Mimecast-MFC-AGG-ID: ZXGvEzuzOxOY2iHx5gqxvg_1784972964 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:38 +0400 Subject: [PATCH v2 7/8] hw/9pfs: annotate V9fsTransport callbacks as coroutine_fn MIME-Version: 1.0 Message-Id: <20260725-co-v2-7-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= X-Developer-Signature: v=1; a=openpgp-sha256; l=12210; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=PrexPNQ2Ihat15GzNcjy38+9DFqHdHllyp7j3xM3SIY=; b=owEBbQKS/ZANAwAKAdro4Ql1lpzlAcsmYgBqZIZzZri2wovVvyg7luKomC/Qdjut5fZZ5+87C 79GJVT7CSGJAjMEAAEKAB0WIQSHqb2TP4fGBtJ29i3a6OEJdZac5QUCamSGcwAKCRDa6OEJdZac 5XiOD/9aCgiO9aaqzCpvDR48Jb/zWImmfzQx94/n+ljKr4R+DQf+O3nZZ/6gdv4/RxaSLenH3Ga M2B/LuEEdmc7RVFNmlUl3moLCUAywULmWtpYD7XBoeVGzpvL4eSH/AKvilzeIwExOaARGMxhXT2 Z+B9A0AcJYKYyFA4yjOoW5ySF8qstvsJA7IrlGtPkQO891p3E0+90nq6JM8s59qMEGvCn+FgMCc tUce96pSStLHQbHiz/U3XiA4/dQd1SX8JslkP7OsFrGBIa3mXBZfW3wZvRlkB7h7XryTb3cuXkw FsM7VavuzFjfsE10aLCSb1wezR5T1LKFfl3skjm/T5veROPHdYtTpOV4I8S7UptVMW+SEhiWihU M+CQbJDWMjOhSwAsn9hPyuFM5GVYOBbcjZBEXnucc/O1jlZOjEYax3ZEXjCBr6xzVKPkBd9wj86 rF3+fFODFaExWYdEJvk/3CdzWyJECQvJBE9SeMJYQZMR4R2osTi0EKthegNzigSdUspHfwEEEzg 4abdXwsQvV07gvH3ih5ww8YMPyxSKV+mUBOAcPpYjtD92DJOx4jZPZfWHi/GitMq5ZbTJYcZSO5 Kpa77VBFATVHGF8WHBKnXQuNxmwxqR9kc0u6Mr+K8aoAW/bPvBNV5LIKOhBqelq2x2fu1pdALdG vAJffkll9ZgV52Q== X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-MFC-PROC-ID: 9-Rda8JUZ3oabaZGTpKMB8Et8oIf_q_1OH72sEhjkKE_1784972964 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-ef75cf/1784972972-A54C3AE4-8E5ABBDF/0/0 X-purgate-type: clean X-purgate-size: 12212 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972992973154100 All V9fsTransport callbacks are invoked exclusively from coroutine context (the v9fs_* PDU handlers). Annotate the function pointer types in V9fsTransport and all implementations (virtio and xen backends), as well as intermediate callers in 9p.c (pdu_marshal, pdu_unmarshal, v9fs_init_qiov_from_pdu, etc.). Acked-by: Christian Schoenebeck Signed-off-by: Marc-Andr=C3=A9 Lureau --- hw/9pfs/9p.h | 26 +++++++++++++++----------- hw/9pfs/9p.c | 31 +++++++++++++++++++------------ hw/9pfs/virtio-9p-device.c | 24 +++++++++++++----------- hw/9pfs/xen-9p-backend.c | 34 +++++++++++++++++----------------- 4 files changed, 64 insertions(+), 51 deletions(-) diff --git a/hw/9pfs/9p.h b/hw/9pfs/9p.h index 1a309664f6e3..0e52ffbdf38b 100644 --- a/hw/9pfs/9p.h +++ b/hw/9pfs/9p.h @@ -472,17 +472,21 @@ void pdu_submit(V9fsPDU *pdu, P9MsgHeader *hdr); void v9fs_reset(V9fsState *s); =20 struct V9fsTransport { - ssize_t (*pdu_vmarshal)(V9fsPDU *pdu, size_t offset, const char *f= mt, - va_list ap); - ssize_t (*pdu_vunmarshal)(V9fsPDU *pdu, size_t offset, const char = *fmt, - va_list ap); - void (*init_in_iov_from_pdu)(V9fsPDU *pdu, struct iovec **piov, - unsigned int *pniov, size_t size); - void (*init_out_iov_from_pdu)(V9fsPDU *pdu, struct iovec **piov, - unsigned int *pniov, size_t size); - void (*push_and_notify)(V9fsPDU *pdu); - size_t (*msize_limit)(V9fsState *s); - size_t (*response_buffer_size)(V9fsPDU *pdu); + ssize_t coroutine_fn (*pdu_vmarshal)(V9fsPDU *pdu, size_t offset, + const char *fmt, va_list ap); + ssize_t coroutine_fn (*pdu_vunmarshal)(V9fsPDU *pdu, size_t offset, + const char *fmt, va_list ap= ); + void coroutine_fn (*init_in_iov_from_pdu)(V9fsPDU *pdu, + struct iovec **piov, + unsigned int *pniov, + size_t size); + void coroutine_fn (*init_out_iov_from_pdu)(V9fsPDU *pdu, + struct iovec **piov, + unsigned int *pniov, + size_t size); + void coroutine_fn (*push_and_notify)(V9fsPDU *pdu); + size_t coroutine_fn (*msize_limit)(V9fsState *s); + size_t coroutine_fn (*response_buffer_size)(V9fsPDU *pdu); }; =20 #endif diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 3119f011173d..00cfbae6dd5b 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -55,7 +55,8 @@ enum { =20 P9ARRAY_DEFINE_TYPE(V9fsPath, v9fs_path_free); =20 -static ssize_t pdu_marshal(V9fsPDU *pdu, size_t offset, const char *fmt, .= ..) +static ssize_t coroutine_fn +pdu_marshal(V9fsPDU *pdu, size_t offset, const char *fmt, ...) { ssize_t ret; va_list ap; @@ -67,7 +68,8 @@ static ssize_t pdu_marshal(V9fsPDU *pdu, size_t offset, c= onst char *fmt, ...) return ret; } =20 -static ssize_t pdu_unmarshal(V9fsPDU *pdu, size_t offset, const char *fmt,= ...) +static ssize_t coroutine_fn +pdu_unmarshal(V9fsPDU *pdu, size_t offset, const char *fmt, ...) { ssize_t ret; va_list ap; @@ -1841,7 +1843,8 @@ out_nofid: pdu_complete(pdu, err); } =20 -static int v9fs_walk_marshal(V9fsPDU *pdu, uint16_t nwnames, V9fsQID *qids) +static int coroutine_fn +v9fs_walk_marshal(V9fsPDU *pdu, uint16_t nwnames, V9fsQID *qids) { int i; ssize_t err; @@ -2363,9 +2366,10 @@ out_nofid: * The resulting QEMUIOVector has heap-allocated iovecs and must be cleane= d up * with qemu_iovec_destroy(). */ -static void v9fs_init_qiov_from_pdu(QEMUIOVector *qiov, V9fsPDU *pdu, - size_t skip, size_t size, - bool is_write) +static void coroutine_fn +v9fs_init_qiov_from_pdu(QEMUIOVector *qiov, V9fsPDU *pdu, + size_t skip, size_t size, + bool is_write) { QEMUIOVector elem; struct iovec *iov; @@ -2382,8 +2386,9 @@ static void v9fs_init_qiov_from_pdu(QEMUIOVector *qio= v, V9fsPDU *pdu, qemu_iovec_concat(qiov, &elem, skip, size); } =20 -static int v9fs_xattr_read(V9fsState *s, V9fsPDU *pdu, V9fsFidState *fidp, - uint64_t off, uint32_t max_count) +static int coroutine_fn +v9fs_xattr_read(V9fsState *s, V9fsPDU *pdu, V9fsFidState *fidp, + uint64_t off, uint32_t max_count) { ssize_t err; size_t offset =3D 7; @@ -2793,9 +2798,10 @@ out_nofid: pdu_complete(pdu, retval); } =20 -static int v9fs_xattr_write(V9fsState *s, V9fsPDU *pdu, V9fsFidState *fidp, - uint64_t off, uint32_t count, - struct iovec *sg, int cnt) +static int coroutine_fn +v9fs_xattr_write(V9fsState *s, V9fsPDU *pdu, V9fsFidState *fidp, + uint64_t off, uint32_t count, + struct iovec *sg, int cnt) { int i, to_copy; ssize_t err =3D 0; @@ -3729,7 +3735,8 @@ out_nofid: pdu_complete(pdu, err); } =20 -static int v9fs_fill_statfs(V9fsState *s, V9fsPDU *pdu, struct statfs *stb= uf) +static int coroutine_fn +v9fs_fill_statfs(V9fsState *s, V9fsPDU *pdu, struct statfs *stbuf) { uint32_t f_type; uint32_t f_bsize; diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c index 50dc93091d33..b2dd859fb560 100644 --- a/hw/9pfs/virtio-9p-device.c +++ b/hw/9pfs/virtio-9p-device.c @@ -28,7 +28,7 @@ #include "qemu/module.h" #include "system/qtest.h" =20 -static void virtio_9p_push_and_notify(V9fsPDU *pdu) +static void coroutine_fn virtio_9p_push_and_notify(V9fsPDU *pdu) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); @@ -117,8 +117,8 @@ static void virtio_9p_reset(VirtIODevice *vdev) v9fs_reset(&v->state); } =20 -static ssize_t virtio_pdu_vmarshal(V9fsPDU *pdu, size_t offset, - const char *fmt, va_list ap) +static ssize_t coroutine_fn +virtio_pdu_vmarshal(V9fsPDU *pdu, size_t offset, const char *fmt, va_list = ap) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); @@ -135,8 +135,8 @@ static ssize_t virtio_pdu_vmarshal(V9fsPDU *pdu, size_t= offset, return ret; } =20 -static ssize_t virtio_pdu_vunmarshal(V9fsPDU *pdu, size_t offset, - const char *fmt, va_list ap) +static ssize_t coroutine_fn +virtio_pdu_vunmarshal(V9fsPDU *pdu, size_t offset, const char *fmt, va_lis= t ap) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); @@ -152,8 +152,9 @@ static ssize_t virtio_pdu_vunmarshal(V9fsPDU *pdu, size= _t offset, return ret; } =20 -static void virtio_init_in_iov_from_pdu(V9fsPDU *pdu, struct iovec **piov, - unsigned int *pniov, size_t size) +static void coroutine_fn +virtio_init_in_iov_from_pdu(V9fsPDU *pdu, struct iovec **piov, + unsigned int *pniov, size_t size) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); @@ -172,8 +173,9 @@ static void virtio_init_in_iov_from_pdu(V9fsPDU *pdu, s= truct iovec **piov, *pniov =3D elem->in_num; } =20 -static void virtio_init_out_iov_from_pdu(V9fsPDU *pdu, struct iovec **piov, - unsigned int *pniov, size_t size) +static void coroutine_fn +virtio_init_out_iov_from_pdu(V9fsPDU *pdu, struct iovec **piov, + unsigned int *pniov, size_t size) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); @@ -192,13 +194,13 @@ static void virtio_init_out_iov_from_pdu(V9fsPDU *pdu= , struct iovec **piov, *pniov =3D elem->out_num; } =20 -static size_t virtio_9p_msize_limit(V9fsState *s) +static size_t coroutine_fn virtio_9p_msize_limit(V9fsState *s) { const size_t guestPageSize =3D 4096; return (VIRTQUEUE_MAX_SIZE - 2) * guestPageSize; } =20 -static size_t virtio_9p_response_buffer_size(V9fsPDU *pdu) +static size_t coroutine_fn virtio_9p_response_buffer_size(V9fsPDU *pdu) { V9fsState *s =3D pdu->s; V9fsVirtioState *v =3D container_of(s, V9fsVirtioState, state); diff --git a/hw/9pfs/xen-9p-backend.c b/hw/9pfs/xen-9p-backend.c index 24c90d97ec94..7f674f846426 100644 --- a/hw/9pfs/xen-9p-backend.c +++ b/hw/9pfs/xen-9p-backend.c @@ -131,10 +131,10 @@ static void xen_9pfs_out_sg(Xen9pfsRing *ring, } } =20 -static ssize_t xen_9pfs_pdu_vmarshal(V9fsPDU *pdu, - size_t offset, - const char *fmt, - va_list ap) +static ssize_t coroutine_fn xen_9pfs_pdu_vmarshal(V9fsPDU *pdu, + size_t offset, + const char *fmt, + va_list ap) { Xen9pfsDev *xen_9pfs =3D container_of(pdu->s, Xen9pfsDev, state); struct iovec in_sg[2]; @@ -155,10 +155,10 @@ static ssize_t xen_9pfs_pdu_vmarshal(V9fsPDU *pdu, return ret; } =20 -static ssize_t xen_9pfs_pdu_vunmarshal(V9fsPDU *pdu, - size_t offset, - const char *fmt, - va_list ap) +static ssize_t coroutine_fn xen_9pfs_pdu_vunmarshal(V9fsPDU *pdu, + size_t offset, + const char *fmt, + va_list ap) { Xen9pfsDev *xen_9pfs =3D container_of(pdu->s, Xen9pfsDev, state); struct iovec out_sg[2]; @@ -178,10 +178,10 @@ static ssize_t xen_9pfs_pdu_vunmarshal(V9fsPDU *pdu, return ret; } =20 -static void xen_9pfs_init_out_iov_from_pdu(V9fsPDU *pdu, - struct iovec **piov, - unsigned int *pniov, - size_t size) +static void coroutine_fn xen_9pfs_init_out_iov_from_pdu(V9fsPDU *pdu, + struct iovec **pio= v, + unsigned int *pnio= v, + size_t size) { Xen9pfsDev *xen_9pfs =3D container_of(pdu->s, Xen9pfsDev, state); Xen9pfsRing *ring =3D &xen_9pfs->rings[pdu->tag % xen_9pfs->num_rings]; @@ -195,10 +195,10 @@ static void xen_9pfs_init_out_iov_from_pdu(V9fsPDU *p= du, *pniov =3D num; } =20 -static void xen_9pfs_init_in_iov_from_pdu(V9fsPDU *pdu, - struct iovec **piov, - unsigned int *pniov, - size_t size) +static void coroutine_fn xen_9pfs_init_in_iov_from_pdu(V9fsPDU *pdu, + struct iovec **piov, + unsigned int *pniov, + size_t size) { Xen9pfsDev *xen_9pfs =3D container_of(pdu->s, Xen9pfsDev, state); Xen9pfsRing *ring =3D &xen_9pfs->rings[pdu->tag % xen_9pfs->num_rings]; @@ -227,7 +227,7 @@ again: *pniov =3D num; } =20 -static void xen_9pfs_push_and_notify(V9fsPDU *pdu) +static void coroutine_fn xen_9pfs_push_and_notify(V9fsPDU *pdu) { RING_IDX prod; Xen9pfsDev *priv =3D container_of(pdu->s, Xen9pfsDev, state); --=20 2.55.0 From nobody Sat Jul 25 11:57:10 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1784972998; cv=none; d=zohomail.com; s=zohoarc; b=L7zF3ssYf9NXVyLoIeJp5AU2GmPKExxgJWXlZQY4GTn+VBRml9LhNmt+2jcA39Y5idIPjRlN/tZI5dLRZ4kWk0VZBLWpfJt3mley/KDg0TfGDhmOTPMSz7a6BZv9l31IgFE3uSmGtxwQ+Qh/JRyLUmMn8KWoZCOFapdBSR0VY7E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1784972998; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3otxHHzF848aWH4w40n6EBe3Am3b5Xd5NRbN2eJgj1c=; b=G4RWNN9kOKa8wpqwg5bGsOP3+GvTKfhan6et/g8mjop7fgIuxK8lE5a5h/KVqhaFA/eysUz1GO98o2EMbBRdIMniDxVeEMsKgWe8qHFdujdxa/xnarBn3LOq+GnL0HmO3t1Gd0G+iY04Fe9m/Jhm5F16wD3ytuw3aVSsY900BYI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1784972998505888.4320585309304; Sat, 25 Jul 2026 02:49:58 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1370596.1618702 (Exim 4.92) (envelope-from ) id 1wnZ0l-0006ZK-Qn; Sat, 25 Jul 2026 09:49:39 +0000 Received: by outflank-mailman (output) from mailman id 1370596.1618702; Sat, 25 Jul 2026 09:49:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0l-0006ZD-Ne; Sat, 25 Jul 2026 09:49:39 +0000 Received: by outflank-mailman (input) for mailman id 1370596; Sat, 25 Jul 2026 09:49:38 +0000 Received: from mx.expurgate.net ([195.190.135.20]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1wnZ0k-0006Uu-1a for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 09:49:38 +0000 Received: from mx.expurgate.net (helo=localhost) by mx.expurgate.net with esmtp id 1wnZ0j-003U5N-Eo for xen-devel@lists.xenproject.org; Sat, 25 Jul 2026 11:49:37 +0200 Received: from [10.42.69.10] (helo=localhost) by localhost with ESMTP (eXpurgate MTA 0.9.1) (envelope-from ) id 6a648620-bab6-0a2a0a5309dd-0a2a450a9dce-46 for ; Sat, 25 Jul 2026 11:49:37 +0200 Received: from [170.10.129.124] (helo=us-smtp-delivery-124.mimecast.com) by tlsNG-4011c0.mxtls.expurgate.net with ESMTPS (eXpurgate 4.57.1) (envelope-from ) id 6a6486b0-f2d2-0a2a450a0019-aa0a817ccc27-3 for ; Sat, 25 Jul 2026 11:49:37 +0200 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-359-tlpeUg09MbS26wXvY2u7bA-1; Sat, 25 Jul 2026 05:49:33 -0400 Received: from mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 66BC41800BE2; Sat, 25 Jul 2026 09:49:31 +0000 (UTC) Received: from localhost (unknown [10.44.22.7]) by mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id D426E18001DA; Sat, 25 Jul 2026 09:49:27 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" Authentication-Results: eu.smtp.expurgate.cloud; dkim=pass header.s=mimecast20190719 header.d=redhat.com header.i="@redhat.com" header.h="From:Subject:Date:Message-Id:To:Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:In-Reply-To:References" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784972976; 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=3otxHHzF848aWH4w40n6EBe3Am3b5Xd5NRbN2eJgj1c=; b=BOWYhbdziDHw7VBdzxPZ84HuC0YH9IRgWWjKmTFsWw65tsaSX9g+FxmdM63zx84gf8XQZD WUp+R7U+chdhFOGY7YCPVoz4JyG99gF6oHXqfHAYSUJPquCVNnNqKZGpDs3oMz/3N9UhQQ WpBVOkiy6Z7M7ARsqwMn7ZeaSOIn47o= X-MC-Unique: tlpeUg09MbS26wXvY2u7bA-1 X-Mimecast-MFC-AGG-ID: tlpeUg09MbS26wXvY2u7bA_1784972971 From: =?utf-8?q?Marc-Andr=C3=A9_Lureau?= Date: Sat, 25 Jul 2026 13:48:39 +0400 Subject: [PATCH v2 8/8] migration/rdma: annotate and simplify wait_comp_channel() MIME-Version: 1.0 Message-Id: <20260725-co-v2-8-d3552ddb3931@redhat.com> References: <20260725-co-v2-0-d3552ddb3931@redhat.com> In-Reply-To: <20260725-co-v2-0-d3552ddb3931@redhat.com> To: qemu-devel@nongnu.org Cc: Markus Armbruster , Peter Xu , Fabiano Rosas , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , John Snow , Vladimir Sementsov-Ogievskiy , Kevin Wolf , Hanna Reitz , qemu-block@nongnu.org, Stefan Hajnoczi , Fam Zheng , "Denis V. Lunev" , Christian Schoenebeck , Greg Kurz , "Michael S. Tsirkin" , Stefano Stabellini , Anthony PERARD , "Edgar E. Iglesias" , xen-devel@lists.xenproject.org, Li Zhijian , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= X-Developer-Signature: v=1; a=openpgp-sha256; l=1623; i=marcandre.lureau@redhat.com; h=from:subject:message-id; bh=2C5ZqBaQBwSshXxXMaaT5VaLMkO28qyCe2lqnv2+Heg=; b=kA0DAAoB2ujhCXWWnOUByyZiAGpkhnOgGsGaEW7fYQnX0R7hzSkmXg+bUb7nkK4SHhe9sZ9mD IkCMwQAAQoAHRYhBIepvZM/h8YG0nb2Ldro4Ql1lpzlBQJqZIZzAAoJENro4Ql1lpzl2WAP/AlG 8U2u9t+z/ghM4iddfUBBNQCKNNC94atpjYBR7zEtMmEinsybH1CBGtm0uRRF21C/Pl36mCq99Oh LikhyMG6+0EH4lEGC2CSC/HD+SiYvSScNx32vMK1FXF2VWtPpZfjNKcDrilTVOpJBdE4WMyEHgo Hyjh0m9/kFgISoiAA04TY9YNB4798/imFwDCRNAmfwqRYs3CDQ5JkZRUA7nAo2o7gJfmPSYW9Pf PAJoDnwtwHD1tuocvj/G4/lQV90ohuZXkRBSbHjwsLhEZmhZylsnFkeX2ja0SjKeUjbrlYm+iNE CdYyQw7HCXZtAVYN7+BEnvv/RqLHHYNXNC00CzfmGuERxgGw/2gcFz6/nAYxbM6P1VrOsefRJqs hwmXCzX4AIrSYKeOsaXVQUSf3ZHg68HLzpn9Q/ZQhS+TerMfXo6bmSvg/gO27j2m1SqRgUR7/nx ud+F9xVyvWhFQr0rO/HRFPndoVtmWuCXzlUr7LAwOPK2SGU502dhXVbLz1VzIC/HzJ1vE5hbzfR iUYVQFA4wZJ0TFeLdD0k7RR3IErhEFiG/bRUxHVdBIownfSeLbwlJyZa6zP2CYaD9oSe4PPtYCE I6z7TqtrC0pCcDJjYyuF0/WnxguSZ1LTzgxq1wDBgUv00yB3KFZ44rk7ExMaFtSVGHMoWma7jp+ GYfAm X-Developer-Key: i=marcandre.lureau@redhat.com; a=openpgp; fpr=87A9BD933F87C606D276F62DDAE8E10975969CE5 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.93 X-Mimecast-MFC-PROC-ID: zUbay7ZWG-u-Da0wCyNvpUXtQUrfBcnX3g-PqSpGDBk_1784972971 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-purgate-ID: tlsNG-4011c0/1784972977-5A7DACFC-2DDE9B59/0/0 X-purgate-type: clean X-purgate-size: 1625 X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1784972999295154100 The function calls yield_until_fd_readable() (coroutine_fn) when in coroutine context, and polls with qemu_poll_ns() otherwise. Replace the migration-state proxy check with qemu_in_coroutine(), which directly tests what matters. Fixes: 2da776db4846 ("rdma: core logic") Reviewed-by: Peter Xu Signed-off-by: Marc-Andr=C3=A9 Lureau --- migration/rdma.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/migration/rdma.c b/migration/rdma.c index 3e37a1d44013..438419d18943 100644 --- a/migration/rdma.c +++ b/migration/rdma.c @@ -1348,17 +1348,13 @@ static int qemu_rdma_poll(RDMAContext *rdma, struct= ibv_cq *cq, /* Wait for activity on the completion channel. * Returns 0 on success, none-0 on error. */ -static int qemu_rdma_wait_comp_channel(RDMAContext *rdma, - struct ibv_comp_channel *comp_chann= el) +static int coroutine_mixed_fn +qemu_rdma_wait_comp_channel(RDMAContext *rdma, + struct ibv_comp_channel *comp_channel) { struct rdma_cm_event *cm_event; =20 - /* - * Coroutine doesn't start until migration_fd_process_incoming() - * so don't yield unless we know we're running inside of a coroutine. - */ - if (rdma->migration_started_on_destination && - migration_incoming_get_current()->state =3D=3D MIGRATION_STATUS_AC= TIVE) { + if (qemu_in_coroutine()) { yield_until_fd_readable(comp_channel->fd); } else { /* This is the source side, we're in a separate thread --=20 2.55.0