From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3461543C89;
	Mon, 11 Mar 2024 16:45:20 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id A0E2D40E40;
	Mon, 11 Mar 2024 16:45:00 +0100 (CET)
Received: from mail-il1-f225.google.com (mail-il1-f225.google.com
 [209.85.166.225])
 by mails.dpdk.org (Postfix) with ESMTP id E471640DDA
 for <dev@dpdk.org>; Mon, 11 Mar 2024 16:44:57 +0100 (CET)
Received: by mail-il1-f225.google.com with SMTP id
 e9e14a558f8ab-3665a067d5eso3850715ab.1
 for <dev@dpdk.org>; Mon, 11 Mar 2024 08:44:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=iol.unh.edu; s=unh-iol; t=1710171897; x=1710776697; darn=dpdk.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=EK+fLSZ7+PZ2TL6EKNJX9oEiRnCVvRn1M80svle2Ces=;
 b=T36NX2+7n3BVX+r4jcE6D/MGvnf5tcfIt97FYf/SWMb2HAgkyQnr0lj5atZQ9khF+0
 q8tINH3oqpHmTXsy8LfLbad7oAm1inrFo7mKOJ+u9FHrcRWrvqgdMJJPgpoI0lSWdCYR
 pZMpXEX3Db+RRkqhx0UL1mqRL+bx1YRlXFfh4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1710171897; x=1710776697;
 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=EK+fLSZ7+PZ2TL6EKNJX9oEiRnCVvRn1M80svle2Ces=;
 b=TRCGNCBM4j2G0r1R14PrLanpOzE77w33xf7WlK8Wz+rU5itq2D9gTI+uGh3KikA4uU
 JdBTqauIEYDhNKG7TvRgWD3X6LkudZUka+PsDS7oLlcqqpCeb8EAYx3KAzxa6hXFp8SY
 5DZGlG7kmJmwoCsG3GmeUz+Ey+BYkn1wqx0MTULz09jheD9ZyQYerOJe6d6EwRmsRe1Q
 PNOEq8ubq2qXbDh6cQ412XzYV3zN29R7eTuW2f6hMp9uHO72i1FGv3jMR5tMt91RSuFF
 1JUY6vM8eSnD2AdzL+y6nHiYBiEua3x0NQJ5vhx2c0H/M7hnx15PqqgDFoXzK/ATUpqk
 ATSA==
X-Gm-Message-State: AOJu0YyPf0pyfoRnfywO3oC9cFt2J/vJeG2f1yb0/NR93skVFs+7ypwp
 tnLx9p1Wf+36XQqvqpLTFkGpugvGjwPOj0ODLt1P8AmLGwanAwFpwgo/a2oj5F9IWH1zIbULQhh
 lFCy5PFPJT6EXgWjD1Jl1i+qus9Z7WYntcR0E1sGf5j1uKNgW
X-Google-Smtp-Source: AGHT+IHVrZYWIJiG/EoNVPRfTxRYOq+TQk/Aw7tYZVCYC8/Kn5kksFjKw35KZafX3HU34ExhjRikd9CZa4YT
X-Received: by 2002:a05:6e02:1a4d:b0:365:1459:e1ed with SMTP id
 u13-20020a056e021a4d00b003651459e1edmr8234240ilv.4.1710171897320; 
 Mon, 11 Mar 2024 08:44:57 -0700 (PDT)
Received: from postal.iol.unh.edu (postal.iol.unh.edu.
 [2606:4100:3880:1234::84]) by smtp-relay.gmail.com with ESMTPS id
 el19-20020a0566384d9300b00476cea22e85sm142448jab.6.2024.03.11.08.44.57
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 11 Mar 2024 08:44:57 -0700 (PDT)
X-Relaying-Domain: iol.unh.edu
Received: from iol.unh.edu (unknown
 [IPv6:2606:4100:3880:1271:90f9:1b64:f6e6:867f])
 by postal.iol.unh.edu (Postfix) with ESMTP id AB2846052471;
 Mon, 11 Mar 2024 11:44:56 -0400 (EDT)
