From nobody Tue Apr 7 02:38:50 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org ARC-Seal: i=1; a=rsa-sha256; t=1773737884; cv=none; d=zohomail.com; s=zohoarc; b=Vnycy8lJmdY2EaJprUPL316ML7E6ESKfv/DOnhgJt+1rkGXOQ5oaQATSN5Y+h15D28cNYp8EISjIkMVLPR0ntZb9JinikP4H4DLYP76Ruxczv1r3yArgow9JyKbJFrGR4lxaPV3KDi8wxgDAks8vjH/HgNSLdPTip8mgmBn3378= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773737884; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=m0nSScOuG6RvhdgSMdI9VFgn7eF8Xqxdbu5qlCfdxHQ=; b=NnEyKY6yfG43QGvLMecbkdgg3VvPVNafyijNB26Za+Nvett56zD8ZEGbXPe54afpww19h0fAnFpL2QtDae1XXE/gVBjj3DV0dzlmi/56jgpM1WkrTey+GLH9fVwu+tCQ3h26dH7B3VdWrivBl0SN1sBR3xU1cqROmgrCtyofb0E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177373788436356.15756295003757; Tue, 17 Mar 2026 01:58:04 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w2QEA-0005mq-76; Tue, 17 Mar 2026 04:56:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w2QCE-0001UJ-QA; Tue, 17 Mar 2026 04:54:38 -0400 Received: from fout-a6-smtp.messagingengine.com ([103.168.172.149]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w2QCB-0006mk-Pc; Tue, 17 Mar 2026 04:54:37 -0400 Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45]) by mailfout.phl.internal (Postfix) with ESMTP id 6BC29EC0189; Tue, 17 Mar 2026 04:54:33 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-05.internal (MEProxy); Tue, 17 Mar 2026 04:54:33 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 17 Mar 2026 04:54:32 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm3; t=1773737673; x=1773824073; bh=m0nSScOuG6RvhdgSMdI9VFgn7eF8Xqxd bu5qlCfdxHQ=; b=R0i714s8p4drJan0ky+Dwy19vmemsv9ng8srIoCvLd9TyEBU d/QO1YkSLYwVGcf1ho0zjrO8k1PfoFgBHKVF3FM4M6O9xfvjN0YK92XpNFDXfwfP +7Up+hhIRKAJcWsIhtEDbqZ8VByM0Nh0MmJeh/CaFyF1QMqELcTFaIEgi0k8OVo+ jbGIE25gb97uvZtE+p0XJBh51dWkO6MgEv4wu2dRmI0REqYDWX102niVpSsHeSQV 679Pe3TwnZHvnIa9wgbIAUUYn6sXxB5FBbs2jx5xBYZHZpC2EGULp+dTzwBEQVRs Abi6/2fwGPG+uIOM5GrCSUdZMh+f6Lo9tfuTiw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1773737673; x= 1773824073; bh=m0nSScOuG6RvhdgSMdI9VFgn7eF8Xqxdbu5qlCfdxHQ=; b=e Zzr//8O/qOweXMCPZ/pvR6CGa3Etr2L3VVV5L1dfhMKT8DkC1R3a+3ldQXpTk0fh ZWEfS95fTpKc+joc7A+knbF9Oe1vYEgXOBZda+VS/CHv6A/r81LLN8oSa8pdG/Ih n9EnoY2/FS82j528n0oe2YFlQvgLWmj6772+YWfs8MccJ7xtOZ+GIYpRxSEAuleQ 5E2H2nLbyu0FR87wXX1xZmw73VSof67MbsxvSMI1F8JLoNmRPSRpeNQ3u5Yuw8yb vZJVhlspOdm1sdeDKacWcXs59eqiglmtUfg5klvAlmJiLGTaCT0NMelM7T8EXa5Y UC0q6DsZelSc0hwTAqEdw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdeftddtkedvucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhephfffufggtgfgkfhfjgfvvefosehtjeertdertdejnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpeekiedvtdeuhefffedutdelfeekhfeitddtudevgefgffeiteevfffhhefggefh ffenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehith hssehirhhrvghlvghvrghnthdrughkpdhnsggprhgtphhtthhopeelpdhmohguvgepshhm thhpohhuthdprhgtphhtthhopehksghushgthheskhgvrhhnvghlrdhorhhgpdhrtghpth htohepphgvthgvrhigsehrvgguhhgrthdrtghomhdprhgtphhtthhopehqvghmuhdquggv vhgvlhesnhhonhhgnhhurdhorhhgpdhrtghpthhtohepfhhoshhsseguvghfmhgrtghroh drihhtpdhrtghpthhtohepphhhihhlmhgusehlihhnrghrohdrohhrghdprhgtphhtthho pehithhssehirhhrvghlvghvrghnthdrughkpdhrtghpthhtohepqhgvmhhuqdgslhhotg hksehnohhnghhnuhdrohhrghdprhgtphhtthhopehkrdhjvghnshgvnhesshgrmhhsuhhn ghdrtghomhdprhgtphhtthhopehpsghonhiiihhnihesrhgvughhrghtrdgtohhm X-ME-Proxy: Feedback-ID: idc91472f:Fastmail From: Klaus Jensen Date: Tue, 17 Mar 2026 09:48:57 +0100 Subject: [PATCH RFC 1/2] dma-helpers: lift IOV_MAX limit MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260317-lift-iovmax-dma-limit-v1-1-38729170683f@samsung.com> References: <20260317-lift-iovmax-dma-limit-v1-0-38729170683f@samsung.com> In-Reply-To: <20260317-lift-iovmax-dma-limit-v1-0-38729170683f@samsung.com> To: qemu-devel@nongnu.org, Paolo Bonzini , Peter Xu , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Keith Busch , Klaus Jensen , Jesper Devantier , qemu-block@nongnu.org Cc: Klaus Jensen X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=758; i=k.jensen@samsung.com; h=from:subject:message-id; bh=gtGT/UyTeu5CuZJ1b/uQ6PYgXUw1HvuQ+WDn5dM7M9I=; b=LS0tLS1CRUdJTiBQR1AgTUVTU0FHRS0tLS0tCgpvd0o0bkFGdEFaTCtrQTBEQUFvQlRlR3ZNV zFQRGVrQnl5WmlBR201RnNRZktaY2ZXMThKMXd5SlZ3VXpPVVMxClZIUHdBZVRSNWtwOXNIbUJi TDZkZzRrQk13UUFBUW9BSFJZaEJGSW9NNnAxNHR6bW9rZG13RTNocnpGdFR3M3AKQlFKcHVSYkV BQW9KRUUzaHJ6RnRUdzNwb0ZnSC8xQ1lDOGw5YUsva2ZBYU91R1A1ZmF2bmh6ZTRCelNQc1ZSZw pneWxweWM3cksvOThyWEo5T2VYMzRabjRKVGdtU3ZTVkxPaFZ4a3YzaGlxQ3V6VzF2WFlod1pPQ 2VFZ29SVnR5CnI0bU9YcHJCREhueGhERkdVaWhlbTQ1dDdRSnhRUGZUZEtUa2ZpT1Q1bmtTMUdv eXI5SklXN3lXa29tMjJ0UzIKbEl2amQvWGhPcGRTSDRWNFhxM3d4T0t5ZVlYaXpXYyt3Wm5LOFZ oNGNsRUpFR3dsVC9sSFNMaTB6TkxOdFJWagphZkd5emUxQjdYU0x0QW05NU91MlVhbVN6Qk9SRk V1MU0ydy9iNXpkRjh0SmJxVEpZQTNQWEp1Nkk0WkU0MUdWCjh0UUUvYjhpeGpGZFBqbVhQNUMxQ y8vaUdWUmVvQmJzVEltTzBqRTE1Rk9jTFowN0huOUdwcTU1Cj1ZYmpBCi0tLS0tRU5EIFBHUCBN RVNTQUdFLS0tLS0K X-Developer-Key: i=k.jensen@samsung.com; a=openpgp; fpr=DDCA4D9C9EF931CC3468427263D56FC5E55DA838 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=103.168.172.149; envelope-from=its@irrelevant.dk; helo=fout-a6-smtp.messagingengine.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.819, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.903, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @irrelevant.dk) X-ZM-MESSAGEID: 1773737885643154100 From: Klaus Jensen Split DMA if the number of vector segments hits IOV_MAX. Signed-off-by: Klaus Jensen --- system/dma-helpers.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/system/dma-helpers.c b/system/dma-helpers.c index 0d592f646809..feaa50ff4e1e 100644 --- a/system/dma-helpers.c +++ b/system/dma-helpers.c @@ -156,8 +156,11 @@ static void dma_blk_cb(void *opaque, int ret) } } } - if (!mem) + + if (!mem || dbs->iov.niov =3D=3D IOV_MAX) { break; + } + qemu_iovec_add(&dbs->iov, mem, cur_len); dbs->sg_cur_byte +=3D cur_len; if (dbs->sg_cur_byte =3D=3D dbs->sg->sg[dbs->sg_cur_index].len) { --=20 2.51.0