From nobody Fri Nov 14 23:31:36 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1759235829; cv=none; d=zohomail.com; s=zohoarc; b=Oi3c/P0kRpT+pnqToIURcqdhALklfuzCGRV+eoNc0oGmTXGEipE0AGTTZS8mUVYZZ8m+pwZrjQzc6HWOA3RT5Ad2Vg9xg5DTebXOLz5QmRYAYTordwuN/VJKTs3mlMdffgaj5xsMG7emx8nP1WXnbqNphDveQYWvn4QSCzM+GII= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1759235829; 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=e/w2Jf+qeqeafHMIrcRF94krTFVy/TdywuHBFiP16cE=; b=U9Ef3UksUjrQOTsLXhGNiaBaCfm3KOcEI3m5VzMLV8bWOIXwHZKaZ7NACGGYBQWHVQ8UbcZFJzR9x7PXCUVUpDGYaODPsFkKXfaVroDZT0YE76RXmAU4VKSrBoRvv+IxzZUg43tv3gAQ1gg136g6FYl075GlAhWaP6GC8gC5J5o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1759235829331628.1785995113657; Tue, 30 Sep 2025 05:37:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v3ZaF-0002Ds-H8; Tue, 30 Sep 2025 08:35:55 -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 1v3ZaA-0002Ci-QJ for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:35:50 -0400 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v3Za0-0007bn-Oc for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:35:49 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-46e2e363118so56562685e9.0 for ; Tue, 30 Sep 2025 05:35:38 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-40fb89fb19fsm22909632f8f.21.2025.09.30.05.35.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 30 Sep 2025 05:35:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759235736; x=1759840536; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=e/w2Jf+qeqeafHMIrcRF94krTFVy/TdywuHBFiP16cE=; b=dIE/YIWVI2VPP7y32Ic6C5hLdS9Wo8ABrzevcbKETaZ1th3VrDTWZsvnTdZY6am0Qi yCpVpmoMqm5ovKnSL4B61Z79xFRD6/cEfde6lSZI4+D/hw5EhmTSI97wzH5qj26EzQKe K8oC7aatqdoZqO+toBmSJPNkT0sEB+QwR6MyODzEiVlNAYmF9Fw3oCj5QVfjiQHivhiw gx0Sw4OifiGOqHZ89TFU8nLSUmOeUIC2AEH1zZgy2d6szK4LjWcuVlIMkcwKZ4sHuRG4 77Zqk7E12dZi0YLLGXPvZlU/NK/7r9VHBs2hEkKajTJ1IPKDrheNbGxC6infrYAOYmYS JiWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759235736; x=1759840536; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=e/w2Jf+qeqeafHMIrcRF94krTFVy/TdywuHBFiP16cE=; b=VC/iZ9k4Tsjh4YpnaBdu8s9YXYyQ8wRRCfqM4oVcjdvU7+yZZ1yhcliELm0uFMJbj0 6pcqj8BKjNX6ul4De0QZFEMv0Ttt7dYz4EK1+wyPcj4prZz5Uf7jg1fC3Y26/r7nx9n8 iB64XdCp0wRXNhll+tXB9DEXSU2NBguZvAoV6DjDGBatdjYvnDBLELwI0UvMELtYQym5 ZaiNoc7t9exzZIk96DakPxXpSQxLW91/5Rt5DKkm1mG2OQLNuBViLxXIEv0QTsc7FHon IwQKmmVZ7ZWiBl0PuMcST+UzSNbyptm8wyismqU3H1bIhI9wVJSb7I1atnm8chQ35301 EwWw== X-Gm-Message-State: AOJu0YxQhnGN2nMzZkDi4LBW6l/YZcvUG+wZnYiIkF+A0QRjGJ3U+YZp wOKLMPQOQAbh1yUnc2kaevsAEo59gCs5V7AgzhxLl9pM+uDGqzxgWEbiBq4Lh3F7ch7hnZP4phT nKIpXMGzHCw== X-Gm-Gg: ASbGncv2m1HDL3kgZ8BWjti/ZkKmxIr8nifLH+XIyG3TiZNPYyq3q7fztD86dxX0SgV VQmoNOS4H2v9XWmiuLMoT0GnWP+vqh8rmPXjAr8EPGwZUHk+Ao3LG4CljjEnm1/VTktntW5TEW1 fWeVRAbi/EWekXI8YV/xMq5RR9XB04cYPvLJY/fYS5IGsStd45W36K9aAJqfDeaPvGbQKE1tFLD LGAO3Zn+FcBkwPgR/zoni9KWi44u1lZffzQnD1gGx3988KNz7+UuebVG9bCsrZCL/0hbxiMiVYv n9Rlm8zv/e9SKruV87FE9xwnFeKVHwSJB/M4NhD052li/ZqFh2qe1Kb/kOGTd365d2WzWG/sG0J 4lhmHVLKd5jRDnxlpcDu3+6nAP989LG5ev1kxm3uMvdmW4nOLpR2eV1bUAUzQoNkc2+/Zn0bA5m K5+sq+Uy6ucOZP808428In X-Google-Smtp-Source: AGHT+IFXfLJG0k2Ex/14FWtAC4mLlJIIcXwbHcVINOwydfN2uw+/0pSFrvS1EJl6TnSNYIqIYdgq2w== X-Received: by 2002:a05:600c:181c:b0:46d:996b:826f with SMTP id 5b1f17b1804b1-46e32a02d46mr148714075e9.25.1759235736119; Tue, 30 Sep 2025 05:35:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Mark Cave-Ayland , Thanos Makatos , John Levon , Zhenzhong Duan , Steve Sistare , Alex Williamson , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Eric Auger , Yi Liu , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 1/4] system/iommufd: Use uint64_t type for IOVA mapping size Date: Tue, 30 Sep 2025 14:35:25 +0200 Message-ID: <20250930123528.42878-2-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20250930123528.42878-1-philmd@linaro.org> References: <20250930123528.42878-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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 @linaro.org) X-ZM-MESSAGEID: 1759235830817116600 The 'ram_addr_t' type is described as: a QEMU internal address space that maps guest RAM physical addresses into an intermediate address space that can map to host virtual address spaces. This doesn't represent well an IOVA mapping size. Simply use the uint64_t type. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: C=C3=A9dric Le Goater --- include/system/iommufd.h | 6 +++--- backends/iommufd.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/system/iommufd.h b/include/system/iommufd.h index c9c72ffc450..a659f36a20f 100644 --- a/include/system/iommufd.h +++ b/include/system/iommufd.h @@ -45,12 +45,12 @@ bool iommufd_backend_alloc_ioas(IOMMUFDBackend *be, uin= t32_t *ioas_id, Error **errp); void iommufd_backend_free_id(IOMMUFDBackend *be, uint32_t id); int iommufd_backend_map_file_dma(IOMMUFDBackend *be, uint32_t ioas_id, - hwaddr iova, ram_addr_t size, int fd, + hwaddr iova, uint64_t size, int fd, unsigned long start, bool readonly); int iommufd_backend_map_dma(IOMMUFDBackend *be, uint32_t ioas_id, hwaddr i= ova, - ram_addr_t size, void *vaddr, bool readonly); + uint64_t size, void *vaddr, bool readonly); int iommufd_backend_unmap_dma(IOMMUFDBackend *be, uint32_t ioas_id, - hwaddr iova, ram_addr_t size); + hwaddr iova, uint64_t size); bool iommufd_backend_get_device_info(IOMMUFDBackend *be, uint32_t devid, uint32_t *type, void *data, uint32_t = len, uint64_t *caps, Error **errp); diff --git a/backends/iommufd.c b/backends/iommufd.c index 2a33c7ab0bc..fdfb7c9d671 100644 --- a/backends/iommufd.c +++ b/backends/iommufd.c @@ -197,7 +197,7 @@ void iommufd_backend_free_id(IOMMUFDBackend *be, uint32= _t id) } =20 int iommufd_backend_map_dma(IOMMUFDBackend *be, uint32_t ioas_id, hwaddr i= ova, - ram_addr_t size, void *vaddr, bool readonly) + uint64_t size, void *vaddr, bool readonly) { int ret, fd =3D be->fd; struct iommu_ioas_map map =3D { @@ -230,7 +230,7 @@ int iommufd_backend_map_dma(IOMMUFDBackend *be, uint32_= t ioas_id, hwaddr iova, } =20 int iommufd_backend_map_file_dma(IOMMUFDBackend *be, uint32_t ioas_id, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, int mfd, unsigned long start, bool readon= ly) { int ret, fd =3D be->fd; @@ -268,7 +268,7 @@ int iommufd_backend_map_file_dma(IOMMUFDBackend *be, ui= nt32_t ioas_id, } =20 int iommufd_backend_unmap_dma(IOMMUFDBackend *be, uint32_t ioas_id, - hwaddr iova, ram_addr_t size) + hwaddr iova, uint64_t size) { int ret, fd =3D be->fd; struct iommu_ioas_unmap unmap =3D { --=20 2.51.0 From nobody Fri Nov 14 23:31:36 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1759235829; cv=none; d=zohomail.com; s=zohoarc; b=fSsNt+PWJbb+I+Cx3f9T3C4UG5eg1jAEXngp78/1oyyN1J36gI4zxzgLyMgqkh3Umnqm/M0KKw30pUZ1+Fih0fEcElpgoxUrI6J8fkckwprbWnMmfF8UDyzvZ1j4e/gI7ZyYVr7XmtX120GNGPH1Xps9nOBurauHbdLcGXBlAXQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1759235829; 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=4d9jNYVhhPWZq0ZIaww2fB2PiNbSZvEJt2tHeOKQcz8=; b=O3CzVmFnuBkmCq9k3NIkbc80bMufG+cJCxGCZ1Kt8yYcpAcFszXlnv9VLJaZQHkzRuJVgXivlGsPgePENb7VD36Fuxr/HgGFkHC5V+3FcaVp2X6iVDSvzuhtp1CiZhbdbqWpRrwtMO6LAB2Ntd+cNbiqx6FanJqXtiPyVumf/jw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1759235829244191.56962535808032; Tue, 30 Sep 2025 05:37:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v3ZaP-0002F7-Vv; Tue, 30 Sep 2025 08:36:06 -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 1v3ZaG-0002Dt-2y for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:35:56 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v3Za8-0007di-P7 for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:35:55 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-46e2c3b6d4cso43986035e9.3 for ; Tue, 30 Sep 2025 05:35:45 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-46e5b5e4922sm13266835e9.1.2025.09.30.05.35.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 30 Sep 2025 05:35:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759235741; x=1759840541; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4d9jNYVhhPWZq0ZIaww2fB2PiNbSZvEJt2tHeOKQcz8=; b=QpOdjwLNeNQ2qaMSEQiVimdh4VLf+qPi9JsDWhty0vX3XRDFyKbNiTx7voBVQRR2zW 47qucwIeyOWVTB5CZMgvHG8hZNl5L0OSj8cqCxbEplEFDUZHco7LUKFyhmcVWP/bLSiI JmcjqcbXBwkmH2+9NdtVgXsRbOD/K5EG7iEUz4ei5hgfBW6jI4T5QPz75PZrzPnJjKlp mmUoJkHIp//m+pIAAz5B6zg5gYRcrBoGsZ7qWH6c20ioQStBtYNb3P7NAP04Nkv+Q34e mfa5aaUqVgXf7tcbtX5aHIkchKgS3EZtlxvdD/sge5fHpqRqCwpW7n5+iuYs5uQCOdSh t9bw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759235741; x=1759840541; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4d9jNYVhhPWZq0ZIaww2fB2PiNbSZvEJt2tHeOKQcz8=; b=i9UbVWR7DyimMetP8i5oCZoR0T3bQFVsmE40GcrA9dat95k0FYj9FSV+gPo8Um+MJp EFZQpzqdnxCIdh0vs5ZMWq6tnWikWfTFx0Qo5lGHjzCSAeBKqjAa1VFBMXMNhSQ9Bc6B WxNkIY3gb7XOsx4enqUwGa9fIkQ8SZgcibDa9X8qVcsgEMdqMEGP92eVfSD+CpRajtM9 azbGsUQkkNxC44Lf/hZN9+Nrht9+1Mc5RLVB0Iw5x5XkYSzeApIqAEpfEFfGwKH1SB9C GvFXxtbAls+poF3AGk0m8Yrm+bedhkAGvbMqogsVkKFKb6sFgpba2KhgO3sMiiHDqUBv uQ+Q== X-Gm-Message-State: AOJu0YxVseUDncVQmjyn8VKoM+EiPKOGdA+aaSQ8MYG2i4Ax/vPRNM63 zi9cVh3Zeufnbqh+O+SBeW1iuLlYDmHYVY17HiISQ5GSCmGszWanaoQCsXCaIthD5mFMxEnfRmB +BjPv5cJPNw== X-Gm-Gg: ASbGnctAFKUB9d039eQUQDrf3EwznVdz5A0oCuBM7kU8+8oT/WmLOBln72y+qo2zGGx DqweBElHfWncBTEaED/MpWZzfR39rHnK4nYN8Z1DNCToFcCKPzwzg4H+A9UT97inVYIVet+Va56 9wbh4YxVGfIJdpLKSzyhzQagWKanx8BJqx+jXN2sDBEr/tIrrJzIe+LN1Pv7/7FX+wCAc387lkV dqC7AVmgONORnMZX7AIqCgEFv6pO+4O3ZYjZ6qp9HA2v6tNNwmtJcG6MMu3Uvp0zdQ4ngczZTlG 2dXSKwjTIlfgrJ0V7pHx2NJyEiXzCZ+4Uak83D2AK8ih2srq2eGg2S5pDf6U0UBmCxccy8NjjyD hUjta8NaDwa9M1oGiSfJtWc+4usoGBE+XKbH5NAfdQo14YI1h4rlshb1gUhdQ+Ny8XfojMzzytN ojd+kvA7x2v6aPje9XnzYtr9nG4ewpAcCrHbJehB1eAw== X-Google-Smtp-Source: AGHT+IH31P8PKAmUqoVzRS9+EHOFdRjuNUdlWvT/KsLiRDXm3xVKphxNvMaylsrd4W+vtm1fw06j4Q== X-Received: by 2002:a05:600c:34c2:b0:46e:4b2b:f01d with SMTP id 5b1f17b1804b1-46e4b2bf372mr76095345e9.35.1759235741085; Tue, 30 Sep 2025 05:35:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Mark Cave-Ayland , Thanos Makatos , John Levon , Zhenzhong Duan , Steve Sistare , Alex Williamson , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Eric Auger , Yi Liu , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 2/4] hw/vfio: Reorder vfio_container_query_dirty_bitmap() trace format Date: Tue, 30 Sep 2025 14:35:26 +0200 Message-ID: <20250930123528.42878-3-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20250930123528.42878-1-philmd@linaro.org> References: <20250930123528.42878-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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 @linaro.org) X-ZM-MESSAGEID: 1759235830744116600 Update the trace-events comments after the changes from commit dcce51b1938 ("hw/vfio/container-base.c: rename file to container.c") and commit a3bcae62b6a ("hw/vfio/container.c: rename file to container-legacy.c"). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: C=C3=A9dric Le Goater --- hw/vfio/trace-events | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events index e3d571f8c84..981cf40675e 100644 --- a/hw/vfio/trace-events +++ b/hw/vfio/trace-events @@ -104,10 +104,10 @@ vfio_device_dirty_tracking_update(uint64_t start, uin= t64_t end, uint64_t min, ui vfio_device_dirty_tracking_start(int nr_ranges, uint64_t min32, uint64_t m= ax32, uint64_t min64, uint64_t max64, uint64_t minpci, uint64_t maxpci) "nr= _ranges %d 32:[0x%"PRIx64" - 0x%"PRIx64"], 64:[0x%"PRIx64" - 0x%"PRIx64"], = pci64:[0x%"PRIx64" - 0x%"PRIx64"]" vfio_iommu_map_dirty_notify(uint64_t iova_start, uint64_t iova_end) "iommu= dirty @ 0x%"PRIx64" - 0x%"PRIx64 =20 -# container-base.c +# container.c vfio_container_query_dirty_bitmap(uint64_t iova, uint64_t size, uint64_t b= itmap_size, uint64_t start, uint64_t dirty_pages) "iova=3D0x%"PRIx64" size= =3D 0x%"PRIx64" bitmap_size=3D0x%"PRIx64" start=3D0x%"PRIx64" dirty_pages= =3D%"PRIu64 =20 -# container.c +# container-legacy.c vfio_container_disconnect(int fd) "close container->fd=3D%d" vfio_group_put(int fd) "close group->fd=3D%d" vfio_device_get(const char * name, unsigned int flags, unsigned int num_re= gions, unsigned int num_irqs) "Device %s flags: %u, regions: %u, irqs: %u" --=20 2.51.0 From nobody Fri Nov 14 23:31:36 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1759235830; cv=none; d=zohomail.com; s=zohoarc; b=c3MzsigtrBfHnE90AwFnXNaxEjHVIAbkfsm8vToZ2fpHJaG5ZmV/mSH2bkN5LGPU3d5CkKv2I3Awg0wkuwl1LHAIaD0mOtfLwI8baAyGjS8/OMhcxn+mZVYX4mYV1WNr7BoY2pKSHh/l5MPY48t009J40xL/Hnz/gi4K9kRPEdg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1759235830; 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=eFA98SekIqFUzvB+1uunWekckAE89JbcwZ9hWbRAHWU=; b=Za/WUXTKNPYHCPwoXHw2jt94BVqJg+MV1GYPzrKy0ldbYj/vubjvVtt7fZii2sTzCuoUulXVboM+jOWlO5AiKPs0d2PvYWswpvfBqOXi8PBsASwxRNpPmzWpX0q/Dy9fUvnsLpKe4Fnqq9fGWvYSNwmIZGMSOHRrSVjsnRcNDMQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1759235830291556.8551313227359; Tue, 30 Sep 2025 05:37:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v3ZaZ-0002G2-D3; Tue, 30 Sep 2025 08:36:15 -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 1v3ZaJ-0002Ep-QD for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:36:01 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v3ZaC-0007gA-U6 for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:35:59 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-46e5b7dfeb0so3596915e9.1 for ; Tue, 30 Sep 2025 05:35:49 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-40fc5602dc2sm22441437f8f.32.2025.09.30.05.35.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 30 Sep 2025 05:35:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759235746; x=1759840546; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=eFA98SekIqFUzvB+1uunWekckAE89JbcwZ9hWbRAHWU=; b=F+x5PVbVOQrwzDwbcb5enNbpa06h8G+HjVcKjUGs/s+SoBxYOA4i8nZ8Ank3Zcb+Zk ZKOpi4OVjxtngeTVaQvmCYQdkWUZoQL8tunTiATyJrTeA3xRIb1jn0RpvgzCjqm2hS/a T5aRUV92R7W8P57RhUOBzfO6fREE7ff3M5SFL4nKhqW+3MwPlSTogOlyqWhPXmNJ86SX wqMjtAXVPM3XyHe3FQGBzpsvApbFNGI46kkw5kS9kIfjaZuWYREkdreBy/wHUUyGsAdC W7C5z9hQBHGVxHBYtzmuXMOZVbNIjtDHIELaokXjaosdWcbMVXYwF7vQeBrclrExD/dx WRiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759235746; x=1759840546; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eFA98SekIqFUzvB+1uunWekckAE89JbcwZ9hWbRAHWU=; b=bZP061aabT7uzuVOXAtWQePJA/x0z0H267xVi0QBGfEdGvemJFahXDdKs0JIP2V3zP 3ouxtjrs3YIOEemTQIQtIaUf1TuKiVHjk+IPEfH1snuuSaQeV6juS90xRO7ztrgUwmMu PnNAJTp6rBC92sZrnM0upPLjv3olMJtFI4GxB5Kr7fshgkgf3zClNAkwzBJVzB8oEExA MFZrBjbc0wkoKzHsAtPIv2fhGLTTPK/4m5RYo+0ROVAre+IV/nBkX/1A6/1eEk6bgcpN Im8AHTyUEu7X2OAClbdIbREA3RbNklD6QhQuQ2uzR1CLXEdk0BDDDyZl/MNMWaMdhcYp ry8A== X-Gm-Message-State: AOJu0YxPQv5p7Sigj98ZYRHINrS+Hu9ZOMTsJ/sbXVVLXclzf1AQipkK LlwfQGSaCtO7gIkLpMRPE2kh7zcXY2t/qhtQmRD3Bq46WWr3Ka1LghBuT/NeBT8IjPnSQTCbIvp 7ECysSenIPg== X-Gm-Gg: ASbGncvAwg9wjVFZJ19d1dlqcv+49ISlxJ/GomPF6v86O3/Bzlk1lUvhelQpgjYrBx4 fVQT595qvU0LuhN//aaeB2bnAGJ+uuQGXlI1OnkZaKra4/0z1/iOy1KHqpd1AguVtg0CnKW/OE+ qg9WKVFXaBds1NIt5kGEx1dood6c8hej2WBc7fsVa5rhFJpdqJPOl7ZnMkttoesxEO28a3E3MxS /t0sQgt6U5FjOA41TjwS8oqg+hZCulsErld9w6fzJY2pLgPX4d2r1eKpnFL5sBCEYfaIqaVi5KD zQSCcMbnH93+vSPPvRc2xKaZ7T1qGgq+Tu1mTLiaKPxMI39sJ6433PGrfXJw6Uc3mGJe/yIdmti ySvnkx2W84ol9NEfvy7CR2Abp78O3RWtLQOmS/hhS9TzaagDAmx3CqDycOoGVY1pRGJE2HdErXq PTZ/6yCLWzevQPiHijrbmX X-Google-Smtp-Source: AGHT+IEfX9LjcY83wGmjTrbGN7K4ERrTyIijJiZu4ktrfuYreqiIFTYe2bzCbWyYXDoKEAwNmRf4Qg== X-Received: by 2002:a05:600c:3f12:b0:46e:41e6:28c7 with SMTP id 5b1f17b1804b1-46e41e6293fmr189932065e9.8.1759235745925; Tue, 30 Sep 2025 05:35:45 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Mark Cave-Ayland , Thanos Makatos , John Levon , Zhenzhong Duan , Steve Sistare , Alex Williamson , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Eric Auger , Yi Liu , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 3/4] hw/vfio: Avoid ram_addr_t in vfio_container_query_dirty_bitmap() Date: Tue, 30 Sep 2025 14:35:27 +0200 Message-ID: <20250930123528.42878-4-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20250930123528.42878-1-philmd@linaro.org> References: <20250930123528.42878-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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 @linaro.org) X-ZM-MESSAGEID: 1759235832705116600 The 'ram_addr_t' type is described as: a QEMU internal address space that maps guest RAM physical addresses into an intermediate address space that can map to host virtual address spaces. vfio_container_query_dirty_bitmap() doesn't expect such QEMU intermediate address, but a guest physical addresses. Use the appropriate 'hwaddr' type, rename as @translated_addr for clarity. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: C=C3=A9dric Le Goater --- include/hw/vfio/vfio-container.h | 3 ++- hw/vfio/container.c | 11 ++++++----- hw/vfio/listener.c | 18 +++++++++--------- hw/vfio/trace-events | 2 +- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/include/hw/vfio/vfio-container.h b/include/hw/vfio/vfio-contai= ner.h index b8fb2b8b5d7..093c360f0ee 100644 --- a/include/hw/vfio/vfio-container.h +++ b/include/hw/vfio/vfio-container.h @@ -98,7 +98,8 @@ bool vfio_container_dirty_tracking_is_started( bool vfio_container_devices_dirty_tracking_is_supported( const VFIOContainer *bcontainer); int vfio_container_query_dirty_bitmap(const VFIOContainer *bcontainer, - uint64_t iova, uint64_t size, ram_addr_t ram_addr, Error **errp); + uint64_t iova, uint64_t size, + hwaddr translated_addr, Error **errp= ); =20 GList *vfio_container_get_iova_ranges(const VFIOContainer *bcontainer); =20 diff --git a/hw/vfio/container.c b/hw/vfio/container.c index 250b20f4245..9d694393714 100644 --- a/hw/vfio/container.c +++ b/hw/vfio/container.c @@ -246,7 +246,7 @@ static int vfio_container_devices_query_dirty_bitmap( =20 int vfio_container_query_dirty_bitmap(const VFIOContainer *bcontainer, uint64_t iova, uint64_t size, - ram_addr_t ram_addr, Error **errp) + hwaddr translated_addr, Error **errp) { bool all_device_dirty_tracking =3D vfio_container_devices_dirty_tracking_is_supported(bcontainer); @@ -255,7 +255,7 @@ int vfio_container_query_dirty_bitmap(const VFIOContain= er *bcontainer, int ret; =20 if (!bcontainer->dirty_pages_supported && !all_device_dirty_tracking) { - cpu_physical_memory_set_dirty_range(ram_addr, size, + cpu_physical_memory_set_dirty_range(translated_addr, size, tcg_enabled() ? DIRTY_CLIENTS_= ALL : DIRTY_CLIENTS_NOCODE); return 0; @@ -280,11 +280,12 @@ int vfio_container_query_dirty_bitmap(const VFIOConta= iner *bcontainer, goto out; } =20 - dirty_pages =3D cpu_physical_memory_set_dirty_lebitmap(vbmap.bitmap, r= am_addr, + dirty_pages =3D cpu_physical_memory_set_dirty_lebitmap(vbmap.bitmap, + translated_addr, vbmap.pages); =20 - trace_vfio_container_query_dirty_bitmap(iova, size, vbmap.size, ram_ad= dr, - dirty_pages); + trace_vfio_container_query_dirty_bitmap(iova, size, vbmap.size, + translated_addr, dirty_pages); out: g_free(vbmap.bitmap); =20 diff --git a/hw/vfio/listener.c b/hw/vfio/listener.c index 3b6f17f0c3a..a2c19a3cec1 100644 --- a/hw/vfio/listener.c +++ b/hw/vfio/listener.c @@ -1059,7 +1059,7 @@ static void vfio_iommu_map_dirty_notify(IOMMUNotifier= *n, IOMMUTLBEntry *iotlb) VFIOGuestIOMMU *giommu =3D gdn->giommu; VFIOContainer *bcontainer =3D giommu->bcontainer; hwaddr iova =3D iotlb->iova + giommu->iommu_offset; - ram_addr_t translated_addr; + hwaddr translated_addr; Error *local_err =3D NULL; int ret =3D -EINVAL; MemoryRegion *mr; @@ -1108,8 +1108,8 @@ static int vfio_ram_discard_query_dirty_bitmap(Memory= RegionSection *section, { const hwaddr size =3D int128_get64(section->size); const hwaddr iova =3D section->offset_within_address_space; - const ram_addr_t ram_addr =3D memory_region_get_ram_addr(section->mr) + - section->offset_within_region; + const hwaddr translated_addr =3D memory_region_get_ram_addr(section->m= r) + + section->offset_within_region; VFIORamDiscardListener *vrdl =3D opaque; Error *local_err =3D NULL; int ret; @@ -1118,8 +1118,8 @@ static int vfio_ram_discard_query_dirty_bitmap(Memory= RegionSection *section, * Sync the whole mapped region (spanning multiple individual mappings) * in one go. */ - ret =3D vfio_container_query_dirty_bitmap(vrdl->bcontainer, iova, size= , ram_addr, - &local_err); + ret =3D vfio_container_query_dirty_bitmap(vrdl->bcontainer, iova, size, + translated_addr, &local_err); if (ret) { error_report_err(local_err); } @@ -1183,7 +1183,7 @@ static int vfio_sync_iommu_dirty_bitmap(VFIOContainer= *bcontainer, static int vfio_sync_dirty_bitmap(VFIOContainer *bcontainer, MemoryRegionSection *section, Error **er= rp) { - ram_addr_t ram_addr; + hwaddr translated_addr; =20 if (memory_region_is_iommu(section->mr)) { return vfio_sync_iommu_dirty_bitmap(bcontainer, section); @@ -1198,12 +1198,12 @@ static int vfio_sync_dirty_bitmap(VFIOContainer *bc= ontainer, return ret; } =20 - ram_addr =3D memory_region_get_ram_addr(section->mr) + - section->offset_within_region; + translated_addr =3D memory_region_get_ram_addr(section->mr) + + section->offset_within_region; =20 return vfio_container_query_dirty_bitmap(bcontainer, REAL_HOST_PAGE_ALIGN(section->offset_within_address_spa= ce), - int128_get64(section->size), ram_addr, er= rp); + int128_get64(section->size), translated_addr, errp); } =20 static void vfio_listener_log_sync(MemoryListener *listener, diff --git a/hw/vfio/trace-events b/hw/vfio/trace-events index 981cf40675e..d66b18f507b 100644 --- a/hw/vfio/trace-events +++ b/hw/vfio/trace-events @@ -105,7 +105,7 @@ vfio_device_dirty_tracking_start(int nr_ranges, uint64_= t min32, uint64_t max32, vfio_iommu_map_dirty_notify(uint64_t iova_start, uint64_t iova_end) "iommu= dirty @ 0x%"PRIx64" - 0x%"PRIx64 =20 # container.c -vfio_container_query_dirty_bitmap(uint64_t iova, uint64_t size, uint64_t b= itmap_size, uint64_t start, uint64_t dirty_pages) "iova=3D0x%"PRIx64" size= =3D 0x%"PRIx64" bitmap_size=3D0x%"PRIx64" start=3D0x%"PRIx64" dirty_pages= =3D%"PRIu64 +vfio_container_query_dirty_bitmap(uint64_t iova, uint64_t size, uint64_t b= itmap_size, uint64_t translated_addr, uint64_t dirty_pages) "iova=3D0x%"PRI= x64" size=3D 0x%"PRIx64" bitmap_size=3D0x%"PRIx64" gpa=3D0x%"PRIx64" dirty_= pages=3D%"PRIu64 =20 # container-legacy.c vfio_container_disconnect(int fd) "close container->fd=3D%d" --=20 2.51.0 From nobody Fri Nov 14 23:31:36 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1759235838; cv=none; d=zohomail.com; s=zohoarc; b=IZW46yT7WK2Xl/PNYSxw4UXI73tEWz2pggdQq+8onxwUodwr5rBJ2zIyOV0UXS33Nb9iCkoCYAQAHQaMhFNQiwXocgKdQYryKEogA7f21SKeWCFYrZWkRtb1MGpPNfjGrb0OX/0l1Jw+8NNzexjwjnn1wHNJJwwTyOTcyeQSufc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1759235838; 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=oXb58rYrjxPuyublF8i/PNw1E8UtKBUjINjyx90boZk=; b=X8oS7dfubTvEH+Dp4KtEFe/tpQI79eHKazVc8YwgaNiMLsDvvlWwAy92Wy6GxycAK5X5WkV7yjYI6RrU8B70r3dsdeI0m31zOG7vzVX0GryyaHfXSqPpS6kPw3n6BHHLYgXPWbwTs9YeZ7SK1ZAKvuaaEwy9IMtDlzi/fYwOULs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1759235838246802.7663058115606; Tue, 30 Sep 2025 05:37:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v3Zab-0002G4-TQ; Tue, 30 Sep 2025 08:36:17 -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 1v3ZaS-0002Fe-Ke for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:36:13 -0400 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1v3ZaI-0007iH-1i for qemu-devel@nongnu.org; Tue, 30 Sep 2025 08:36:08 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-46e42deffa8so50320155e9.0 for ; Tue, 30 Sep 2025 05:35:54 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-40fc5603356sm22972284f8f.30.2025.09.30.05.35.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 30 Sep 2025 05:35:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1759235751; x=1759840551; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oXb58rYrjxPuyublF8i/PNw1E8UtKBUjINjyx90boZk=; b=UYgec2bUorsGM4utvtQ70vhFacgVL0R+aFuZ7wReMdHjKmzFns9V2qpq0yu58hsnlJ AlUe5ZtT+2KnPSQOE2pFGV2HzSVvLU/xcmQ9eDFYegjIHiuk1oIauWI4FBMoMlWoEXy7 m3r4e5+MCO/0YoECJAKYvxNtVsWYlUWSYPGkFoTTKbfFCxWgxDP46P/di+UHZjajiUfB ZgkSuTp3QR6e3+bBw7pHNq7m5enCr0jNVWy9XGr9t6UFe3LluoOz3HeZvHt8cBGryM5h zD5NPoyv4aFbdwjCBba27Ff+q1yVefe7d7q7vYoubQkKCg8tUF+LCoBHMuOFiL7ZIlo3 mXyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759235751; x=1759840551; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oXb58rYrjxPuyublF8i/PNw1E8UtKBUjINjyx90boZk=; b=srnjRrWaI2YeHdvjI/UDMnWrjSSVBB9dMXRKJUiTthW02Fa77tzVl+j1vwZostorVe 0pfoGULg1bAy1oenTdZomfLqwqo22Vnpc6nix3s7wBrvMyXzusLUZxTuTuWD0RiKgMgQ LuRjgED6wcagR1LVDz6CSP8aYEMafzLX9uaQrrnFYjhDI6iUk35zmIyW9mSbnEuSXl9L sGt2rREh31OmMkhUqRFbBj4C8bk8WUqPDsKUgb6S4/6pawXhbFNXdx+nF+SLFVLrbLRr F8+A70o3aDPCc7UH1vVOtsKB125Hj5ncpq5c9NFkfkV1jVMX/8bh9mhGuAkV4BBFTyMH 4tLg== X-Gm-Message-State: AOJu0YxLIpSPcA6tFjOmYm598hcRbyFqS1vRpYJ3mjQcln81+Y34JoI0 JCcyjVpr28IKm4TRIBbDOUoOODmo9KZO8YpU/m6wkEaTi55/ZWIIs4BeGvprU96wDO6ljUk6dA5 Ngl3nexrbDQ== X-Gm-Gg: ASbGncuWOmUzmCsJZ/w3U4VestJvsILvLr0DSoFfduKuC5CKw8lh/GbbVwsLg9DH0gd Oh8xmR7ZJPwV0q3mWTh+aJ/5YLOaFSp0sC1CD/I5M5etYH+coR1nV6Dsk5l5YzjdsqrRL1YH8kL WEhhP5cG56ZvwSpe6KPm0xysEFBBU8k8YJLdv4LTlhDEbXv+7vmvceY9HPWvFatCv3pmX/w+sX8 Uwy2NFqD7F5r2USn747P14RTyLUCItZWuperJF99pH/xWkF5HKlKybRh1aG5eh+lNNey6sSU5G6 7sYI+qhFlj1FR0uRGlVtuR+6bhnwYZTnnBWhaWt0ZM5yoDfE1vcWe+O7vQ/B0Hh3vLaJEZqGP/6 DwW98+e5V3oIXNxtIhnEIHkQWAoGvHIJKVekRVsNDOiadJ6V5iWlU5EazEio0OV05hZASCL4/2R z9WwzYIGCZ40O1Ou5Te20PztojyNZZ/j9ViiGmBqmKiw== X-Google-Smtp-Source: AGHT+IGy+sT71JHpBA2kNf2+XMSiLP33E+5QA+bybmolxzdqy2+CWOqIpgm8WYrp0ocmtTKTGmRD7w== X-Received: by 2002:a05:600c:1ca8:b0:46e:4580:c6c5 with SMTP id 5b1f17b1804b1-46e4580c7a4mr118528875e9.35.1759235750814; Tue, 30 Sep 2025 05:35:50 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Mark Cave-Ayland , Thanos Makatos , John Levon , Zhenzhong Duan , Steve Sistare , Alex Williamson , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Eric Auger , Yi Liu , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 4/4] hw/vfio: Use uint64_t for IOVA mapping size in vfio_container_dma_*map Date: Tue, 30 Sep 2025 14:35:28 +0200 Message-ID: <20250930123528.42878-5-philmd@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20250930123528.42878-1-philmd@linaro.org> References: <20250930123528.42878-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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 @linaro.org) X-ZM-MESSAGEID: 1759235840965116600 The 'ram_addr_t' type is described as: a QEMU internal address space that maps guest RAM physical addresses into an intermediate address space that can map to host virtual address spaces. This doesn't represent well an IOVA mapping size. Simply use the uint64_t type. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: C=C3=A9dric Le Goater --- include/hw/vfio/vfio-container.h | 10 +++++----- include/hw/vfio/vfio-cpr.h | 2 +- hw/vfio-user/container.c | 4 ++-- hw/vfio/container-legacy.c | 8 ++++---- hw/vfio/container.c | 4 ++-- hw/vfio/cpr-legacy.c | 2 +- hw/vfio/iommufd.c | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/include/hw/vfio/vfio-container.h b/include/hw/vfio/vfio-contai= ner.h index 093c360f0ee..c4b58d664b7 100644 --- a/include/hw/vfio/vfio-container.h +++ b/include/hw/vfio/vfio-container.h @@ -81,10 +81,10 @@ void vfio_address_space_insert(VFIOAddressSpace *space, VFIOContainer *bcontainer); =20 int vfio_container_dma_map(VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr); int vfio_container_dma_unmap(VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all); bool vfio_container_add_section_window(VFIOContainer *bcontainer, MemoryRegionSection *section, @@ -167,7 +167,7 @@ struct VFIOIOMMUClass { * Returns 0 to indicate success and -errno otherwise. */ int (*dma_map)(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr); /** * @dma_map_file @@ -182,7 +182,7 @@ struct VFIOIOMMUClass { * @readonly: map read only if true */ int (*dma_map_file)(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, int fd, unsigned long start, bool readonly); /** * @dma_unmap @@ -198,7 +198,7 @@ struct VFIOIOMMUClass { * Returns 0 to indicate success and -errno otherwise. */ int (*dma_unmap)(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all); =20 =20 diff --git a/include/hw/vfio/vfio-cpr.h b/include/hw/vfio/vfio-cpr.h index 26ee0c4fe15..81f4e24e229 100644 --- a/include/hw/vfio/vfio-cpr.h +++ b/include/hw/vfio/vfio-cpr.h @@ -21,7 +21,7 @@ struct VFIOIOMMUFDContainer; struct IOMMUFDBackend; =20 typedef int (*dma_map_fn)(const struct VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, void *vaddr, + hwaddr iova, uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr); =20 typedef struct VFIOContainerCPR { diff --git a/hw/vfio-user/container.c b/hw/vfio-user/container.c index 411eb7b28b7..e45192fef65 100644 --- a/hw/vfio-user/container.c +++ b/hw/vfio-user/container.c @@ -39,7 +39,7 @@ static void vfio_user_listener_commit(VFIOContainer *bcon= tainer) } =20 static int vfio_user_dma_unmap(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all) { VFIOUserContainer *container =3D VFIO_IOMMU_USER(bcontainer); @@ -81,7 +81,7 @@ static int vfio_user_dma_unmap(const VFIOContainer *bcont= ainer, } =20 static int vfio_user_dma_map(const VFIOContainer *bcontainer, hwaddr iova, - ram_addr_t size, void *vaddr, bool readonly, + uint64_t size, void *vaddr, bool readonly, MemoryRegion *mrp) { VFIOUserContainer *container =3D VFIO_IOMMU_USER(bcontainer); diff --git a/hw/vfio/container-legacy.c b/hw/vfio/container-legacy.c index c0f87f774a0..3a710d8265c 100644 --- a/hw/vfio/container-legacy.c +++ b/hw/vfio/container-legacy.c @@ -69,7 +69,7 @@ static int vfio_ram_block_discard_disable(VFIOLegacyConta= iner *container, } =20 static int vfio_dma_unmap_bitmap(const VFIOLegacyContainer *container, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb) { const VFIOContainer *bcontainer =3D VFIO_IOMMU(container); @@ -122,7 +122,7 @@ unmap_exit: } =20 static int vfio_legacy_dma_unmap_one(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb) { const VFIOLegacyContainer *container =3D VFIO_IOMMU_LEGACY(bcontainer); @@ -185,7 +185,7 @@ static int vfio_legacy_dma_unmap_one(const VFIOContaine= r *bcontainer, * DMA - Mapping and unmapping for the "type1" IOMMU interface used on x86 */ static int vfio_legacy_dma_unmap(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all) { int ret; @@ -210,7 +210,7 @@ static int vfio_legacy_dma_unmap(const VFIOContainer *b= container, } =20 static int vfio_legacy_dma_map(const VFIOContainer *bcontainer, hwaddr iov= a, - ram_addr_t size, void *vaddr, bool readonly, + uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr) { const VFIOLegacyContainer *container =3D VFIO_IOMMU_LEGACY(bcontainer); diff --git a/hw/vfio/container.c b/hw/vfio/container.c index 9d694393714..41de3439246 100644 --- a/hw/vfio/container.c +++ b/hw/vfio/container.c @@ -74,7 +74,7 @@ void vfio_address_space_insert(VFIOAddressSpace *space, } =20 int vfio_container_dma_map(VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr) { VFIOIOMMUClass *vioc =3D VFIO_IOMMU_GET_CLASS(bcontainer); @@ -93,7 +93,7 @@ int vfio_container_dma_map(VFIOContainer *bcontainer, } =20 int vfio_container_dma_unmap(VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all) { VFIOIOMMUClass *vioc =3D VFIO_IOMMU_GET_CLASS(bcontainer); diff --git a/hw/vfio/cpr-legacy.c b/hw/vfio/cpr-legacy.c index bbf7a0d35f0..3a1d126556e 100644 --- a/hw/vfio/cpr-legacy.c +++ b/hw/vfio/cpr-legacy.c @@ -39,7 +39,7 @@ static bool vfio_dma_unmap_vaddr_all(VFIOLegacyContainer = *container, * The incoming state is cleared thereafter. */ static int vfio_legacy_cpr_dma_map(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, void *vad= dr, + hwaddr iova, uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr) { const VFIOLegacyContainer *container =3D VFIO_IOMMU_LEGACY(bcontainer); diff --git a/hw/vfio/iommufd.c b/hw/vfio/iommufd.c index f0ffe235919..68470d552ec 100644 --- a/hw/vfio/iommufd.c +++ b/hw/vfio/iommufd.c @@ -35,7 +35,7 @@ TYPE_HOST_IOMMU_DEVICE_IOMMUFD "-vfio" =20 static int iommufd_cdev_map(const VFIOContainer *bcontainer, hwaddr iova, - ram_addr_t size, void *vaddr, bool readonly, + uint64_t size, void *vaddr, bool readonly, MemoryRegion *mr) { const VFIOIOMMUFDContainer *container =3D VFIO_IOMMU_IOMMUFD(bcontaine= r); @@ -46,7 +46,7 @@ static int iommufd_cdev_map(const VFIOContainer *bcontain= er, hwaddr iova, } =20 static int iommufd_cdev_map_file(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, int fd, unsigned long start, bool readonl= y) { const VFIOIOMMUFDContainer *container =3D VFIO_IOMMU_IOMMUFD(bcontaine= r); @@ -57,7 +57,7 @@ static int iommufd_cdev_map_file(const VFIOContainer *bco= ntainer, } =20 static int iommufd_cdev_unmap(const VFIOContainer *bcontainer, - hwaddr iova, ram_addr_t size, + hwaddr iova, uint64_t size, IOMMUTLBEntry *iotlb, bool unmap_all) { const VFIOIOMMUFDContainer *container =3D VFIO_IOMMU_IOMMUFD(bcontaine= r); --=20 2.51.0