From: jspewock@iol.unh.edu
To: Honnappa.Nagarahalli@arm.com, juraj.linkes@pantheon.tech,
 thomas@monjalon.net, wathsala.vithanage@arm.com, probb@iol.unh.edu,
 paul.szczepanek@arm.com, yoan.picchi@foss.arm.com, ferruh.yigit@amd.com,
 andrew.rybchenko@oktetlabs.ru
Cc: dev@dpdk.org,
	Jeremy Spewock <jspewock@iol.unh.edu>
Subject: [PATCH v9 4/7] dts: add pci addresses to EAL parameters
Date: Mon, 11 Mar 2024 11:44:02 -0400
Message-ID: <20240311154405.13269-5-jspewock@iol.unh.edu>
X-Mailer: git-send-email 2.43.2
In-Reply-To: <20240311154405.13269-1-jspewock@iol.unh.edu>
References: <20240110144249.20719-1-jspewock@iol.unh.edu>
 <20240311154405.13269-1-jspewock@iol.unh.edu>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

From: Jeremy Spewock <jspewock@iol.unh.edu>

Added allow list to the EAL parameters created in DTS to ensure that
only the relevant PCI devices are considered when launching DPDK
applications.

Signed-off-by: Jeremy Spewock <jspewock@iol.unh.edu>
---
 dts/framework/testbed_model/sut_node.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/dts/framework/testbed_model/sut_node.py b/dts/framework/testbed_model/sut_node.py
index 909394e756..97aa26d419 100644
--- a/dts/framework/testbed_model/sut_node.py
+++ b/dts/framework/testbed_model/sut_node.py
@@ -30,6 +30,7 @@
 from .cpu import LogicalCoreCount, LogicalCoreList
 from .node import Node
 from .os_session import InteractiveShellType, OSSession
+from .port import Port
 from .virtual_device import VirtualDevice
 
 
@@ -46,6 +47,7 @@ def __init__(
         prefix: str,
         no_pci: bool,
         vdevs: list[VirtualDevice],
+        ports: list[Port],
         other_eal_param: str,
     ):
         """Initialize the parameters according to inputs.
@@ -63,6 +65,7 @@ def __init__(
                     VirtualDevice('net_ring0'),
                     VirtualDevice('net_ring1')
                 ]
+            ports: The list of ports to allow.
             other_eal_param: user defined DPDK EAL parameters, e.g.:
                 ``other_eal_param='--single-file-segments'``
         """
@@ -73,6 +76,7 @@ def __init__(
             self._prefix = f"--file-prefix={prefix}"
         self._no_pci = "--no-pci" if no_pci else ""
         self._vdevs = " ".join(f"--vdev {vdev}" for vdev in vdevs)
+        self._ports = " ".join(f"-a {port.pci}" for port in ports)
         self._other_eal_param = other_eal_param
 
     def __str__(self) -> str:
@@ -83,6 +87,7 @@ def __str__(self) -> str:
             f"{self._prefix} "
             f"{self._no_pci} "
             f"{self._vdevs} "
+            f"{self._ports} "
             f"{self._other_eal_param}"
         )
 
@@ -347,6 +352,7 @@ def create_eal_parameters(
         append_prefix_timestamp: bool = True,
         no_pci: bool = False,
         vdevs: list[VirtualDevice] | None = None,
+        ports: list[Port] | None = None,
         other_eal_param: str = "",
     ) -> "EalParameters":
         """Compose the EAL parameters.
@@ -370,6 +376,8 @@ def create_eal_parameters(
                     VirtualDevice('net_ring0'),
                     VirtualDevice('net_ring1')
                 ]
+            ports: The list of ports to allow. If :data:`None`, all ports listed in `self.ports`
+                will be allowed.
             other_eal_param: user defined DPDK EAL parameters, e.g.:
                 ``other_eal_param='--single-file-segments'``.
 
@@ -388,12 +396,16 @@ def create_eal_parameters(
         if vdevs is None:
             vdevs = []
 
+        if ports is None:
+            ports = self.ports
+
         return EalParameters(
             lcore_list=lcore_list,
             memory_channels=self.config.memory_channels,
             prefix=prefix,
             no_pci=no_pci,
             vdevs=vdevs,
+            ports=ports,
             other_eal_param=other_eal_param,
         )
 
-- 
2.43.2