From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f74.google.com (mail-pj1-f74.google.com [209.85.216.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5A1333AEF25 for ; Mon, 23 Mar 2026 23:59:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.74 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774310357; cv=none; b=rmiU93EeQcZD/AwLQCcoGbfxSb/TaMHwJeHnIl5wOqzCY0pJRlx4T+meBXv6/RnrynzUz1F+hMhd2fwNwmtb+aXYoev4GGJqq1/Dmxlx4+b5K2Dmy8FilQjlGqHhWf06BLvR7YY9O1xj2I3cQtncBtuhn3SRPYAZmcCmvbM6nVE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774310357; c=relaxed/simple; bh=WyJEus1uJnXy8m0ACloG+/0RKFyldGkXc9VBNsLAa5g=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=BB5+lb6scbWiAdKLaoAVHfvy+AK6NVClQ9Wpx2tnD9DEa7/oUrKVx9yMc7EB17j14aHGvAqTJW2jNrnJIrJUMhwy5Q1NMWIgxZq4pDgNj0f+q9QMvVHRCD09C9cX3H6TOjPhmPzAIrjUhZlD9oL/ejqFH41HIAnasOnA5iyEwko= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--dmatlack.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=ajyUNY48; arc=none smtp.client-ip=209.85.216.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--dmatlack.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="ajyUNY48" Received: by mail-pj1-f74.google.com with SMTP id 98e67ed59e1d1-3595485abbbso913086a91.2 for ; Mon, 23 Mar 2026 16:59:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1774310355; x=1774915155; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=CreqaGlwQEQK+YRyK6iGxzdx6WSNNVSy3f0PqjRZciY=; b=ajyUNY48YtupU10DQPf/1QAF7odcTf4OF8sqdhpBiGvFQLNJH9cTPvJZtO1s1753Pv MA6FnBthhJ1bbcJ9DEcL1fHOVJYpURhQf9RnV9nBBEtOw2q7JJalwEzS5KJBw5i9G1bv wH9kkAB42BSECyvkJuWH1d0ZrBE7IA+LhG4IV0Qsnt9At1aianoU9jmO2LEDq0TXFV63 WmhdKVW+Ug3oPAFbJ56TUEtM9ayhjVwxySBQS6Lb7all80wZ/2FkD4NIKRMaAAk8nsZh jfl2Q+dkxavhG/jk/LI0A0YlzDaIYKs5arvXLkRi308kvupxkiG9jWawFCjaYa9vO7Oy +Bgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774310355; x=1774915155; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CreqaGlwQEQK+YRyK6iGxzdx6WSNNVSy3f0PqjRZciY=; b=tKkAjOcLIsxx9Apxu+1Z8NDnj7+ZKnfGDDpylrh8mdK3o7G0uA+OYk44iWKepG2Vsm CZkTXojcAwergdeyLZXiSJ3x9rltvzNWlY5GMpM8sfKEzkW0oJyQBx3B71GWAP7zrxud VDrgOpsOFxzp0aRcRij5OGcMrd+YO/F6Fq7wD/x8SZcLi0SyOh5Ve2XtBK74d8zF91xd 2tSCH+6n5LaT/ob4PpIoVzfViJfvBNepsUrIRaw6G+Fl/sv8wMuE/gI5c0V3ka+4utXi f7KNyTQhmBxCs6LAhTZPZHKu+Kevs24WQjx4gX4EdwdmtyVQ5rbzBYT9jtbGwePrxiCk /BAQ== X-Forwarded-Encrypted: i=1; AJvYcCUGPEBNtSceCz9BhiN1hb0v1elP8QaYyi0f/OKVT4giLLQ6asSfakFfQnfcrAlCO6claYDXG/MimTs=@vger.kernel.org X-Gm-Message-State: AOJu0Yx+BlpkCN012SkohbPiHZRcQqWZvkk/cPgD3aXmdq6z5c7cd6EE dRB2Md3LbwcKXxVepYaSTDQzEctK6fx1oa/YfOqtJnVMgdRXrFyy0BREDMuNryHQWAOAawKyDDn H0da7A6qfHgOUQA== X-Received: from pjat16.prod.google.com ([2002:a17:90a:d10:b0:35b:a2ad:add2]) (user=dmatlack job=prod-delivery.src-stubby-dispatcher) by 2002:a17:90b:3d85:b0:359:1063:6aed with SMTP id 98e67ed59e1d1-35bd2cb3e52mr11055132a91.22.1774310354638; Mon, 23 Mar 2026 16:59:14 -0700 (PDT) Date: Mon, 23 Mar 2026 23:58:13 +0000 In-Reply-To: <20260323235817.1960573-1-dmatlack@google.com> Precedence: bulk X-Mailing-List: linux-doc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260323235817.1960573-1-dmatlack@google.com> X-Mailer: git-send-email 2.53.0.983.g0bb29b3bc5-goog Message-ID: <20260323235817.1960573-22-dmatlack@google.com> Subject: [PATCH v3 21/24] vfio: selftests: Expose iommu_modes to tests From: David Matlack To: Alex Williamson , Bjorn Helgaas Cc: Adithya Jayachandran , Alexander Graf , Alex Mastro , Andrew Morton , Ankit Agrawal , Arnd Bergmann , Askar Safin , "Borislav Petkov (AMD)" , Chris Li , Dapeng Mi , David Matlack , David Rientjes , Feng Tang , Jacob Pan , Jason Gunthorpe , Jason Gunthorpe , Jonathan Corbet , Josh Hilke , Kees Cook , Kevin Tian , kexec@lists.infradead.org, kvm@vger.kernel.org, Leon Romanovsky , Leon Romanovsky , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, linux-pci@vger.kernel.org, Li RongQing , Lukas Wunner , Marco Elver , "=?UTF-8?q?Micha=C5=82=20Winiarski?=" , Mike Rapoport , Parav Pandit , Pasha Tatashin , "Paul E. McKenney" , Pawan Gupta , "Peter Zijlstra (Intel)" , Pranjal Shrivastava , Pratyush Yadav , Raghavendra Rao Ananta , Randy Dunlap , Rodrigo Vivi , Saeed Mahameed , Samiullah Khawaja , Shuah Khan , Vipin Sharma , Vivek Kasireddy , William Tu , Yi Liu , Zhu Yanjun Content-Type: text/plain; charset="UTF-8" Expose the list of iommu_modes to enable tests that want to iterate through all possible iommu modes. Signed-off-by: David Matlack --- tools/testing/selftests/vfio/lib/include/libvfio/iommu.h | 2 ++ tools/testing/selftests/vfio/lib/iommu.c | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/vfio/lib/include/libvfio/iommu.h b/tools/testing/selftests/vfio/lib/include/libvfio/iommu.h index e9a3386a4719..4b9cbe262159 100644 --- a/tools/testing/selftests/vfio/lib/include/libvfio/iommu.h +++ b/tools/testing/selftests/vfio/lib/include/libvfio/iommu.h @@ -15,6 +15,8 @@ struct iommu_mode { unsigned long iommu_type; }; +extern const struct iommu_mode iommu_modes[]; +extern const int nr_iommu_modes; extern const char *default_iommu_mode; struct dma_region { diff --git a/tools/testing/selftests/vfio/lib/iommu.c b/tools/testing/selftests/vfio/lib/iommu.c index 035dac069d60..95a494f829d2 100644 --- a/tools/testing/selftests/vfio/lib/iommu.c +++ b/tools/testing/selftests/vfio/lib/iommu.c @@ -23,7 +23,7 @@ const char *default_iommu_mode = MODE_IOMMUFD; /* Reminder: Keep in sync with FIXTURE_VARIANT_ADD_ALL_IOMMU_MODES(). */ -static const struct iommu_mode iommu_modes[] = { +const struct iommu_mode iommu_modes[] = { { .name = MODE_VFIO_TYPE1_IOMMU, .container_path = "/dev/vfio/vfio", @@ -49,6 +49,8 @@ static const struct iommu_mode iommu_modes[] = { }, }; +const int nr_iommu_modes = ARRAY_SIZE(iommu_modes); + static const struct iommu_mode *lookup_iommu_mode(const char *iommu_mode) { int i; -- 2.53.0.983.g0bb29b3bc5-goog